It's UWAweek 47

unitinfo

This page provides helpful information about many coursework units offered by Computer Science and Software Engineering in 2023.

The information here is not official - for official information please see the current UWA Handbook. Instead, it will help students to prepare for their future units, before the beginning of each semester, and before they have access to UWA's Learning Management System (LMS).

About the unit CITS4401 Software Requirements and Design (1st semester 2023)

Unit description:

Requirements and design are important phases of software development because errors or misunderstandings of software requirements or designs are expensive to correct during later stages and may lead to project failure. This unit introduces the theory and practice of software requirements and design. The content comprises (1) requirements engineering (2) software design (3) software architectures; and (4) design patterns and idioms.

Unit outcomes:

Students are able to (1) classify types of software requirements and designs; (2) apply requirements and design processes appropriate for a given scenario; (3) assess quality attributes of given requirements and designs; (4) utilise design patterns and idioms; (5) document software design rationale using discourse conventions of the disciplinee; and (6) select a software architecture appropriate for a particular context.

Unit coordinator:

Dr Mehwish Nasim
[email protected]

Unit homepage:

Unit is offered in these majors and courses:

Indicative weekly topics:

week 1 Requirements introduction and User stories
week 2 Requirements elicitation
week 3 Requirements analysis and use cases
week 4 Specifying and testing requirements
week 5 UML class models
week 6 Dynamic UML models (sequence diagrams and state charts)
week 7 System design introduction: process, design decisions and their documentation (rationale)
week 8 Software architectures
week 9 Software Interfaces
week 10 Software design patterns
week 11 Non-OO design methods
week 12 Unit Review

Indicative assessment:

Requirements and Design group projects, Take-home tests, Exam

Useful prior experience and background knowledge:

Some experience of programming in an OO language (eg Java) and the structure of software systems

Useful prior programming and software experience:

Java (not essential but useful)

Hardware required for this unit:

Students are able to undertake their laboratory exercises and projects in laboratories in the CSSE building, but most students also complete work on their own laptops.
The following hardware is required to successfully complete this unit:


Any

Software required for this unit:

Students are able to undertake their laboratory exercises and projects in laboratories in the CSSE building, but most students also complete work on their own laptops.
The following software is required to successfully complete this unit:


UML drawing package (choice of free ones available)

Operating system(s) used in this unit:

Different units will use different operating systems for their teaching - for in-class examples, laboratory exercises, and programming projects.
If an operating system is REQUIRED, it will be used when marking assessments.


ANY reasonable platform




This information last updated 6:02am Fri 21st Apr 2023

The University of Western Australia

Computer Science and Software Engineering

CRICOS Code: 00126G
Written by [email protected]
Powered by history
Feedback always welcome - it makes our software better!
Last modified  8:32AM Jul 16 2023
Privacy policy