Natan Asrat

Linkedin: https://www.linkedin.com/in/natan-asrat

Online view: Notes from UML Distilled (Martin Fowler)

Last updated: Wednesday, September 10, 2025

Introduction

UML should be a lightning rod for our creativity as well as a laser for precisely specifying system blueprints so that third parties can bid and build those systems.

The three modes in which people use the UML:

UML defines notation (graphical syntax) and a meta-model (formal definition of concepts).

UML Diagrams:

Development Process

The UML can be used with any process.

The waterfall style breaks down a project based on activity. To build software, you have to do certain activities: requirements analysis, design, coding, and testing. Our 1-year project might thus have a 2-month analysis phase, followed by a 4-month design phase, followed by a 3-month coding phase, followed by a 3-month testing phase. The iterative style breaks down a project by subsets of functionality. You might take a year and break it into 3-month iterations. In the first iteration, you'd take a quarter of the requirements and do the complete software life cycle for that quarter: analysis, design, code, and test. At the end of the first iteration, you'd have a system that does a quarter of the needed functionality. Then you'd do a second iteration so that at the end of 6 months, you'd have a system that does half the functionality.