Chapter 2 Process: A Generic View - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Chapter 2 Process: A Generic View

Description:

... degree of rigor) for each activity will vary based on: the type of project ... These automated models can be used to determine workflow and examine alternative ... – PowerPoint PPT presentation

Number of Views:92
Avg rating:3.0/5.0
Slides: 21
Provided by: roger286
Category:

less

Transcript and Presenter's Notes

Title: Chapter 2 Process: A Generic View


1
Chapter 2Process A Generic View
2
Overview
  • The roadmap to building high quality software
    products is software process.
  • Software processes are adapted to meet the needs
    of software engineers and managers as they
    undertake the development of a software product.
  • A software process provides a framework for
    managing activities that can very easily get out
    of control.
  • Different types of projects require different
    software processes.
  • The software engineer's work products (programs,
    documentation, data) are produced as a
    consequence of the activities defined by the
    software process.
  • The best indicators of how well a software
    process has worked are the quality, timeliness,
    and long-term viability of the resulting software
    product.

3
Software Engineering
  • Software engineering is the establishment and
    sound engineering principles applied to obtain
    reliable and efficient software in an economical
    manner.
  • Software engineering is the application of a
    systematic, disciplined, quantifiable approach to
    the development, operation, and maintenance of
    software.
  • Software engineering encompasses a process,
    management techniques, technical methods, and the
    use of tools.

4
Software Engineering - Goals
  • deliver on time
  • within budget
  • required quality
  • Satisfying the true needs of stakeholders

5
A Layered Technology
Software Engineering
tools
methods
process model
a quality focus
6
A Process Framework
Process framework Framework activities work
tasks work products milestones deliverables QA
checkpoints Umbrella Activities
7
Common Process Framework
  • Communication
  • Customer collaboration
  • Requirement gathering
  • Planning - work plan, technical risks, resource
    requirements, work products produced, and work
    schedule
  • Modeling
  • Analysis of requirements
  • Design
  • Construction
  • Code generation
  • Testing
  • Deployment - software delivered for customer
    evaluation and feedback

8
Software Engineering Umbrella Activities
  • Software project management
  • Tracking and control
  • Formal technical reviews
  • Assess engineering work products to uncover and
    remove errors before they propagate to next
    activity
  • Software quality assurance
  • Maintain software quality
  • Software configuration management
  • Manage effects of change

9
Software Engineering Umbrella Activities
  • Work product preparation and production
  • Create models, documents, logs, forms, lists,
    etc.
  • Reusability management
  • Defines criteria for work product reuse and
    establish mechanisms to achieve component reuse
  • Measurement
  • Define and collect process, project, and product
    measures
  • Risk management
  • Assess risks that may affect project outcomes or
    quality

10
Arranging Framework Activities
  • the framework activities will always be applied
    on every project ... BUT
  • the tasks (and degree of rigor) for each activity
    will vary based on
  • the type of project
  • characteristics of the project
  • common sense judgment concurrence of the project
    team
  • There are few different process models that vary
    in the way that frameworks activities are arranges

11
Process Assessment
  • The process should be assessed to ensure that it
    meets a set of basic process criteria that have
    been shown to be essential for a successful
    software engineering.
  • Many different assessment options are available
  • SCAMPI
  • CBA IPI
  • SPICE
  • ISO 90012000
  • CMM and CMMI involves process assessment and
    process improvement

12
Assessment and Improvement
13
Software Engineering Institute (SEI) Capability
Maturity Model Integration (CMMI)
  • Level 0 Incomplete (process is not performed or
    does not achieve all goals defined for
  • Level 1 Performed (work tasks required to
    produce required work products are being
    conducted)
  • Level 2 Managed (people doing work have access
    to adequate resources to get job done,
    stakeholders are actively involved, work tasks
    and products are monitored, reviewed, and
    evaluated for conformance to process description)

14
CMMI (cont)
  • Level 3 Defined (management and engineering
    processes documented, standardized, and
    integrated into organization-wide software
    process)
  • Level 4 Quantitatively Managed (software process
    and products are quantitatively understood and
    controlled using detailed measures)
  • Level 5 Optimizing (continuous process
    improvement is enabled by quantitative feedback
    from the process and testing innovative ideas)

15
The CMMI
  • The CMMI defines each process area in terms of
    specific goals and the specific practices
    required to achieve these goals.
  • Specific goals establish the characteristics
    that must exist if the activities implied by a
    process area are to be effective.
  • Specific practices refine a goal into a set of
    process-related activities.

16
Personal Software Process (PSP)
  • Recommends five framework activities
  • Planning
  • High-level design
  • High-level design review
  • Development
  • Postmortem
  • stresses the need for each software engineer to
    identify errors early and as important, to
    understand the types of errors

17
Team Software Process (TSP)
  • Objectives
  • Build self-directed teams that plan and track
    their work, establish goals, and own their
    processes and plans
  • Show managers how to coach and motivate their
    teams and maintain peak performance
  • Accelerate software process improvement by making
    CCM Level 5 behavior normal and expected
  • Provide improvement guidance to high-maturity
    organizations
  • Measures are analyzed with the intent of
    improving the team process

18
Team Software Process (TSP)
  • Each project is launched using a script that
    defines the tasks to be accomplished
  • Scripts for Project Activities
  • Project launch
  • Design
  • Implementation
  • Integration and system testing
  • Postmortem

19
Process Technology Tools
  • Used to adapt process models to be used by
    software project team
  • Allow organizations to build automated models of
    common process framework, task sets, and umbrella
    activities
  • These automated models can be used to determine
    workflow and examine alternative process
    structures
  • Tools can be used to allocate, monitor, and even
    control all software engineering tasks defined as
    part of the process model

20
The Primary Goal of Any Software Process High
Quality
Remember High quality project
timeliness Why? Less rework!
Write a Comment
User Comments (0)
About PowerShow.com