Software Design and Modelling
Program Overview
Course Overview
The course CSC8710 Software Design and Modelling is offered by the University of Southern Queensland. This course focuses on the discipline of Software Engineering, encompassing theories, methods, and tools applied to produce reliable and error-free software systems on time and at low cost.
Staffing
- Course Coordinator: Taotao Cai
Course Description
Producing software systems that are reliable, error-free, and delivered on time and at low cost is a challenging task. Software developers must be able to select appropriately from predictive (plan-driven) approaches or adaptive (iterative/agile) approaches and apply modern software engineering techniques effectively to produce quality software solutions. This course covers the methods, tools, and procedures of software engineering, including project planning, system and software requirements analysis, design, development, configuration management, testing, documentation, and maintenance of software. Industry-standard system modelling and specification notations are used throughout the course.
Course Learning Outcomes
On completion of this course, students should be able to:
- Analyse requirements and create specifications using graphical system description languages for clients and developers with ethical and cultural awareness.
- Evaluate and apply methods for planning and managing large software projects, including design, development, and maintenance methods in line with ICT ethics and ACS professional code of conduct.
- Plan, design, manage, execute, and report on test-ware including test cases and test scripts, using appropriate testing tools and techniques, to measure and improve software quality.
- Apply documentation tools to support effective collaboration.
- Identify and critically assess emerging trends in software engineering.
Topics
- Requirement analysis and graphical languages for system specification with ethical and cultural awareness (20%)
- Predictive and adaptive software engineering methods and techniques (20%)
- Documentation tools (5%)
- Architectural design and design patterns (10%)
- Design and implementation (10%)
- Testing (20%)
- Basics of automated deployment and continuous integration (5%)
- System life cycle and evolution (5%)
- Emerging trends in Software Engineering, ICT ethics, and ACS professional Code of Conduct in Software Engineering context (5%)
Text and Materials
- Sommerville, I., 2021, Engineering Software Products: An Introduction to Modern Software Engineering, Global Edition, Pearson, Australia. (eBook ISBN 13: 978--6.)
Student Workload Expectations
To do well in this subject, students are expected to commit approximately 10 hours per week, including class contact hours, independent study, and all assessment tasks. If undertaking additional activities, which may include placements and residential schools, the weekly workload hours may vary.
Assessment Details
- Assignments: Written - Essay 1 (20%), Essay 2 (30%), Report (50%)
- The assessments cover course learning outcomes 1 through 5.
University Acknowledgement
The University of Southern Queensland acknowledges the traditional custodians of the lands and waterways where the University is located and pays respect to Elders past, present, and future, acknowledging the cultural diversity of Aboriginal and Torres Strait Islander peoples.
