2-The unified process in computer Science.pptx

coreyanderson7866 9 views 29 slides Sep 07, 2024
Slide 1
Slide 1 of 29
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29

About This Presentation

2-The unified process in computer Science.pptx


Slide Content

Concept of Unified Process

Topics in today’s Lecture. Iterative Development Iterative and Incremental Development Structure of UP The UP Phases The Agile UP

The Unified Process The Unified Process has emerged as a popular software development process for building Object oriented systems The most important idea of UP is iterative development

The Most Important UP Idea : Iterative Develo p ment . Iterative development is a skillful approach to software development Iterative development. In this approach, development is organized into a series of short, fixed-length (for example, four week) mini-projects called iterations. The outcome of each is a tested, integrated, and executable system. Each iteration includes its own requirements analysis, design, implementation, and testing activities.

Continued… The iterative lifecycle is based on the successive enlargement and refinement of a system through multiple iterations, with cyclic feedback and adaptation as core drivers, to converge upon a suitable system . The system grows incrementally over time, iteration by iteration, and thus this approach is also known as iterative and incremental development.

Continued…. The result of each iteration is an executable but incomplete system; it is not ready to deliver into production. ( may be ready for production after 10 or 15 iterations .) Early iterative process ideas were known as spiral development and evolutionary development . The output of an iteration is not an experimental or throw- away prototype. The output of an iteration is a production- grade subset of the final system . Each iteration tackles new requirements and incrementally extends the system.

Iterative and incremental development .

Embracing Change : Feedback and Adaptation . Iterative development is based on an attitude of embracing change and adaptation as unavoidable and indeed essential drivers. Each iteration involves choosing a small subset of the requirements, and quickly designing, implementing, and testing. In early iterations the choice of requirements and design may not be exactly what is ultimately desired. End-users have a chance to quickly see a partial system and say, "Yes, that's what I asked for, but now that I try it, what I really want is something slightly different .

Iterative feedback and adaptation leads towards the desired system The requirements and design instability lowers over time.

Structure of UP A software development process describes an approach to building, deploying, and possibly maintaining software. UP is an example of iterative process for projects using OOA/D. The Un i fied Pr o cess (UP) is an iterative process. The Unified Process has emerged as a popular software dev e lop m ent process for building object-oriented s y ste m s . In particul a r, the R at i onal U n i f ied Proc e ss or RUP

The UP Phases A UP project organizes the work and iterations across four major phases : 1. Inception : Understand what to build 2 . Elaboration : Understand how to build it 3 . Construction : Build the product 4 . Transition : Validate solution

UP Phases

Inception Phase Inception is not a requirements Phase ; rather, it is a kind of feasibility phase, where just enough investigation is done to support a decision to continue or stop. Not detailed requirements. Define approximate vision and scope, vague estimates of costs and schedule Define r isks. Determine project feasibility. Inception is the smallest phase in the project, and ideally it should be quite short. If the Inception Phase is long then it may be an indication of excessive up-front specification, which is contrary to the spirit of the Unified Process.

Eloboration Phase Baseline architecture, most requirements detailed. Iterative implementation of the core architecture, resolution of high risks, identification of most requirements. Not detailed design. During the Elaboration phase, the project team is expected to capture a healthy majority of the system requirements. However, the primary goals of Elaboration are to address known risk factors and to establish and validate the system architecture. Common processes undertaken in this phase include the creation of use case diagrams , conceptual diagrams (class diagrams with only basic notation) and package diagrams.

Construction Phase Model and build. Iterative implementation of the remaining lower risk and easier elements, and preparation for deployment . Working product, system test complete . Construction Phase is the largest phase of the project. In this phase, the remainder of the system is built on the foundation laid in Elaboration. System features are implemented in a series of short, time-boxed iterations. Each iteration results in an executable release of the software . Common Unified Modeling Language (UML) diagrams used during this phase include activity diagrams, sequence diagrams, collaboration diagrams, State Transition diagrams and interaction overview diagrams. Iterative implementation for the lower risks and easier elements are done. The final Construction phase deliverable is software ready to be deployed in the Transition phase.

Transition Phase System testing, user testing, beta tests, deployment, Stakeholder acceptance. The final project phase is Transition. In this phase the system is deployed to the target users. Feedback received from an initial release (or initial releases) may result in further refinements to be incorporated over the course of several Transition phase iterations. The Transition phase also includes system conversions and user training.

UP Phases

The U P Disciplines (Wo r kflows) The UP describes work activities, such as writing a use case, within disciplines ( originally called workflows). A discipline is a set of activities (and artifacts) in one subject area, such as the activities within requirements analysis. In the UP, an artifact is the general term for any work product: code, Web graphics, database schema, text documents, diagrams, models, and so on. There are several disciplines in the UP; We will focus on some artifacts in the following three:

A longer list of UP disciplines

Disciplines and Phases During one iteration work goes on in most or all disciplines. However, the relative effort across these disciplines changes over time . Early iterations tend to apply greater relative emphasis to requirements and design, and later ones less so, as the requirements and core design stabilize through a process of feedback and adaptation.

Development Case of UP artifacts The choice of UP artifacts for a project may be written up in a short document called the Development Case

The Agile UP Methodologists speak of processes as heavy vs. light, and predictive vs. adaptive. A heavy process is a term meant to suggest any of the following qualities Many artifacts created in bureaucratic atmosphere. rigidity, elaborate, long-term, detailed planning predictive rather than adaptive A predictive process is one that attempts to plan and predict the activities and resource (people) allocations in detail over a relatively long time span, such as the majority of a project.

Continued….. Predictive processes usually have a "waterfall" or sequential lifecycle—first, defining all the requirements; second, defining a detailed design; and third, implementing . Adaptive process is one that accepts change as an inevitable driver and encourages flexible adaptation; they usually have an iterative lifecycle . A n agi l e p roc e ss imp l i e s a l ight and a d ap t i v e pro c ess, nimble in r e spon s e to changing needs

Continued… UP was meant to be adopted and applied in the spirit of an agile process— agile UP. Some examples of how this applies: Prefer a small set of UP activities and artifacts . Since UP is iterative, requirements and designs are not completed before implementation. They adaptively emerge through a series of iterations, based on feedback . There is not a detailed plan for the entire project. There is a high level called the Phase plan that estimates the project end date and other major milestones but it does not detail the fine grained steps to those milestones. A detailed plan called the iteration plan only plans with greater detail in one iteration in advance.
Tags