350 likes | 480 Views
Objectives . Explain the purpose and various phases of the traditional systems development life cycle (SDLC) Explain when to use an adaptive approach to the SDLC in place of the more predictive traditional SDLC
E N D
Objectives • Explain the purpose and various phases of the traditional systems development life cycle (SDLC) • Explain when to use an adaptive approach to the SDLC in place of the more predictive traditional SDLC • Describe how the more adaptive Unified Process (UP) life cycle uses iterative and incremental development • Explain the differences between a model, a tool, a technique, and a methodology Object-Oriented Analysis and Design with the Unified Process
Objectives (continued) • Describe the Unified Process as a comprehensive system development methodology that combines proven best practices with the iterative UP life cycle • Describe the disciplines used in a UP development project • Explain how automated tools are used in system development Object-Oriented Analysis and Design with the Unified Process
The Systems Development Life Cycle • The entire process of building, deploying, using and updating an information system • Two approaches: • Predictive approach • Assumes the development project can be planned and organized in advance and the new information system can be developed according to the plan • Adaptive approach • Assumes the project cannot be planned out completely in advance but be modified as it progress, especially after some preliminary development work
SDLC phases and objectives a) Traditional SDLC SDLC Phases and Objectives Object-Oriented Analysis and Design with the Unified Process
b) The waterfall approach The Waterfall Approach to the SDLC Object-Oriented Analysis and Design with the Unified Process
c) The overlap of system development activities : Completion of major components of project Object-Oriented Analysis and Design with the Unified Process
The Newer Adaptive Approaches to the SDLC a) Spiral Model • The spiral model: • Cycles over and over again through development activities until a the project is complete • Iteration of system development activities • Iteration 1: SOME analysis, SOME design, SOME implementation • Iteration 2: MORE analysis, MORE design, MORE implementation • Iteration 3: EVEN MORE analysis, EVEN MORE design, EVEN MORE implementation All above process should be repeated until the system is closer to what is ultimately needed Object-Oriented Analysis and Design with the Unified Process
The Spiral Life Cycle Model Object-Oriented Analysis and Design with the Unified Process
b) Related approach : Incremental Development • Completes parts of a system in several iterations and then puts them into operation for users • This process is continuously and finally we can complete the last part and integrate it with the rest • The object oriented approach is always described as highly iterative
The Unified Process Life Cycle • UP life cycle • Includes (4) phases which consist of iterations • Iterations are “mini-projects” • Inception: develop and refine system vision • Elaboration: define requirements and core architecture • Construction: continue design and implementation • Transition: move the system into operational mode Object-Oriented Analysis and Design with the Unified Process
The Unified Process System Development Life Cycle Object-Oriented Analysis and Design with the Unified Process
UP Phases and Objectives Object-Oriented Analysis and Design with the Unified Process
Methodologies, Models, Tools and Techniques Tools: Helps to create models or other components required in the project CASE: Helps s system analyst complete development task Object-Oriented Analysis and Design with the Unified Process
Some Models used in System Development Object-Oriented Analysis and Design with the Unified Process
Some Techniques used in System Development Technique: A collection of guidelines that help an analyst complete a system development activity or task Object-Oriented Analysis and Design with the Unified Process
Relationships of Models, Tools, and Techniques in a System Development Methodology Object-Oriented Analysis and Design with the Unified Process
The Unified Process as a System Development Methodology • UP: object-oriented system development methodology • Developed by Grady Booch, James Rumbaugh and Ivar Jacobson. Object-Oriented Analysis and Design with the Unified Process
UP Life Cycle with Phases, Iterations, and Disciplines Object-Oriented Analysis and Design with the Unified Process
The UP Disciplines • Six main UP development disciplines • Business modeling, requirements, design, implementation, testing, and deployment • Each iteration • Similar to a mini-project • Results in a completed portion of the system • Three additional support disciplines • Project management, configuration and change management, and environment Object-Oriented Analysis and Design with the Unified Process
a) Business Modeling • Purpose: understand business environment • Three major activities part of business modeling • Understand the business environments • Create the system vision • Create business models Object-Oriented Analysis and Design with the Unified Process
b) Requirements • Objective: document business requirements • Key drivers of activities: discovery and understanding • Requirements discipline and business modeling map to traditional systems analysis • Activities list • Gather detailed information • Define functional and nonfunctional requirements • Prioritize requirements • Develop user interface dialogs • Evaluate requirements with users Object-Oriented Analysis and Design with the Unified Process
c) Design • Objective: design system based on requirements • Six major activities in the design discipline • Design support services architecture and deployment environment • Design the software architecture • Design use case realizations • Design the database • Design the system and user interfaces • Design the system security and controls Object-Oriented Analysis and Design with the Unified Process
d) Implementation • Objective: build or acquire needed system components • Implementation activities • Build software components • Acquire software components • Integrate software components Object-Oriented Analysis and Design with the Unified Process
e) Testing • Testing is critical discipline • Testing activities • Define and conduct unit testing • Define and conduct integration testing • Define and conduct usability testing • Define and conduct user acceptance testing • In UP, acceptance testing occurs throughout the building phase Object-Oriented Analysis and Design with the Unified Process
f) Deployment • Goal: conduct activities to make system operational • Deployment activities • Acquire hardware and system software • Package and install components • Train users • Convert and initialize data • Deployment activities prominent in transition phase Object-Oriented Analysis and Design with the Unified Process
g) Project Management • Most important support discipline • Project management activities • Finalize the system and project scope • Develop the project and iteration schedule • Identify project risks and confirm feasibility • Monitor and control the project’s plan • Monitor and control communications • Monitor and control risks and outstanding issues Object-Oriented Analysis and Design with the Unified Process
h) Configuration and Change Management • Configuration and change discipline pertains to: • Requirements • Design • Source code • Executables • The two activities in this discipline • Develop change control procedures • Manage models and software components Object-Oriented Analysis and Design with the Unified Process
i) Environment • Development environment includes • Available facilities • Design of the workspace • Forums for team communication and interaction • Environment discipline activities • Select and configure the development tools • Tailor the UP development process • Provide technical support services Object-Oriented Analysis and Design with the Unified Process
Tools to Support System Development • CASE (Computer Aided System Engineering) • Contains da atabase repository for information system • Set of tools that help analysts complete activities • Sample artifacts: models, automatically generated code Object-Oriented Analysis and Design with the Unified Process
A CASE Tool Repository Contains All Information About the System Object-Oriented Analysis and Design with the Unified Process
Tools to Support System Development (continued) • Microsoft Visio: emphasizes technical drawing • Rational Rose • CASE tool supporting object-oriented approach • Strongly identified with UP methodology • Together • Pioneers round-trip engineering • synchronizes graphical models with generated program code • Leverages UML diagrams Object-Oriented Analysis and Design with the Unified Process
Tools to Support System Development (continued) • Embarcadero Describe • Visual Modeling • Round-trip engineering • Rational XDE Professional • Integrates Microsoft Visual Studio.NET IDE • Also provides visual modeling and round-trip Object-Oriented Analysis and Design with the Unified Process
Summary • SDLC: set of activities required to complete system development project • Predictive SDLC: executes project in sequential phases (waterfall approach) • Adaptive SDLC: accommodates change and phase overlap • Spiral SDLC model introduces iterations (cycles) • UP is an adaptive system development methodology Object-Oriented Analysis and Design with the Unified Process
Summary (continued) • UP life cycle includes four phases-inception, elaboration, construction, and transition • UP phases decomposed into one ore more iterations • Iterations involve work in nine UP disciplines • CASE: automation tools simplify development tasks Object-Oriented Analysis and Design with the Unified Process