You are on page 1of 6

Chiang Kai Shek College

Faculty of Business, Arts and Sciences

COURSE SYLLABUS

1. Department: Information Technology Education


11. Requirements:
2. Course Code: CSSE201 a) Seat works and class participation
b) Quizzes
3. Course Title: Software Engineering c) Project
d) Major Exams (Midterm and Final)
4. Course Description: This course introduces students to software
engineering tools and processes. Topics include project planning, 12. Grading System:
system and program design, program implementation tools and a) 50-based (a score of zero in the quizzes and long term exams
techniques, programming paradigm, testing, software maintenance, means a grade of 50) except for No Project (a grade of zero)
and reusable software management issues. b) Midterm
• Class Standing (CS) = (Q1 + Q2 + Q3) / 3
5. Course Objectives: Upon completion of the course, students should • Midterm (MT) = (2 x CS + Midterm Exam) / 3
be able to: c) Final term
a) Explain the details of the software life cycle. • Class Standing (CS) = (Q4 + Q5 + Documents) / 3
b) Design an effective user interface. • Final term (FT) = (2 x CS + Final Exam) / 3
c) Estimate software project cost. d) Seat works and the likes are added to Quizzes as plus
d) Create a schedule for software development. e) Project
e) Use tools, methods, and techniques in software engineering. • Project = (Midterm Project + Final term Project) / 2
f) Create and maintain software engineering documents. • Note: No Project means a Project Grade of zero (0)
f) Final Grade = MT x 40% + FT x 40% + Project x 20%
6. Unit Credit/Time Allotment: 3 / 54 hours g) Equivalence:
• 98 – 100 = 1.00
7. Semester/Term Offered: Second • 95 – 97 = 1.25
• 92 – 94 = 1.50
8. Pre-requisite subject: CSDB201 • 89 – 91 = 1.75
• 86 – 88 = 2.00
9. Co-requisite subject: none • 83 – 85 = 2.25
• 80 – 82 = 2.50
10. Clientele: Information Technology / Information Systems / Computer • 77 – 79 = 2.75
Science • 75 – 76 = 3.00
• 0 – 74 = 5.00 2004.

13. Textbook: 15. On-line Resources


a) Roger S. Pressman. Software Engineering, A Practitioner’s a) The Standish Group. The CHAOS Report (1994). The Standish
Approach, 6th ed. MacGraw-Hill, 2004. Group International, Inc., 1995. Available at (requires
registration):
14. References: http://standishgroup.com/sample_research/chaos_1994_1.php
a) Ian Sommerville. Software Engineering (8th Edition). Addison- b) The Standish Group. Unfinished Voyages. The Standish Group
Wesley Pub Co, 2006. International, Inc., 1996. Available at (requires registration):
b) Shari Lawrence Pfleeger, Joanne M Atlee. Software http://standishgroup.com/sample_research/unfinished_voyages_
Engineering, Theory and Practice, 3rd ed. Prentice Hall, 2005. 1.php
c) Hans Van Vliet. Software Engineering, Principles and Practice. c) Raymond, E. S. The Cathedral and the Bazaar. 1998. Available
2nd ed. Wiley & Sons, Ltd., 2000. at : http://catb.org/~esr/writings/cathedral-bazaar/
d) Brooks, Frederick P. The Mythical Man-Month: Essays on d) Norin, Ludvig A. and Stöckel, Fredrik. Open-source software
Software Engineering, Anniversary Edition (2nd Edition). development methodology. Luleå university of technology, 1998.
Addison-Wesley Pub Co, 1995. Available at: http://www.ludd.luth.se/users/no/os_meth.pdf
e) Steve McConnell. Code Complete, 2nd Ed. Microsoft Press,
Time
Suggested Material / Tools / Evaluation
Frame
Main Topics / Sub Topics Specific Learning Objectives Activities / Equipment Scheme / Remarks
(Week
Strategies Needed Tools
no.)
1 Introduction At the end of the unit the students should ● Requirements ● LCD Projector ● Quiz joined
1.1 Software Crisis be able to: discussion ● Textbook with the
1.2 What is Software? ● Understand that the software crisis still including the following
1.3 Software Applications exist Project unit 2
1.4 Software Evolution ● Understand the difference between ● Read chapter 1
1.5 Software Myths hardware engineering and software of the textbook
engineering ● Read
1
● Understand the notion of software Standishgroup
evolution reports and
● Debunk common software myths Cathedral and
Bazaar
● Lecture
● Discussion
● Recitation
2 Software Process At the end of the unit the students should ● Read chapters 2 ● LCD Projector ● Quiz 1
2.1 SDLC be able to: to 3 of the ● Textbook
2.2 Process Improvement ● Identify the common activities in a textbook ● Laboratory
2.3 Waterfall Model software development process (SDLC) ● Read Open- computers for
2.4 Incremental Model ● Identify the advantages and source software the hands-on
2.5 RAD Model disadvantages of the most popular development quiz
2.6 Prototyping Model software development process models methodology
2-3
2.7 Spiral Model ● Understand how the agile process can ● Lecture
2.8 Concurrent be used in modern software ● Discussion
2.9 Other Models development ● Recitation
2.10 Agile Development ● Identify the different agile process
models
● Understand the process model used by
open-source development
4-5 3 Requirements At the end of the unit the students should ● Read chapters 5 ● LCD Projector ● Requireme
Engineering be able to: to 8 of the ● Textbook nts
3.1 Software Engineering ● Identify the different requirements textbook ● Laboratory document
Time
Suggested Material / Tools / Evaluation
Frame
Main Topics / Sub Topics Specific Learning Objectives Activities / Equipment Scheme / Remarks
(Week
Strategies Needed Tools
no.)
Practice elicitation techniques ● Lecture computers for ● Quiz 2
3.2 System Engineering ● Gather effectively the requirements in ● Discussion the hands-on
3.3 Planning their software project ● Recitation quiz
3.4 Inception ● Use UML diagrams for specifying ● Discuss the good
3.5 Elicitation requirements points and bad
3.6 Elaboration ● Write down in requirements points in their
3.7 Negotiation specification documents the produced
3.8 Specification requirements of their software project requirements
3.9 Validation documents
3.10 Requirements Analysis
3.11 Data Modeling
3.12 OO Analysis Concepts
4 Design Engineering At the end of the unit the students should ● Lecture ● LCD Projector ● Quiz joined
4.1 Quality be able to: ● Discussion ● Textbook with the
4.2 Design Principles ● Understand the importance of quality in ● Recitation following
4.3 Abstraction software development ● Discuss the good unit 5
4.4 Architecture ● Identify the different design principles points and bad ● Design
4.5 Patterns ● Identify the characteristics of a good points in their document
6
4.6 Modularity software design produced design
4.7 Information Hiding ● Use UML diagrams for specifying documents
4.8 Functional Independence software design
4.9 Refactoring ● Write down in design specification
4.10 OO Design Concepts documents the initial design of their
software project
7-8 5 Architectural Design At the end of the unit the students should ● Lecture ● LCD Projector ● Quiz 3
5.1 Importance be able to: ● Discussion ● Textbook ● Architectur
5.2 Data Design ● Understand the importance of an ● Recitation ● Laboratory al design
5.3 Architectural Styles architectural design in software ● Discuss the good computers for document
5.4 Architectural Design development points and bad the hands-on ● Midterm
5.5 Analyzing Architectural ● Identify the different architectural styles points in their quiz Project
Design and their appropriateness to their produced
Time
Suggested Material / Tools / Evaluation
Frame
Main Topics / Sub Topics Specific Learning Objectives Activities / Equipment Scheme / Remarks
(Week
Strategies Needed Tools
no.)
5.6 Deriving Program software project architectural
Architecture ● Create architectural design of their design
5.7 Partitioning the Architecture software project documents
5.8 Structured Design
5.9 Factoring
5.10 Refining

9 Midterm Exam
6 Component-Level Design At the end of the unit the students should ● Lecture ● LCD Projector ● Quiz joined
6.1 What is a Component? be able to: ● Discussion ● Textbook with the
6.2 Design Guidelines ● Understand the important design ● Recitation following
6.3 Cohesion guidelines ● Discuss the good unit 7
6.4 Coupling ● Understand the significance of high points and bad ● Componen
10-11
6.5 Collaboration Diagram cohesion and low coupling points in their t-level
6.6 Activity Diagram ● Create component-level design for their produced design
6.7 Statechart software project component-level document
design
● documents
7 User Interface Design At the end of the unit the students should ● Lecture ● LCD Projector ● Quiz 4
7.1 Interface Design be able to: ● Discussion ● Textbook ● User
7.2 User-Centric Design ● Understand that the user interface is ● Recitation ● Laboratory Interface
7.3 Consistency the software in the point of view of the ● Discuss the good computers for design of
7.4 User Interface Design user points and bad the hands-on their
Models ● Identify the design principles applied in points in their quiz project
12-13
7.5 Interface Analysis user interface design produced User
7.6 User Analysis ● Identify the good and the bad designs Interface design
7.7 Task Analysis and ● Create user interface designs for their
Modeling software project
7.8 Interface Design Steps
7.9 Design Issues
Time
Suggested Material / Tools / Evaluation
Frame
Main Topics / Sub Topics Specific Learning Objectives Activities / Equipment Scheme / Remarks
(Week
Strategies Needed Tools
no.)
8 Software Testing At the end of the unit the students should ● Lecture ● LCD Projector ● Quiz joined
8.1 Importance of Testing be able to: ● Discussion ● Textbook with the
8.2 Testing Strategy ● Identify the different testing techniques ● Recitation ● Laboratory following
8.3 Unit Testing and strategies ● Demonstrate the computers for unit 9
8.4 Integration Testing ● Use an automated testing use of automated the ● Automated
8.5 Object-Oriented Testing tool/framework testing tool demonstration test cases
8.6 System Testing ● Create test cases or scripts to test their ● Create of automated for their
14-15
8.7 Debugging software project automated test test cases project
8.8 Test Case Design cases ● Laboratory
8.9 Types of Testing computers for
8.10 Testing Methods the hands-on
creation of
automated test
cases
9 Project Management At the end of the unit the students should ● Lecture ● LCD Projector ● Quiz 5
9.1 Concepts be able to: ● Discussion ● Textbook ● Final term
9.2 Process and Project ● Apply project management principles in ● Recitation ● Laboratory project
Metrics managing software development computers for
9.3 Estimation for Software projects the hands-on
16-17 Projects ● Identify the activities in software quiz
9.4 Software Project maintenance
Scheduling
9.5 Risk Management
9.6 Quality Management
9.7 Change Management
18 Final Exam
Total Weeks: 18