Syllabus: 305371 Principle of Software Engineering

Instructor

Instructor: Suradet Jitprapaikulsarn

Office: EE-408

Telephone: 055-261-061 x 4391

Email: suradet at nu.ac.th

Overview

Software engineering is a very broad field.  It virtually encompasses everything about software development—requirements, specifications, analysis, design, verification and validation, quality management, measurement, project management, change management, risk management, etc.  This course focuses mainly on the pragmatic aspects of individual software development.

Objectives

This is a practice-oriented software engineering course with emphasis on individual software development process.  After completing this course, students should:

  1. be able to apply the software engineering principles to their personal software development.
  2. be able to develop their personal processes, to plan and measure their personal work, and to manage the quality of their personal products.
  3. be able to use measurement and analysis to make project decisions and to guide process improvement.
  4. have data that show the improvement of their personal performance and the quality of their products.

Instructional Approach

In order to be successful in this course

  1. Students are required to to read the textbook before attending each class session.
  2. Every week, there will be a quiz on the subject we are going to study.  A quiz will help students prepare for the upcoming topics.
  3. There will be approximately 8 - 10 programming assignments for this course.  These assignments are designed to institute the discipline software engineering practice.
  4. Every week, students will present progress on their semester-long project.  Each project must be an actual software system for an enterpise.

References

Since many reference books are used in the class, it will be more economical to acquire only one title per student and share different titles among group members.

  1. (TSEPA6) ผศ.ดร. พรฤดี เนติโสภากุล, วิศวกรรมซอฟต์แวร์, Top Publishing, 2549 ISBN 974-9918-09-6
  2. (MINT) ดร. สมชาย กิตติชัยกุลกิจ, เรื่องพัฒนาซอฟต์แวร์มีแค่นี้, สมาคมส่งเสริมเทคโนโลยี (ไทย-ญี่ปุ่น), 2549, ISBN 974-443-155-5
  3. (SE8) Ian Sommerville, Software Engineering, 8th Edition, Addison Wesley, 2006, ISBN 0-321-31379-8
  4. (SEPA6) Roger S. Pressman, Software Engineering: A Practitioner's Approach, 6th Edition, McGraw-Hill, 2005, ISBN 0-07-285318-2
  5. (PSP) Watts S. Humphrey, PSP: A Self-Improvement Process for Software Engineers, Addison-Wesley, 2005, ISBN 0-321-30549-3

Note that TSEPA6 is a abbreviated traslation of SEPA6.

Course outline

The following schedule is tentative only; it may change depending on the circumstances.  Note that 

Week Topics Book Section
1 Introduction SE8: Ch 1 - 2
SEPA6: Ch 1 - 3
PSP: Ch 1, 2
MINT: Ch 1, 2
TSEPA: Ch 1 - 3
2 Defining scope SE8: Ch 6
SEPA6: Ch 7
TSEPA: Ch 6
3 Measuring
PSP: Ch 2,3
SEPA6: 15, 22
SE8: Ch 6
4 Planning SE8: Ch 5
SEPA6: Ch 25
MINT: Ch 3
5 Problem Analysis SE8: Ch 8
SEPA6: Ch 7, 8
6 Requirements Development SE8: Ch 6 - 8
SEPA6: Ch 7, 8
TSEPA: Ch 7, 8
7 Requirements Analysis SE8: Ch 8 - 10
SEPA6: Ch 7, 8
TSEPA: Ch 7, 8
MINT: Ch 4, 5
8 Midterm -
9 Estimation SE8: Ch 26
SEPA6: Ch 25
10 Risk Management SE8:
SEPA6: Ch 25
11 Configuration Management SE8: Ch 29
SEPA6: Ch 27
12 Conceptual Design SE8: Ch 11
SEPA6: Ch 9 - 10
TSEPA: Ch 9
13 Project Monitoring and Control SE8: Ch 3
SEPA6: Ch 25
MINT: Ch 3
14 Team Management SE8: Ch 25
15 Verification and Validation SE8: Ch 22 - 24
SEPA6: Ch 13, 14
MINT: Ch 7
TSEPA: Ch 13, 14
16 Quality Assurance SE8: Ch 27
SEPA6: Ch 26
MINT: Ch 7
17 Final Exam -

Note that the above schedule is tentative by nature; it may change at the instructor's discretion.

Evaluation

The course evaluation will be divided equally between examination and assignments.  The distribution of each half is shown below.  

Items Weight
Individual Assignments 20%
Group Assignments 20%
Articles 10%
Quizzes 10%
Midterm Exam 20%
Final Exam 20%

Please make sure that you have carefully read and understand the academic policy.

Note that the above discription is only tentative; it may change at the instructor's discretion.