0% found this document useful (0 votes)
74 views

Week 0 - Unit Introduction

This document provides information about the Software Architecture and Design unit for semester 1 of 2021. It outlines the teaching staff, unit schedule, objectives, organization, protocols, and resources. The unit will be taught through lectures, workshops, and assignments. Students will learn about software analysis, design patterns, architectures, refactoring, and emerging topics. The unit aims to develop skills in software design, applying patterns and frameworks, and designing architectures.

Uploaded by

NicholasChong
Copyright
© © All Rights Reserved
0% found this document useful (0 votes)
74 views

Week 0 - Unit Introduction

This document provides information about the Software Architecture and Design unit for semester 1 of 2021. It outlines the teaching staff, unit schedule, objectives, organization, protocols, and resources. The unit will be taught through lectures, workshops, and assignments. Students will learn about software analysis, design patterns, architectures, refactoring, and emerging topics. The unit aims to develop skills in software design, applying patterns and frameworks, and designing architectures.

Uploaded by

NicholasChong
Copyright
© © All Rights Reserved
You are on page 1/ 29

FIT3077

Software Architecture and Design


Week 0
Unit Introduction

22nd February 2021


Dr Najam Nazar
OUTLINE
Unit Information
• Teaching Staff
• Unit Schedule
• Objectives
• Unit Organisation
• Lectures, Workshops, Assignments and Consultations
• Questions, Email and Forum protocols
• Resources
TEACHING STAFF
Chief Examiner

• Aldeida Aleti, [email protected]


Lecturers
• Clayton
• Najam Nazar, [email protected]
• Malaysia
• Chong Chun Yong, [email protected]
Tutors
• Clayton
• Norman Chen, Admin TA, [email protected]
• Anjana Perera, [email protected]
• Xiaoxiang Guan, [email protected]
• Silpi Dutta, [email protected]
• Ting Ting Bi, [email protected]
• Malaysia
• Simon Lau
UNIT SCHEDULE
Weeks Topics Workshops Assignment
1 Introduction to the Unit and Software Architecture No Workshop
2 Object Oriented Analysis
3 Design Principles - I
4 Design Principles - II Assignment 1
5 Design Patterns - I
6 Design Patterns - II
7 Software Architecture & MVC
8 Service Oriented Architectures (SOA) Assignment 2
9 Refactoring
10 Microservices
11 Software Architecture & Devops
12 Revision. Assignment 3
OBJECTIVES
Knowledge and Understanding
• Conceptual and implementation level analysis and design using UML
• Analysis and design patterns
• Modelling and design of software at the architectural level
• Architectural patterns, such as Model-View-Controller
• Service-oriented architectures; microservices
• Refactoring
• Configuration Management
• Emerging topics in software architecture
Attitudes, Values and Beliefs
• Apply a variety of analysis and design patterns.
• Appreciate analysis fundamentals.
• Analyse well-formedness (completeness, consistency, robustness, etc)
• Analyse correctness (e.g. static analysis, simulation etc.)
Practical Skills
• Take requirements for simple systems and develop software architectures and designs at a
high level
• Apply design patterns in the design of simple systems and realise the design in code
• Apply a variety of frameworks and architectures in designing software
UNIT ORGANISATION
Assessments & Passing

• The unit is assessed with three assignments.


• There is no exam for this unit.
• To pass this unit, a student must obtain:
• 40% or more in the unit's non-examination assessment, and
• an overall unit mark of 50% or more
• If a student does not achieve 40% or more in the unit non-examination assessment then a mark of no
greater than 49N will be recorded for the unit.
Lectures
• Clayton
• Monday 2-3 pm live streamed.
• Normally, it will run as a Q&A session.
• We expect students to watch pre-recorded lecture videos/recordings before coming to the live
streamed session.
• Lecture slides and recordings for each week will be made available on the unit Moodle
website.
• Lecture slides are not “lecture notes”. Notes are what you write during lectures and workshops.
• Questions should be relevant to the topics discussed.
• For Malaysian students please contact your lecturer for details.
Workshops
• During a workshop class, you are expected to work on different problems and/or tasks
and/or activities relevant to the topic, which will be distributed via the unit Moodle page
under each week’s content.
• You will only get value from the workshop classes if you use them to work on problems and
ask questions. They are not a passive activity.
• Your tutor will be available to comment on, and help with, solutions during the workshops.
• Not marked.
• Workshop classes start in week 2.
Assignments
• All work submitted by a team must be solely the work of that team.
• All work submitted by an individual must solely be the work of that individual.
• This is not to mean that you may not consult with others, but: If you receive any help, you must
specifically acknowledge that person in your submitted work.
• If any student or team of students submits work which is not their own, they will be
disciplined according to the University and Faculty policies — see the unit web site.
• Penalties range from exclusion from University to zero marks for the unit.
Assignment 1: Software Design Assignment
• Due: Week 4
• Weighting: 20%
• Students will be provided with software requirements or system under discussion for which
they must produce a design for an object-oriented solution. This design must be described
using UML diagrams.
• This is an individual assignment.
Assignment 2: Software Architecture Assignment
• Due: Week 8
• Weighting: 45%
• This assignment requires students to analyse a problem, design a solution, and implement
it in an object-oriented programming language.
• This is a team work.
Assignment 3: Extending Assignment 2

• Due: Week 12
• Weighting: 35%
• The third assignment will build on the second assignment.
• The ease with which the initial design can be extended for assignment 3 will depend on
appropriate use of architecture and design knowledge/principles presented in this unit.
• This is a team work.
Extensions and Contributions
• Extensions
• If you believe that your assignment will be delayed because of circumstances beyond your control, you
must apply for an extension before the due date.
• Medical certificates or certification supporting your application may be required.
• Extensions should be applied online at the following link
• https://forms.monash.edu/special-consideration

• Contributions to team work


• Team work will be partially assessed by interview. All team members will be required to be able to
demonstrate understanding of all parts of the team’s submission during the interviews.
• If a team is having interpersonal problems and is unable to resolve them themselves:
• The team must approach the lecturer to assist in resolving the problem as soon as it arises.
• A claim that a student did not contribute his or her fair share will not be considered if it is made just
prior to the submission of the assignment, or after submission.
Consultations

• Consultation times will be announced on the Moodle page.


• Preference will be given to students who make appointments.
• In high demand, preference will be given to the students who did not have an appointment
in the previous weeks.
PROTOCOLS
Questions
• Ask
• Ask Early
• Ask during lectures, workshops (preferable) and consultations (highly recommended).
• Ask via emails (encouraged).
• For Malaysian and South African students contact your respective lecturers or tutors (if
any).
Emails
• Always put FIT3077-S1-2021 at the beginning of the email subject
• For example FIT3077-S1-2021-Workshop Swap
• No subject emails will be ignored….
• Use your official Monash email to contact.
• Use your full name not nicknames (at the end of the text)
• Be polite
• Don’t be offensive.
• The teaching staff will be regularly sending emails so check regularly.
• I didn’t check my email
• Oh! it went into spam/junk…
Forums
• Use Moodle discussion forums (encouraged).
• Use it for learning, discussion and asking questions.
• Teaching staff will regularly make announcements on forum
• Check regularly.
• Follow E-Etiquettes.
• If you have issues don’t put them on forums
• Contact teaching staff.
Issues
• For all sorts of issues, confusions etc the first person to contact is your tutor.
• If it is not resolved there, you contact the Admin Tutor, i.e. Norman Chen (for Clayton
Campus).
• If necessary, he will involve the Lecturer and the Chief Examiner of the Unit.
RESOURCES
MOODLE

• The unit web site can be found on Moodle, which contains


• Lecture slides
• Assignment specifications
• Resources and links relevant to the unit
• Discussion Forum
• You should check it regularly.
Recommended Readings
• There is no set text book for this unit.
• The following books cover some of the basic background for material in the unit (available
@ lib.monash.edu):
• Bass L., Clements P. and Kazman R. Software Architecture in Practice, Addison-Wesley, 2nd ed., 2003.
• Kuchana P. Software Architecture Design Patterns in Java, Auerbach publications, 2004
• Larman C. Applying UML and Patterns: An Introduction to Object-oriented Analysis and Design and
Iterative Development, 3rd ed., 2004.
• Fowler M. UML Distilled: A Brief Guide to the Standard Object Modeling Language, Addison-Wesley,
3rd ed., 2004.
• Fowler M. and Beck K. Refactoring: Improving the Design of Existing Code, Addison-Wesley, 2002.
• Richards M. Software Architecture Patterns, O'Reilly Media, 2015.
• In most weeks, there will be links given to specific readings on Moodle.
• Many will be articles or chapters rather than books.

You might also like