+251 111 559769      info@hilcoe.net
     +251 111 559769      info@hilcoe.net

Software Design and Architecture

Course Objectives

Upon completion of this course, students will have the ability to:

  • design and implement software using several different middleware technologies,
  • apply a variety of frameworks, and architectural styles in designing a wide variety of software,
  • use sound quality metrics as objectives for designs, and then measure and assess designs to ensure the objectives have been met,
  • modify designs using sound change control approaches, and
  • use reverse engineering techniques to recapture the design of software.

Course Description

An in-depth look at software design; Continuation of the study of design patterns, frameworks, and architectures; Survey of current middleware architectures; Design of distributed systems using middleware; Component based design; Measurement theory and appropriate use of metrics in design; Designing for qualities such as performance, safety, security, reusability, reliability, etc.; Measuring internal qualities and complexity of software; Evaluation and evolution of designs; Basics of software evolution, reengineering, and reverse engineering.

Course Content

  1. Introduction
  2. Design Process Models
  3. Software Architecture
  4. Design
  5. Special Issues