Unified process- Object oriented system design, Exams of Systems Design

object oriented system design technique

Typology: Exams

2017/2018

Uploaded on 11/18/2018

nipun-aggarwal
nipun-aggarwal 🇮🇳

1 document

1 / 15

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Ch 3: Unified Process
CSCI 4320: Software Engineering
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Partial preview of the text

Download Unified process- Object oriented system design and more Exams Systems Design in PDF only on Docsity!

Ch 3: Unified Process

CSCI 4320: Software Engineering

Unified Process

  • (^) Adaptable methodology for Object-

Oriented Software production

  • (^) Iterative and Incremental
  • (^) UML diagrams
    • (^) Unified Modeling Language (UML)
    • (^) Redrawn as more knowledge about system is gained (more accurate, extended)

Iteration and Incrementation

The basic software development process is

Iterative

  • (^) Each successive version is intended to be closer to its target than its predecessor

An Incremental Process

  • (^) Miller’s Law : concentrate on ~ 7 chunks
  • (^) Use stepwise refinement
  • (^) handle in order of current importance

Waterfall vs. Unified Process

Waterfall

  • (^) One dimensional
  • (^) Each phase must be completed before you begin the next phase. Unified Process
  • (^) Incremental and Iterative
  • (^) Two dimensional
  • (^) Task is divided into increments (phases)
  • (^) Within each increment the developers have to iterate (workflows) until task is complete
  • (^) Consecutive series of waterfall models

Phases of the Unified Process

  • (^) Inception :
    • (^) Determine whether it is worthwhile to develop product
    • Initial scope and financial details
  • (^) Elaboration:
    • (^) Refine requirements, produce software management plan
  • (^) Construction
    • Produce beta-release, initial user manual
  • (^) Transition
    • Client feedback, correct faults, complete manuals

Workflows in the Unified Process

  • (^) Different workflows (activities) are

performed over the entire life cycle

  • (^) However, there are times when one

workflow may be dominant

  • (^) Core Workflows
    • (^) Requirements
    • (^) Analysis
    • (^) Design
    • (^) Implementation
    • (^) Test

Analysis Workflow

  • (^) Analyze and refine requirements for detailed understanding
  • (^) Written in language of developer – more precise.
  • (^) Specifications produced are essential for testing and maintenance
  • (^) OO Architectural Design: UML diagrams and descriptions are given to client for confirmation (Use Cases and Class Diagrams)
  • (^) Detailed planning and estimating: Software Project Management Plan with deliverables, milestones and budget GOAL: Spell out what the project is to do

Design Workflow

  • (^) Refine analysis artifacts until it is a form that

can be implemented by programmers

  • (^) OO Detailed Design: For each class select

algorithms and data structures

  • (^) Have a written record of why specific

decisions were made

  • (^) Design to allow for future enhancements GOAL: Show how the product will complete specifications

Test Workflow

  • (^) Carried out in parallel with all other workflows
  • (^) Artifacts should be properly numbered, cross- referenced and index for traceability  (^) Requirements:
    • (^) SQA group review requirements  (^) Analysis:
    • (^) Representatives of SQA, analysis team and clients walkthrough and inspect artifacts
    • (^) Obtain additional independent estimates of cost and duration GOAL: Find Faults Early!

Test Workflow (cont)

 (^) Design

  • (^) Client is not usually present
  • (^) Look for logic faults, interface faults, error handling, conformance to specifications
  • (^) Every aspect of design is linked with an analysis artifact  (^) Implementation
  • (^) Desk check each component as you code
  • (^) Code review – programmer guides members through listing
  • (^) SQA performs unit, integration and product ( comparison against specifications ) testing
  • (^) Client performs acceptance testing GOAL: Find Faults Early!