Subject Descriptions - Subject Information

Calendar: 2017 Undergraduate
Faculty: Faculty of Engineering and Information Sciences
Department: School of Computing and Information Technology

Subject Information
Subject Code CSCI334
Subject Name Software Design
Credit Points 6
Pre-Requisites 24 cp of CSCI/CSIT @ 200 level
Co-Requisites CSIT314
Restrictions CSCI205
Equivalence None.
Assessment Group project: 45% Final exam: 55%
General Subject Yes.

Subject Description
Software systems must be carefully designed before they are implemented. This subject provides the knowledge and skills needed for the design of medium to large-scale software systems. Students will be introduced to the set of principles, concepts, and practices that lead to the design and development of a high quality software system. Students will learn different processes and techniques for various aspects of software design including architectural design, detailed design and interface design. The subject also teaches students how design patterns, software refactoring, and application frameworks can be utilized for designing large-scale software systems.

Subject Learning Outcomes
On successful completion of this subject, students will be able to:
1. Apply different software design paradigms, processes and principles.
2. Design a software application of moderate size and complexity, making effective use of design tools.
3. Select appropriate design patterns and frameworks for a given problem.
4. Improve an existing design using software refactoring techniques.
5. Assess the quality of a software design.