objectives
DESCRIPTION
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 - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/1.jpg)
![Page 2: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/2.jpg)
2Object-Oriented Analysis and Design with the Unified Process
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
![Page 3: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/3.jpg)
3Object-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
Describe the key features of the object-oriented approach
Explain how automated tools are used in system development
![Page 4: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/4.jpg)
4Object-Oriented Analysis and Design with the Unified Process
The Systems Development Life
Cycle SDLC: process of building, deploying, using, and
updating an information system Text focus: initial development project Chief variations of SDLC
Predictive: project planned entirely in advance Adaptive: planning leaves room for contingencies
Pure approaches to SDLC are rare Most projects have predictive and adaptive elements
![Page 5: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/5.jpg)
5Object-Oriented Analysis and Design with the Unified Process
Predictive versus adaptive approaches to the SDLC
![Page 6: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/6.jpg)
6Object-Oriented Analysis and Design with the Unified Process
The Traditional Predictive SDLC Approaches
Five activities or phases in a project Planning, analysis, design, implementation, support
Pure waterfall approach (predictive SDLC) Assumes project phases can be sequentially executed Project drops over the “waterfall” into the next phase
Modified waterfall approach Tempers pure waterfall by recognizing phase overlap Informs many current projects and company systems
![Page 7: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/7.jpg)
7Object-Oriented Analysis and Design with the Unified Process
SDLC Phases and Objectives
![Page 8: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/8.jpg)
8Object-Oriented Analysis and Design with the Unified Process
The Waterfall Approach to the SDLC
![Page 9: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/9.jpg)
9Object-Oriented Analysis and Design with the Unified Process
The Newer Adaptive Approaches to the SDLC
The spiral model: early form of adaptive SDLC Activities radiate from center starting point Functional prototypes are artifacts of each phase
Iterative problem solving: repeats activities Several approaches to structuring iterations
Define and implement the key system functions Focus on one subsystem at a time Define by complexity or risk of certain components
![Page 10: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/10.jpg)
10Object-Oriented Analysis and Design with the Unified Process
The Spiral Life Cycle Model
![Page 11: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/11.jpg)
11Object-Oriented Analysis and Design with the Unified Process
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
![Page 12: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/12.jpg)
12Object-Oriented Analysis and Design with the Unified Process
The Unified Process System Development Life Cycle
![Page 13: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/13.jpg)
13Object-Oriented Analysis and Design with the Unified Process
UP Phases and Objectives
![Page 14: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/14.jpg)
14Object-Oriented Analysis and Design with the Unified Process
Methodologies, Models, Tools, and Techniques
![Page 15: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/15.jpg)
15Object-Oriented Analysis and Design with the Unified Process
Methodologies and System Development Processes
System development methodology
Provides guidelines for every activity in system development
Includes specific models, tools, and techniques
UP is a system development methodology
Methodologies supported with documentation
![Page 16: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/16.jpg)
Methodologies and Processes are an approach which uses:
Techniques Tools Models
16Object-Oriented Analysis and Design with the Unified Process
To produce system artifacts and deliverables
![Page 17: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/17.jpg)
17Object-Oriented Analysis and Design with the Unified Process
Techniques Technique
Collection of guidelines
Enables an analyst to complete an activity or task
Example techniques
Domain-modeling , use case modeling, software-testing, user-interviewing techniques, relational database design techniques
Proven techniques are embraced as “Best Practices”
![Page 18: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/18.jpg)
18Object-Oriented Analysis and Design with the Unified Process
Tools Tool: software used to create models or components
Example tools
Project management software tools (Microsoft Project)
Integrated development environments (Visual Studio)
Code generators
ERD modeling software
Automated testing tools
![Page 19: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/19.jpg)
19Object-Oriented Analysis and Design with the Unified Process
Models Model is abstract (separate) aspects of the real world
Models come in many forms
Physical analogs, mathematical, graphical
System development models are highly abstract
Depict inputs, outputs, processes, data, objects, interactions, locations, networks, and devices
Unified Modeling Language (UML): standard notation
PERT or Gantt charts: model project itself
![Page 20: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/20.jpg)
20Object-Oriented Analysis and Design with the Unified Process
Some Models used in System Development
![Page 21: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/21.jpg)
21Object-Oriented Analysis and Design with the Unified Process
Relationships of Models, Tools, and Techniques in a System Development Methodology
![Page 22: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/22.jpg)
22Object-Oriented Analysis and Design with the Unified Process
The Unified Process as a System Development Methodology
UP: object-oriented system development methodology
UP should be tailored to organizational and project needs
Barbara Halifax selects a “lighter” UP variation for RMO’s customer support system project
Project will be use case driven
![Page 23: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/23.jpg)
23Object-Oriented Analysis and Design with the Unified Process
The Unified Process as a System Development Methodology
(continued) Use case
Activity or process that the system carries out Basis for defining requirements and designs
UP defines disciplines within each phase Discipline: set of functionally related activities Iterations concatenate activities from all disciplines Activities in each discipline produce artifacts; models,
documents, source code, and executables
![Page 24: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/24.jpg)
24Object-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
![Page 25: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/25.jpg)
25Object-Oriented Analysis and Design with the Unified Process
UP Life Cycle with Phases, Iterations, and Disciplines
![Page 26: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/26.jpg)
26Object-Oriented Analysis and Design with the Unified Process
Business Modeling
Purpose: understand business environment
Three major activities part of business modeling
Understand surroundings
Create the system vision
Create business models
![Page 27: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/27.jpg)
27Object-Oriented Analysis and Design with the Unified Process
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 Develop user interface prototype Evaluate requirements with users
![Page 28: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/28.jpg)
28Object-Oriented Analysis and Design with the Unified Process
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
![Page 29: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/29.jpg)
29Object-Oriented Analysis and Design with the Unified Process
Implementation
Objective: build or acquire needed system components
Implementation activities
Build software components
Acquire software components
Integrate software components
![Page 30: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/30.jpg)
30Object-Oriented Analysis and Design with the Unified Process
Testing Testing is critical discipline
Testing activities
Define and conduct unit testing
Define and conduct integration testing
Define and conduct system testing
Define and conduct usability testing
Define and conduct user acceptance testing
In UP, acceptance testing occurs throughout the building phase
![Page 31: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/31.jpg)
31Object-Oriented Analysis and Design with the Unified Process
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
![Page 32: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/32.jpg)
32Object-Oriented Analysis and Design with the Unified Process
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
![Page 33: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/33.jpg)
33Object-Oriented Analysis and Design with the Unified Process
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
![Page 34: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/34.jpg)
34Object-Oriented Analysis and Design with the Unified Process
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
![Page 35: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/35.jpg)
35Object-Oriented Analysis and Design with the Unified Process
Overview of Object-Oriented Concepts
Object-oriented analysis (OOA) views system as a collection of objects
Each domain object represents a thing in system
Object capable of responding to messages
Each object has identity because of the attribute values
Object-oriented design (OOD)
Defines additional solution objects
Shows how the objects interact to complete tasks
Refines definition of objects for implementation
Object-oriented programming (OOP): object coding
Languages: Simula, C++, Java, C#, Visual Basic .NET
![Page 36: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/36.jpg)
36Object-Oriented Analysis and Design with the Unified Process
Recognizing the Benefits of OO
Development Original application of object-oriented technology
Computer simulations
Graphical user interfaces
Rationale for use in information systems
Benefits of naturalness
Reusability
![Page 37: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/37.jpg)
37Object-Oriented Analysis and Design with the Unified Process
Objects Are More Natural OO approach mirrors human perception: objects
moving through space OOA, OOD, and OOP imitate perceptual processes by
modeling classes of objects Some system developers resist OO development New programmers are more receptive to OO approach System users appreciate object-orientation
They discuss the objects involved in their work Hierarchies are common tools for organizing knowledge
![Page 38: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/38.jpg)
38Object-Oriented Analysis and Design with the Unified Process
Classes of Objects Can Be Reused
Classes of objects have a long shelf life
Example: Customer class adaptability
Reused in systems where customer objects needed
Extended through inheritance to a new subclass
Reused during analysis, design, or programming
Example: .NET class framework for Windows
![Page 39: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/39.jpg)
39Object-Oriented Analysis and Design with the Unified Process
Understanding Object-Oriented Concepts
Object: thing with attributes and behaviors
Types of objects
Solution domain objects (User interface)
Problem domain objects (Customer)
Attributes are associated with data give object identity
Behaviors are associated with methods, functions, and procedures
![Page 40: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/40.jpg)
40Object-Oriented Analysis and Design with the Unified Process
Figure 2-18Attributes and Methods in Problem Domain Objects
![Page 41: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/41.jpg)
41Object-Oriented Analysis and Design with the Unified Process
Understanding Object-Oriented Concepts (continued)
A Class defines a template for all objects of class
Objects are instances of a class
Customer object is an instance of a Customer class
Objects interact through messages
Objects have identity based on value of attributes
![Page 42: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/42.jpg)
42Object-Oriented Analysis and Design with the Unified Process
Class and Object Representation
Class Objects in Memory
29384James Jones123 MainFlagstaffAZ86002
39203John Smith123 ElmFlagstaffAZ86001
Customer
id : doublename : stringaddress : stringcity : stringstate : stringzip : string
Identity by
attribute value
Instantiated objects
![Page 43: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/43.jpg)
43Object-Oriented Analysis and Design with the Unified Process
Understanding Object-Oriented Concepts (continued)
Objects can maintain static association relationships Encapsulation: combining attributes and methods into one
unit Information hiding: separating specification from
implementation Inheritance: extending the characteristics of a class Polymorphism: ability for dissimilar objects to respond to
the same message
![Page 44: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/44.jpg)
44Object-Oriented Analysis and Design with the Unified Process
Figure 2-20Order-processing system where objects interact by sending messages
![Page 45: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/45.jpg)
45Object-Oriented Analysis and Design with the Unified Process
Figure 2-22Superclasses and Subclasses
![Page 46: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/46.jpg)
46Object-Oriented Analysis and Design with the Unified Process
Tools to Support System Development
CASE (Computer Aided System Engineering) Database repository for information system
Set of tools that help analysts complete activities
Sample artifacts: models, automatically generated code
Variations on CASE Visual modeling tools
Integrated application development tools
Round-trip engineering tools
![Page 47: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/47.jpg)
47Object-Oriented Analysis and Design with the Unified Process
Figure 2-24A Case Tool Repository Contains All Information About the System
![Page 48: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/48.jpg)
48Object-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
![Page 49: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/49.jpg)
49Object-Oriented Analysis and Design with the Unified Process
Figure 2-26Visual Modeling Tool Rational Rose Displaying UML Diagrams
![Page 50: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/50.jpg)
50Object-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
![Page 51: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/51.jpg)
51Object-Oriented Analysis and Design with the Unified Process
Figure 2-29Rational XDE Professional is integrated with Visual Studio .NET
![Page 52: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/52.jpg)
52Object-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
![Page 53: Objectives](https://reader036.vdocuments.site/reader036/viewer/2022062409/568147ad550346895db4eac7/html5/thumbnails/53.jpg)
53Object-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
UP is object-oriented
Object-oriented concepts: object, class, methods, encapsulation, associations, inheritance, polymorphism
CASE: automation tools simplify development tasks