<?xml version="1.0" encoding="UTF-8"?>
<course>
  <academic-career-val type="integer">1</academic-career-val>
  <assumed-knowledge-and-required-skills></assumed-knowledge-and-required-skills>
  <available-through-customised-graduate-programs type="integer" nil="true"></available-through-customised-graduate-programs>
  <co-teaching-course-id type="integer" nil="true"></co-teaching-course-id>
  <consent-description></consent-description>
  <consent-required type="boolean">false</consent-required>
  <corequisites></corequisites>
  <cost-considerations></cost-considerations>
  <course-code>COMP2110</course-code>
  <course-description>&lt;p&gt;This course is one of three courses (COMP2100, COMP2110, COMP3110) which address constructive aspects of the software development process. It has a primary focus on the design phase.&lt;br /&gt; The following topics are covered. Introduction to requirements specifications. Designing to specifications. The design milieu (notations, documentation standards). Design techniques (object-oriented, software architectures, design patterns). Design review. Design in the context of requirements change. Principles of quality in design.&lt;/p&gt; </course-description>
  <course-group>B</course-group>
  <eligibility></eligibility>
  <filled-flag type="integer">1</filled-flag>
  <first-year-course type="boolean">false</first-year-course>
  <id type="integer">10768</id>
  <incompatibility>&lt;p&gt;COMP2510&lt;/p&gt; </incompatibility>
  <indicative-assessment>&lt;p&gt;Assignments (50%); Presentation (10%); Final Exam (40%)&lt;/p&gt;</indicative-assessment>
  <indicative-reading-list></indicative-reading-list>
  <is-active type="integer">1</is-active>
  <is-public type="integer">1</is-public>
  <learning-outcomes>&lt;p&gt;On completion of this course the student will be able to do the following:&lt;/p&gt; &lt;ol&gt;&lt;li&gt;use well-structured diagrams and text to describe the design of medium-scale software system &lt;/li&gt;&lt;li&gt;write informal requirements for a medium-small software system &lt;/li&gt;&lt;li&gt;create and describe the design of a small scale software system &lt;/li&gt;&lt;li&gt;critically compare  the design of medium-small software systems for related purposes &lt;/li&gt;&lt;li&gt;select and analyse the application of software pattern definitions to a design problem &lt;/li&gt;&lt;li&gt;recognise and illustrate the relationships and processes between requirements, design, and implementation in the standard software life cycle &lt;/li&gt;&lt;li&gt;demonstrate a reasonable choice of classes and relationships to model system fragments to meet  partial system requirements&lt;/li&gt;&lt;li&gt;find and select software from that which is openly available to approximately meet system requirements&lt;/li&gt;&lt;/ol&gt;</learning-outcomes>
  <lock-version type="integer">0</lock-version>
  <long-title>Software Design</long-title>
  <max-units type="integer">6</max-units>
  <min-units type="integer">6</min-units>
  <other-information></other-information>
  <preliminary-reading></preliminary-reading>
  <prescribed-texts>Fox, Christopher &lt;em&gt;Introduction to Software Engineering Design&lt;/em&gt;, Addison&amp;ndash;Wesley, 2007</prescribed-texts>
  <progress-units type="integer">6</progress-units>
  <quota></quota>
  <recommended-courses></recommended-courses>
  <requisite-statement>&lt;p&gt;COMP1110 or COMP1510 and MATH1005 or MATH1014 or MATH1116&lt;/p&gt; </requisite-statement>
  <restricted-program-entry type="integer" nil="true"></restricted-program-entry>
  <short-title>Software Design</short-title>
  <student-contribution-band>Band 2</student-contribution-band>
  <subject>Computer Science</subject>
  <technology-requirements></technology-requirements>
  <updated-by nil="true"></updated-by>
  <version type="integer" nil="true"></version>
  <workload>Twenty six one-hour lectures, four one-hour tutorials and five two-hour tutorial/laboratory sessions</workload>
  <year type="integer">2010</year>
</course>
