0% found this document useful (0 votes)
4 views

Lect 2 ProcessModels

The document outlines the software development process, emphasizing the distinction between processes and products, and the importance of proper processes for achieving project objectives. It describes various software process models, including linear, iterative, and parallel flows, and highlights key activities such as communication, planning, modeling, construction, and deployment. Additionally, it discusses process assessment and improvement methods, as well as the roles of engineering and project management in software development.

Uploaded by

drtriptysingh77
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Lect 2 ProcessModels

The document outlines the software development process, emphasizing the distinction between processes and products, and the importance of proper processes for achieving project objectives. It describes various software process models, including linear, iterative, and parallel flows, and highlights key activities such as communication, planning, modeling, construction, and deployment. Additionally, it discusses process assessment and improvement methods, as well as the roles of engineering and project management in software development.

Uploaded by

drtriptysingh77
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 17

Dr Tripty Singh

Software Process 1
Software Dev Process
Process is distinct from product
products are outcomes of executing a process
on a project

SW Eng. focuses on process

Premise: Proper processes will help achieve


project objectives of high QP

Software Process 2
Software Process…
Process: A particular method, generally
involving a number of steps
Software Process: A set of steps, along
with ordering constraints on execution, to
produce software with desired outcome

Many types of activities performed by diff


people
Software process is comprising of many
component processes

Software Process 3
Generic Process Model in Software Engineering
 Software Process:
 It is a set of activities, methods, practices, and transformations
that people use to develop and maintain software and the
associated products. As a Software Organization, the software
process becomes better defined and more consistently
implemented throughout the organization.
 Example: Project plans, Design-Documents, Code, Test cases,
and User-manualsThe Generic process model is an abstraction of
the software development process. It specifies the stages and
order of a process. Generic Process Model will define the
following
 The tasks to be performed.
 The input and output of each task.
 The pre and post conditions for each task.
 The flow and sequence of each task.

Software Process 4
Software Process 5
Software Process 6
 Generic Process Framework Activities: It establishes the foundation for
a complete software process by identifying a small number of framework
activities. It also includes a set of umbrella activities that are applicable
across the entire software process. Each framework activity is populated
by a set of software engineering actions. A Generic Process Framework for
Software Engineering encompasses five activities.
 Generic Process Model in Software Engineering
 1. Communication: This framework activity involves heavy communication
and collaboration with the customer. It encompasses requirements
gathering and other related activities.
 2. Planning: This activity establishes a plan for the software engineering
work that follows. It describes the technical tasks which are conduct. The
resource requires and the work products are producing with a work
schedule.
 3. Modeling: It encompasses the creation of models that allow the
developer and the customer. It is easy to better understand Software
requirements and the design that will achieve those requirements.
 4. Construction: This activity combines code generation and the testing
that is required to uncover errors in the code.
 5. Deployment: The software delivered to the customer who evaluates the
delivered product. ItSoftware Process
also provides feedback based on the evaluation. 7
Linear model
 The linear model of software development is based on
the premise that software is best developed (or can
only be developed) by working through a series of
discrete steps in a specific sequence. The steps are
usually defined as the following, or as a variation on the
following:
1. System requirements
2. Software requirements
3. Analysis
4. Program design
5. Coding
6. Testing
7. Operations
Software Process 8
Linear Process Flow

 The linear model is sometimes called the System Development Life


Cycle (SDLC), or other words that can “spell” SDLC. Some people
refer to it disparagingly as the “waterfall” model.
 The fundamental assumption is that software can and should be
developed by taking the work serially through a sequence of steps
such as those listed.
 Ideally, a single pass through the steps will yield a good outcome.

Software Process 9
Iterative Process Flow

An iterative model assumes that a single pass


through the canonical development steps will
not result in a good outcome because it is
infeasible to know everything about the
solution in advance, and because unexpected
events and new learning will inevitably occur
despite the most careful up-front planning.
Software Process 10
Parallel Process Flow

 A parallel process (or flow) is a collection of other process


activities that are all nested within a parallel activity.
The nested activities run sequentially in an order that is
dictated by links and transition conditions (when no links are
present, all activities will be executed concurrently).

Software Process 11
Identifying a Task Set
A task set defines the actual work to be done to accomplish
the objectives of a software engineering action.
A list of the task to be accomplished
A list of the work products to be produced
A list of the quality assurance filters to be applied

Software Process 12
Process Assessment and Improvement
 Standard CMMI Assessment Method for Process Improvement-(SCAMPI)—
provides a five step process assessment model that incorporates five phases:
initiating, diagnosing, establishing, acting and learning.
 CMM-Based Appraisal for Internal Process Improvement (CBAIPI)—
provides a diagnostic technique for assessing the relative maturity of a software
organization; uses the SEI CMM as the basis for the assessment [Dun01]
 SPICE—The SPICE (ISO/IEC15504) standard defines a set of requirements for
software process assessment. The intent of the standard is to assist
organizations in developing an objective evaluation of the efficacy of any defined
software process. [ISO08]
 ISO 9001:2000 for Software—a generic standard that applies to any
organization that wants to improve the overall quality of the products, systems, or
services that it provides. Therefore, the standard is directly applicable to software
organizations and companies.

Software Process 13
Prescriptive Models
 Prescriptive Models
 Prescriptive process models advocate an orderly approach to software
engineering
 That leads to a few questions …
 If prescriptive process models strive for structure and order, are they
inappropriate for a software world that thrives on change?
 Yet, if we reject traditional process models (and the order they imply) and
replace them with something less structured, do we make it impossible to
achieve coordination and coherence in software work?

Software Process 14
Key Processes

Software Process 15
Software Dev Processes
Two major processes
Engineering– “development and quality steps
needed to engineer the software”
Project management – “planning and
controlling the development process”

Key Roles
Developers execute Engineering process
 Software architects, lead developers, ...

Project manager(s) executes the mgmt process

Software Process 16
Other Processes…
Other processes
Configuration management: manages the
evolution of artifacts
Change management: how changes are
incorporated
Inspection process: how inspections are
conducted on artifacts
Process Improvement Process:

Software Process 17

You might also like