2013/2014
SEMESTER 1
SOFTWARE ENGINEERING
Lecturer | : | PM Dr Siti Zaiton Mohd Hashim |
Room No. | : | Academic Office, Level 3, N28a |
Telephone No. | : | 0197726248 |
: | sitizaiton@utm.my | |
Class Hours | : | SPACE KB -AI |
Synopsis | : | This course is designed to give students an introduction to an engineering approach in the development of high quality software systems. It will discuss the important software engineering concepts in the various types of the common software process models. The students will also learn the concepts and techniques used in each software development phase including requirements engineering, software design and software testing. This course will also expose the students to utilizing object-oriented method (e.g. UML) and tools in analyzing and designing the software. At the end of this course, students are expected to be able to appreciate most of the common software engineering concepts and techniques as well as producing various software artifacts, documentations, and deliverables. |
Learning Outcame | : | At the end of the course, students should be able to :
|
Reminders | : |
|
Course Assessment | : | Software Artefacts Documentation 30% (2) Projects Presentation and Team Work Assessment 5% (2) Test 1 25% (1) Final Examination 35% (1) |
– |
Week | Topics | Activities/hours |
Week 1 |
1.0 Introduction to Software Engineering 1.1 Software Engineering Definition 1.2 Difference between Computer Science and Software Engineering 1.3 Classification of software quality 1.4 Attributes of good software |
Lecture : 3 Lecture Note: Introduction |
Week 2 | 2.0 Software Process Model 2.1 Common Process Activities 2.2 Generic Software Process Models 2.3 Process Iteration 2.4 The Rational Unified Process 2.5 Computer-Aided Software Engineering |
Lecture : 3 Software Process Note Tutorial: Software Process Model |
Week 3 |
3.0 Requirement Engineering (RE) 3.1 Requirement Specification 3.1.1 Functional and non-functional requirements 3.1.2 User & System Requirements 3.1.3 Requirement specification techniques 3.1.4 The Software requirements document 3.2 Requirement Engineering Process 3.2.1 Feasibility Studies 3.2.2 Requirements elicitation and analysis 3.2.3 Requirement validation 3.3 Requirements management |
Lecture : 3 RE Note Tutorial: Requirement Engineering |
Week 4 | 4.0 Requirement Modelling and Specification 4.1 Writing a software requirement specification (SRS) document using a Standard Template 4.2 Requirement Analysis Using UML-HAnds-On 4.2.1 Introduction to UML 4.2.2 Use Case Modeling & Specification 4.2.3 Sequence Diagram 4.2.4 Activity Diagram |
Lecture : 1 Lab : 2 |
Week 5 & 6 & 7 |
5.0 Requirements Engineering Case Study and Laboratory Artefact: Software Requirements Specification Test 1 |
Lecture : 6 SRS Grading Criteria Lab: 3 Assessment: – Test 1 – Project Deliverable 1 |
– | MID SEM BREAK | – |
Week 9 |
9.0 Architectural design (AD) 9.1 Architectural Design Decisions 9.2 System Organisation 9.3 Decomposition styles 9.4 Control styles 9.5 Reference architectures |
Lecture : 3 Architectural_Designs_Control_Style Tutorial: Architecture Design |
Week 10 &11 |
10.0 Object Oriented Design (OOD) 10.1 OOD Concepts 10.1.1 Principles of OOD 10.1.2 Object Oriented Concepts 10.1.3 Advantages of OOD 10.2 OOD using UML 10.2.1 Enhancing Sequence Diagram 10.2.2 Architectural Design using Package Diagram 10.2.3 Class Diagram Case Tool: Enterprise ArchitectArtefact: Software Design Document Sample_SDD_KTGB Sample_SDD_SlidePriceChecking |
Lecture : 6 ODD & SDD NotesNotes on ODD:
Lab: 2 Assessment: |
Week 12 & 13 | 12.0 Software Verification and Validation (V&V) & Testing 12.1 Introduction to Verification and validation 12.1.1 Verification and validation planning 10.1.2 Software inspections 10.1.3 Software Testing 10.1.3.1 System Testing 10.1.3.2 Component testing 10.1.3.3 Test case design 10.1.3.4 Test automation 10.1.3.5 V & V/ Software testing case studies 10.1.3.5.1 Test case design using Black-box & White Box techniques Artefact: Software Testing Document |
Lecture : 6Tutorial:
Notes on SDD:
Notes on Software Testing : |
Week 14 & 15 |
Project Presentation | Assessment: Presentation skill, teamwork |
Week 16 |
STUDY WEEK EXAMINATION WEEK | – |
Week 17 & 18 & 19 | FINAL EXAMINATION WEEK |
– |
Text/Reference:
- Sommerville, 2010. “Software Engineering”, 9th Edition, Addison Wesley
- Pfleeger, Shari Lawrence, Software Engineering Theory and Practice, second edition. Prentice- Hall 2001.
- Schach, “Classical & Object-oriented Software Engineering with UML & Java”, Mc Graw Hill, 1999