Skip to the content | Change text size
PDF unit guide

FIT2005 Software analysis, design and architecture - Semester 2, 2012

This unit examines object-oriented systems modelling/design in greater depth than the prerequisite unit. The key disciplines of the Unified Process will be examined to set a context for analysis and design. Students will learn about static and dynamic modelling, and component-based design, using UML. Some common design patterns will be studied. Some topics about software architecture are examined.
The unit prepares students to be able to design large systems such as will be implemented in their final year project unit or after graduation.

Mode of Delivery

  • Gippsland (Day)
  • Gippsland (Off-campus)
  • South Africa (Day)

Contact Hours

2 hrs lectures/wk, 2 hrs laboratories/wk

Workload

Students will be expected to spend a total of 12 hours per week during semester on this unit as follows:

For on-campus students:
Lectures: 2 hours per week
Tutorials/Lab Sessions: 2 hours per week per tutorial
and up to an additional 8 hours in some weeks for completing lab and project work, private study and revision.

Note: You must have completed all readings set for that week prior to attending the class.

Off-campus students generally do not attend lecture and tutorial sessions, however, you should plan to spend equivalent time working through the relevant resources and participating in discussion forums each week. Additionally, recordings of on-campus sessions may be available.

Unit Relationships

Prohibitions

GCO2813, GCO2816, GCO9806

Prerequisites

FIT1002 and FIT2001

Chief Examiner

Campus Lecturer

Gippsland

Shane Moore

South Africa

Braam Van Der Vyver

Academic Overview

Outcomes

At the completion of this unit students will:
  • understand object-oriented concepts such as: association, aggregation and composition; polymorphism and generalisation; messaging and object interaction, state and lifespan of objects; encapsulation, connascence, domains, encumbrance, cohesion, coupling;
  • know the finer details of syntax and semantics of the Unified Modelling Language with respect to modelling class diagrams, interaction diagrams, state machine diagrams, package diagrams, activity diagrams, deployment diagrams, timing diagrams, interface and component diagrams;
  • be able to consider advanced topics in relation to use cases and specifications when analysing a system;
  • understand the role of software architecture, and be able to employ several common architectural such as tiered computing, client/server, pipes and filters, P2P, Layered implementation, publisher/subscriber, to design systems;
  • understand the role of patterns and pattern languages in designing systems, and be familiar with a range of structural, creational and behavioral patterns;
  • be able to apply theoretical concepts and techniques for problem solving, to design complete software systems in a range of settings;
  • be able to justify system design decisions with reference to a models quality, limitations, scope for future extension, and to theoretical concepts;
  • utilise IT practitioner tools to support the process and documentation of systems design.
  • be able to communicate the design of a system through electronic documents including UML models, other diagrams, and supporting text.
  • have an awareness of the process by which object-oriented system analysis and design is performed using a framework such as the Unified Process.

Graduate Attributes

Monash prepares its graduates to be:
  1. responsible and effective global citizens who:
    1. engage in an internationalised world
    2. exhibit cross-cultural competence
    3. demonstrate ethical values
  2. critical and creative scholars who:
    1. produce innovative solutions to problems
    2. apply research skills to a range of challenges
    3. communicate perceptively and effectively

Assessment Summary

Examination (3 hours): 60%; In-semester assessment: 40%

Assessment Task Value Due Date
Assignment 1 - Use Cases and Class Model 15% Stage 1 due Friday 12 August at 11:59pm; Final Stage due on 2 September at 11:59pm
Assignment 2 - Object-Interaction and Life-Cycle Design Tasks 15% 23 September, 11:59pm
Assignment 3 - Software Architecture Tasks 10% 21 October, 11:59pm
Examination 1 60% To be advised

Teaching Approach

  • Lecture and tutorials or problem classes
    This teaching and learning approach provides facilitated learning, practical exploration and peer learning

    On-campus classes involve weekly lecture and tutorial classes. The purpose of lectures is to discuss and demonstrate concepts, through giving some examples and discussing how the concepts relate to the examples. The purpose of tutorials is for you to gain practice and experience in applying the new concepts to different cases than were used in the lectures, and this should prepare you to be able to achieve the assignment work.
  • Problem-based learning
    The assignments, and some of the tutorial tasks, are based on case studies/problems so as to situate the learning in a mock of real-world analysis and design situations, in a more controlled environment.

Feedback

Our feedback to You

Types of feedback you can expect to receive in this unit are:
  • Informal feedback on progress in labs/tutes
  • Graded assignments with comments
  • Solutions to tutes, labs and assignments
  • Other: Responses to postings made in the discussion-forums.

Your feedback to Us

Monash is committed to excellence in education and regularly seeks feedback from students, employers and staff. One of the key formal ways students have to provide feedback is through SETU, Student Evaluation of Teacher and Unit. The University's student evaluation policy requires that every unit is evaluated each year. Students are strongly encouraged to complete the surveys. The feedback is anonymous and provides the Faculty with evidence of aspects that students are satisfied and areas for improvement.

For more information on Monash's educational strategy, and on student evaluations, see:
http://www.monash.edu.au/about/monash-directions/directions.html
http://www.policy.monash.edu/policy-bank/academic/education/quality/student-evaluation-policy.html

Previous Student Evaluations of this unit

This semester the Gippsland lecture sessions will be recorded for the benefit of the off-campus students.

The assignment tasks are being reconceived in order to try to have a quicker marking turnaround time.

If you wish to view how previous students rated this unit, please go to
https://emuapps.monash.edu.au/unitevaluations/index.jsp

Recommended Resources

This unit is using Moodle 1.9, which is accessible at moodle.monash.edu.au

The textbook "UML 2 and the Unified Process" (2nd ed) by Jim Arlow and Ila Neustadt (ISBN: 0-321-32127-8, published by Addison-Wesley) is the only textbook that we strongly hope that you will purchase, as much of the course has been designed around this book - we expect you to read it to pass the unit.

Visual Paradigm for UML Standard Edition - available from http://www.visual-paradigm.com/download/vpuml.jsp

Monash will be able to supply you with the licence key for the version 10 Released in June 2012.

Recommended text(s)

Jim Arlow and Ila Neustadt. (2005). UML 2 and the Unified Process. (2nd edition) Addison Wesley / Pearson Education (ISBN: 0-321-32127-8).

Examination material or equipment

pens, or pencils and erasers.

Unit Schedule

Week Activities Assessment
0   No formal assessment or activities are undertaken in week 0
1 Topic 1: Introducing UML and UP  
2 Topic 2: Requirements and Use Case Modelling  
3 Topic 3: Modelling Software Internal Static-Structure Assignment 1: Part 1 due Friday 12 August 11:59pm
4 Topic 4: Modelling Object Interactions  
5 Topic 5: Inheritance and Polymorphism  
6 Topic 6: State Space, Events and Behaviour Assignment 1 Part 2 due Sunday 2 September 11:59pm
7 Topic 7: State Machine Diagrams  
8 Topic 8: Class Design and Patterns  
9 Topic 9: Software Architecture Assignment 2 due Sunday 23 September, 11:59pm
10 Topic 10: Components, Services and Cloud Computing  
11 Topic 11: Archetypes and Archetype Patterns  
12 TBA Assignment 3 due Sunday 21 October 11:59pm
  SWOT VAC No formal assessment is undertaken during SWOT VAC.
  Examination period LINK to Assessment Policy: http://policy.monash.edu.au/policy-bank/
academic/education/assessment/
assessment-in-coursework-policy.html

*Unit Schedule details will be maintained and communicated to you via your MUSO (Blackboard or Moodle) learning system.

Assessment Requirements

Assessment Policy

Faculty Policy - Unit Assessment Hurdles (http://www.infotech.monash.edu.au/resources/staff/edgov/policies/assessment-examinations/unit-assessment-hurdles.html)

Academic Integrity - Please see the Demystifying Citing and Referencing tutorial at http://lib.monash.edu/tutorials/citing/

Assessment Tasks

Participation

  • Assessment task 1
    Title:
    Assignment 1 - Use Cases and Class Model
    Description:
    This assignment has two stages. The first stage is due during week 3 and is simply a list of questions from yourself to the simulated Client Organisation. The final stage is due at the end of week 6 and requires you to develop use cases and a class model for a system to meet the needs proposed by the client organisation.

    The assignment is aimed at letting you demonstrate your learning for objectives arising primarily from modules 1 through 3.
    Weighting:
    15%
    Criteria for assessment:

    A detailed set of marking criteria including explanation of its meaning, will be provided with the assignment specification. As a guide, these are a broad description of the criteria:

    1. Ability to interpret a business problem, and formulate questions to ask a client organisation. 
    2. Ability to identify appropriate set of use cases, and classes, that meet the needs of the system.
    3. The degree to which the needs of the client are met by the final system specification you submit.
    4. Ability to correctly use a range of notations to express the system specification.
    Due date:
    Stage 1 due Friday 12 August at 11:59pm; Final Stage due on 2 September at 11:59pm
  • Assessment task 2
    Title:
    Assignment 2 - Object-Interaction and Life-Cycle Design Tasks
    Description:
    This assignment asks you to complete tasks which will allow you to demonstrate your abilities with regards to the skills and understanding presented primarily in modules 4, 6 and 7, in particular: development of polymorphic interaction sequences between objects; development of state machines of objects.
    Weighting:
    15%
    Criteria for assessment:

    A detailed set of marking criteria including explanation of its meaning, will be provided with the assignment specification. As a guide, these are a broad description of the criteria:

    1. Ability to perform the required activities involved in developing object interaction models and object lifecycle models.
    2. The degree to which the needs of the problem are met by the final work.
    3. Ability to correctly use the range of notations taught, to express the final work.
    4. Ability to ensure consistency between different models of parts of a system
    5. Ability to apply problem solving techniques to develop a system's design
    Due date:
    23 September, 11:59pm
  • Assessment task 3
    Title:
    Assignment 3 - Software Architecture Tasks
    Description:
    This assignment asks you to complete tasks which will allow you to demonstrate your abilities with regards to the skills and understanding presented primarily in modules 8, 9 and 10, in particular: consideration of the software architecture of systems; applicability of cloud computing techniques to developing computer systems.
    Weighting:
    10%
    Criteria for assessment:

    A detailed set of marking criteria including explanation of its meaning, will be provided with the assignment specification. As a guide, these are a broad description of the criteria:

    • Ability to appropriately consider architectural issues for a system from a range of different viewpoints and perspectives in proposing possible issues to be addressed by the system’s architecture.
    • Ability to research current trends in systems development, particularly in relation to cloud based architectures.
    • Ability to argue a point convincingly with supporting evidence/reasons.
    Due date:
    21 October, 11:59pm

Examinations

  • Examination 1
    Weighting:
    60%
    Length:
    3 hours
    Type (open/closed book):
    Closed book
    Hurdle requirements:
    Must achieve at least 40% of the available marks to be eligible to pass the unit.
    Electronic devices allowed in the exam:
    None

Assignment submission

It is a University requirement (http://www.policy.monash.edu/policy-bank/academic/education/conduct/plagiarism-procedures.html) for students to submit an assignment coversheet for each assessment item. Faculty Assignment coversheets can be found at http://www.infotech.monash.edu.au/resources/student/forms/. Please check with your Lecturer on the submission method for your assignment coversheet (e.g. attach a file to the online assignment submission, hand-in a hard copy, or use an online quiz).

Online submission

If Electronic Submission has been approved for your unit, please submit your work via the VLE site for this unit, which you can access via links in the my.monash portal.

Extensions and penalties

Returning assignments

Resubmission of assignments

Assignments may only be submitted once for assessment purposes.

Referencing requirements

You should put the name of the book in quotes, followed by the name of the Primary Author, followed by the year of publication, and the name of the publisher, and state the page number(s) which contained the information being referenced, for example:

"UML 2 And the Unified Process", J. Arlow, 2005, Addison-Wesley, p. 305

For a web-based resource, instead of the publisher you should put the URL of the web page; and instead of the year you should put the "date accessed", for example:

"Council Plan 2012-2016", Latrobe City Council, accessed 1 July 2012, http://www.latrobe.vic.gov.au/WebFiles/Council%20Documents/Council%20Plan/Council%20Plan%202012-2016.pdf

Other Information

Policies

Student services

The University provides many different kinds of support services for you. Contact your tutor if you need advice and see the range of services available at www.monash.edu.au/students. For Sunway see http://www.monash.edu.my/Student-services, and for South Africa see http://www.monash.ac.za/current/

The Monash University Library provides a range of services and resources that enable you to save time and be more effective in your learning and research. Go to http://www.lib.monash.edu.au or the library tab in my.monash portal for more information. At Sunway, visit the Library and Learning Commons at http://www.lib.monash.edu.my/. At South Africa visit http://www.lib.monash.ac.za/.

Academic support services may be available for students who have a disability or medical condition. Registration with the Disability Liaison Unit is required. Further information is available as follows:

  • Website: http://monash.edu/equity-diversity/disability/index.html;
  • Email: dlu@monash.edu
  • Drop In: Equity and Diversity Centre, Level 1 Gallery Building (Building 55), Monash University, Clayton Campus, or Student Community Services Department, Level 2, Building 2, Monash University, Sunway Campus
  • Telephone: 03 9905 5704, or contact the Student Advisor, Student Commuity Services at 03 55146018 at Sunway

Reading list

A range of extracts from books that are required to be read during the semester have been scanned by the Library and are accessible from the following web page:

http://readinglists.lib.monash.edu/lists/67B74930-D397-B9D4-947D-0BAB08864017.html