Stephen J. Mellor is an internationally recognized pioneer in creating effective, engineering approaches to software development. In 1985, he published the widely read Ward-Mellor trilogy Structured Development for Real-Time Systems and in 1988, the first books defining object-oriented analysis.

A Foundation for Model-Driven Architecture in 2002. His latest book MDA Distilled: Principles of Model-Driven Architecture was published in 2004. He is active in the Object Management Group, chairing the consortium that added executable actions to the UML, and he is presently working on a standard for executable UML. He was a two-term member of the OMG Architecture Board and active in specifying MDA.

He is a signatory to the Agile Manifesto. In his copious spare time, he acts as chair of the IEEE Software Advisory Board. Stephen was until recently chief scientist of the Embedded Software Division at Mentor Graphics.

Overview

The challenges of developing high performance, high reliability, and high quality software systems are too much for ad hoc and informal engineering techniques that might have worked in the past on less demanding systems. New techniques for managing these growing complexities are required to meet today`s time-to-market, productivity and quality demands. This one-day class shows you how to:

  • engineer the system-wide design to meet performance constraints;
  • identify the characteristics of the problem that determine the system design;
  • model the system-wide design—the software architecture;
  • build rules that generate efficient code.

This approach produces a number of beneficial results:

  • time-to-market: open code generation reduces project schedules;
  • productivity: reuse is built in to the software architecture;
  • error reduction: rules limit coding errors.

Goals

The goals of this course are to describe the fundamental ideas behind application-independent software architecture. These ideas enable translation of executable models into code using model-driven development techniques, and particularly “MDA”

Target Audience

This is a technical course with a few “big ideas” that are of great value to management. The target audience includes senior developers looking for technical information; line managers looking for innovative approaches, and high-level management looking to change the way their organization builds systems. Examples are drawn from both real-time and IT systems, which can exhibit unexpectedly similar architectural properties.

Target Audience

This is a technical course with a few “big ideas” that are of great value to management. The target audience includes senior developers looking for technical information; line managers looking for innovative approaches, and high-level management looking to change the way their organization builds systems. Examples are drawn from both real-time and IT systems, which can exhibit unexpectedly similar architectural properties.

Main Topics

This one-day course will cover the following topics:

  1. What is the Problem? What problem are we trying to solve?
  2. The Software Architecture. What is it? What is in one?
  3. Selecting an Architecture. How do we select an architecture?
  4. Architectural Styles. What kinds of architectures recur?
  5. Evaluating Overhead. How can know how an architecture will perform?
  6. Performance Requirements. Which ones matter?
  7. Non-Performance-Related Requirements..
  8. Executable Models. What are they? What’s in one?
  9. Actions. What are they? How do they differ from programming?
  10. Model Execution. How do models execute?
  11. Capturing Models (Metamodels). How do we capture models?
  12. Rule Language. How do we turn models into code?
  13. Model Compilers. What are they? What are the main components?
  14. Marks. How do we direct translation?
  15. Management Case Study. What are the results?
  16. Executable UML Foundation. Standardization.
  17. The Future. Where now?