CS3342 Software Design
Course Duration: One Semester
Credit Units: 3
Medium of Instruction: English
CS1303 Introduction to Internet and Programming; or
CS2311 Computer Programming; or
CS2331 Problem Solving and Programming; or
CS2332 Object-Oriented Programming; or
CS2333 Object-Oriented Programming for Media; or
CS2360 Java Programming; or
CS2363 Computer Programming; or
CS2372 Fundamentals of Programming
Equivalent Courses: Nil
Exclusive Courses: Nil
1. Course Aims:
This course aims to introduce the fundamental principles and practice of software process and software development methodology. Students will explore techniques to elicit requirements, analyze them, and apply software engineering principles to design their solutions. Professional ethics will also be introduced.
2. Course Intended Learning Outcomes (CILOs):
(state what the student is expected to be able to do at the end of the course according to a given standard of performance)
Upon successful completion of this course, students should be able to:
|1.||describe the software process and explain the structured and object-oriented software development methodologies; || |
|2.||elicit, analyze and specify user requirements; || |
|3.||perform object-oriented analysis and formulate the analysis model using modern modelling techniques; || |
|4.||apply object-oriented design principles to make design solutions; || |
|5.||describe the key components in software engineering professional ethics. || |
3. Teaching and Learning Activities (TLAs):
(designed to facilitate students’ achievement of the CILOs)
Suggested lecture/tutorial/laboratory mix: 2 hrs. lecture; 1 hr. tutorial.
This course will focus mainly on introduction of the fundamental theories, principles and practice of software engineering methodologies using examples of real life software applications.
The assignments will provide opportunities for students to define software requirements, and then create a software design solution.
Based on the Course ILOs, the teaching/learning activities of this course may include:
|CILO 1 to CILO 5||Concepts and techniques will be conveyed in lectures. The tutorial sessions are used for students to raises questions and for the course instructor to lead discussions on issues relevant to object-oriented and structured software development methodologies. Students will apply concepts and skills learnt to work out exercises in the tutorial sessions, and discuss their solutions with peers and the course instructor to reinforce the learnt object-oriented concepts, techniques, and compare them with the structured approaches.|
Other coursework include readings and assignments, and a project. They provide students opportunities to apply the learnt design skills and understand the software design process, and professional ethics issues.
4. Assessment Tasks/Activities:
(designed to assess how well the students achieve the CILOs)
The Course ILOs are assessed using the following approach:
|Type of assessment tasks/activities||Weighting (if applicable)||Remarks|
|CILO 1||This ILO is assessed by tutorial exercise, quiz, and a team paper, in which students study selective aspects on recent development in the popular object-oriented and structured software development processes. || || |
|CILO 2||This ILO is assessed by assignments, quiz, and examination. Students should be able to understand some project descriptions, extract and consolidate user requirements in the format of use cases, identify ambiguities in user requirements and resolve them.|| || |
|CILO 3||This ILO is assessed by the assignments, quiz, and examination. They will assess the student’s ability to create and analyze the use cases to identify business objects and their relationships. The emphasis will be on producing an object-oriented analysis model and on whether the analysis model can be traced back to the use cases.|| || |
|CILO 4||This ILO is assessed by the coursework and examination on the student’s ability to apply, express and evaluate the software design solutions.|| || |
|CILO 5||This ILO is assessed by the coursework on the student’s ability to identify ethical issues, apply and evaluate criteria to resolve scenarios. || || |
5. Grading of Student Achievement:
Examination duration: 2 hours
Percentage of coursework, examination, etc.: 50% CW; 50% Exam
Grading pattern: Standard (A+AA-…F)
For a student to pass the course, at least 30% of the maximum mark for the examination must be obtained.
Software Process. Software Specification, Software Design Principles, Object-Oriented Analysis and Design (OOAD), Structured Analysis and Design, UML, Data Flow Diagram, Structured Charts.
Department of Computer Science