Software Engineering PS (WS2001/2002)
© Copyright 2001, Schwaiger Roland
The Unified Method in a Nutshell
The Unified Process is a software development process, i.e. a set of activities to transform a user's requirements into a software system. The Unified Process uses the Unified Modeling Language (UML) when preparing all blueprints of the software system. There are three key words which describe the distinguishing aspects of the Unified Process: use-case driven, architecture-centric, and iterative and incremental.
Use-Case DrivenAn interaction of a user(human or other systems) with the system being developed is a use case. A use case is a piece of functionality that give the user a result or value, i.e. use cases capture functional requirements. All use cases together make up the use-case model. Use cases drive the design, implementation and test of a system, i.e. the development process. Use-case driven means that the development process follows a flow (a series of workflows that derive from the use cases). Use cases are developed in parallel with the system architecture and both influence each other.
Architecture-CentricArchitecture in a software system is described as different views of the system being built. The software architecture concept embodies the most significant static and dynamic aspects of the system. The system architect:
Iterative and IncrementalWhile developing large projects it is practical to divide the work into mini-projects. Each mini-project is an iteration that results in an increment. Iterations refere to the steps in the workflow and increments to growth in the product. What is being developed in one interation? First, the iteration deals with a group of use cases that together extend the usability of the product as developed so far. Second, the iteration deals with the most important risk. The mini-project starts from the use case and continues through the consequent development process - analysis, design, implementation, and test - that realize in the form of executable code the use casesbeing developed in the iteration.
In every iteration, the developers identify and specify the relevant use cases, creeate a design using the chosen architecture as a guide, implement the design in components, and verify that the components satisfythe use cases.
Life of the Unified ProcessThe Unified Process repeats over a series of cycles, where each cycle concludes with a product release. Each cycle consists of four phases: inception, elaboration, construction, and transition.
The new product release includes the requirements, use cases nonfunctional requirements, test cases, the architecture and the visual models (artifacts modeled by the UML). Furthermore, for the developer to carry out the next cycle efficiently, the developers need all the representations of the software product:
Phases within a CycleEach cycle is divided into four phases as said above. Within each phase there may be iterations and the resulting increments. Each phase terminates in a milestone, where the milestone is defined by the availability of a set of artifacts (certain models or documents have been brought to a orescribed state).
A typical iteration goes through all the five workflows - requirements, analysis, design, implementation, and test. During the inception phase the following questions should be answerd:
In the elaboration phase most of the use cases are specified in detail and the system architecture is designed. The relationship between the architecture of a system and the system itself is paramount. The architecture is expressed as views of all the models of the system, which together represent the whole system. This implies that there are architectural views of the use-case model, the analysis model, the design model, the implementation model, and the deployment model.
During the construction phase the product is built.
The transition phase covers the period during which the product moves into beta release. This phase involves activities s.a. manufacturing, training customer personell, providing help-line assitance, and correcting defects found after delivery.
UML in a NutshellThe UML is composed of nine diagrams:
last modified Thursday, 25-Oct-2001 10:24:03 CEST firstname.lastname@example.org