WEST VIRGINIA UNIVERSITY

COLLEGE OF ENGINEERING

LANE DEPARTMENT OF COMPUTER SCIENCE & ELECTRICAL ENGINEERING

CLASS GUIDELINES
Cpe 684
Advanced Real-Time Systems Development

Spring semester of each year
Instructor: Dr. Hany Ammar, email: hammar@wvu.edu, Office: 739 ESB, Phone: 293-0405 (ext.. 2514)

Prerequisites: CS 415, Intr. To Object-Oriented Programming, CpE 484, Intr. To Real-Time Systems Development, or instructor consent.

Recommended Text:  Pattern-Oriented Analysis and Design: Composing Patterns to Design Software Systems by Sherif M. Yacoub, Hany H. Ammar,  Addison-Wesley,  2003, ISBN: 0201776405

References:

Links on UML and UML Tools

http://www.omg.org/technology/uml/

http://www.smartdraw.com/specials/umldesign.asp?id=6437

http://www.advancedsw.com/training/tutorials.html

http://www.smartdraw.com/resources/centers/uml/uml.htm

 http://www.embarcadero.com/downloads/google4.asp

 

Course Description and Objectives: This is a project-based course focused on systems development with an emphasis on analysis and design of real-time systems. The course starts by introducing the Unified Modeling Language (UML)  for real-time systems and describing their characteristics and unique attributes of real-time safety critical systems. The object-oriented development process for embedded systems is described. The analysis and design phases of development are then covered by describing object modeling techniques and design patterns and frameworks. The Course concentrates on Pattern-Oriented Analysis and Design (POAD). The POAD process and its application to several case studies will be addressed.

A computer-aided software engineering (CASE) tool is used throughout the course. A term project, in-class exercises, and a mid-term examination are used to assess the students learning process. The term project is to be done in teams of 3 or 4 students. Project Presentations and reviews will be conducted in class..

Expected Learning Outcomes :                    

Upon successful completion of this course students will be able to:

  1. Specify the characteristics of real-time software and identify unique attributes and problems related to the software development for real-time systems using specific examples.
  2. Use a CASE tool to:
    • Correctly analyze the software requirements of a complex real-time system and develop a specification based on object-oriented analysis.
    • Develop and a high level design according to the specification using design patterns.
  3. Specify and practice the usage of key object-oriented Design Patterns in real-time systems.
  4. Develop and document a real-time system design using Design Patterns

Topics:.(Notes and Lecture Slides)......................................................# of Weeks

  • Definition of Real-Time Systems Attributes and Characteristics        1/2
  • The Object-Oriented Analysis and Design Process                                1/2
  • The Unified Modeling Language and the Unified Process                       1
  • Object-Oriented Design Patterns                                                          2
  • The Pattern-Oriented Analysis and Design (POAD) Process                 1
  • POAD Analysis Phase                                                                          1
  • POAD Design Phase                                                                           1
  • POAD Design Refinement Phase                                                          1
  • Project                                                                                                 6

Computer Usage: Students will be required to use a Computer-Aided Software Engineering package running in the Computer Labs in ESB 813 and 756.

Grading:

  • Homework and Exercises ...................................35%
  • Mid-Term Exam..................................................30%
  • Project…………………………………………35%

The project will be conducted by groups of 2 or 3 students. Project Reviews and Reports will be required from each group. The final report should summarize the whole project and document problems encountered and lessons learned during the software analysis and design process. It is expected that students will participate equally in the work of the group. Group meetings minutes specifying the attendees should be included, and the contribution of each student must be documented in each report.

Grading Policy :          No make-up exams except by prior arrangement with instructor

                                    Late assignment = no assignment

                                    Exam grading appeals in writing on the day the exam is returned.