CENG 531 Advanced Software Engineering




Course Description

Software development lifecycle, software modeling languages, advanced UML and design patterns, software engineering tools, software project planning and tracking, software process management, business and domain object models, architectural design, database design techniques, class and interaction design, testing, refactoring, user interface development, data engineering and business components.

This course surveys current research in software engineering. Topics include both the technical aspects of software development and issues pertaining to software process and project management.

Course Topics for 2007 Fall


Wider Software Engineering Context
   Software Development Lifecycle, IEEE/EIA 12207 Software Life Cycle Processes
   Software and Systems Engineering: overview, examples and industrial realities
   Project Management - Project Planning and Scheduling, Team Organization
   Case studies


Software Development Processes
   Software Process Improvement and an Overview of Software Processes
   Software Quality and Standards
   Software Economics: Software Metrics - Measurement, Estimation and Prediction
   Requirements Management
   Configuration Management
   Risk Management
   Software Testing and Inspection
   Some Examples from Heavy and Agile Development Processes (CMMI, RUP, XP, ...)


Software Architecture
    UML, Design Patterns and Frameworks
    Architecture Description Languages
    Pattern-Oriented Software Architecture
    Component-based Development
    Aspect-oriented development
    Advanced Modeling: UML Extension Mechanisms, Object Constraint Language, Model Checking, Model Driven Architecture


In some weeks, we will discuss selected readings in software engineering. You are expected to attend each meeting having read all the assigned materials and prepared brief typed summaries of each one. At the beginning of each meeting, students will be arbitrarily chosen to lead the discussions, so your summaries will prove invaluable when you are chosen as discussion leader. Please bring hard copies of your summaries to the meeting.

Your summaries should include not only an exposition of the material but also questions that arise during your reading. The success of this course depends on your participating in the discussion by raising these questions and engaging in the ensuing debate.

Course Report

You are expected to write a report on a software engineering topic of your choosing, subject to my approval. I will happy to direct you toward topics and resources.

The timeline for the reports is as follows:

  Topic and abstract due:
  Draft of report due:
  In-class oral presentations of reports:
  Final report due:


CENG 401 Software Engineering

Lecture Schedule




Practical Software Engineering: A Case Study Approach, L. Maciaszek, B. L. Liong, Addison Wesley, 864 pages, 2004.



Object-Oriented Software Engineering: Conquering Complex and Changing Systems, Using UML, Patterns, and Java, Bernd Bruegge and Allen H. Dutoit, Prentice-Hall, 2004.


Head Start Design Patterns, Elizabeth Freeman et al., O'Reilly, 2004.


Object-Oriented Software Engineering: Practical Software Development Using UML And Java, Timothy C. Lethbridge, Robert Laganiere, 2nd Edition, McGraw-Hill, 2004, ISBN: 0077109082. resources 


Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, Craig Larman, Prentice Hall, 2004, ISBN: 0-13-148906-2.


UML Distilled: A Brief Guide to the Standard Object Modeling Language, 3rd Edition, Martin Fowler, Addison-Wesley, 192 pages, 2003, ISBN: 0321193687.


UML for Java Programmers, Robert C. Martin, Prentice Hall, 288 pages, 2003.


Software Engineering: An Object-Oriented Perspective, Braude, Ertic J., John Wiley, 2002. resources


Paper Readings

Please look at this Readings page before class. It will be regularly updated during the semester.


30 % : Presentation, ADC (Attendance, Discussion and Contribution)  
0 % : Project
30 % : Final Exam (a comprehensive exam covering all topics at the end of the course)

 Similar Courses in Other Universities




This site was last updated 01/29/08