0% found this document useful (0 votes)
19 views17 pages

Software Process

The document discusses the key concepts and terminology related to software processes. It defines what a software process is, which is a structured set of activities required to develop software. It then explains some fundamental elements of software processes including specification, design and implementation, validation, and evolution. Finally, it provides definitions and explanations of common software process terminology like process, roles, activities, products, and principles.

Uploaded by

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

Software Process

The document discusses the key concepts and terminology related to software processes. It defines what a software process is, which is a structured set of activities required to develop software. It then explains some fundamental elements of software processes including specification, design and implementation, validation, and evolution. Finally, it provides definitions and explanations of common software process terminology like process, roles, activities, products, and principles.

Uploaded by

ammarsaeeduol
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

linkedin.

com/in/subhan-ihsan/

Software Process

Subhan
Subhan

A structured set of activities


required to develop a
software system.

The Software Process

[Link]/in/subhan-ihsan/
Subhan

The functionality of the software and


constraints on its operation must be
defined.

Specification

[Link]/in/subhan-ihsan/
Subhan

The software to meet the


specification must be produced

Design &
Implementation

[Link]/in/subhan-ihsan/
Subhan

checking that it does what the


customer wants

Validation

[Link]/in/subhan-ihsan/
Subhan

changing the system in response to


changing customer needs

Evolution

[Link]/in/subhan-ihsan/
Subhan

Example of processes
Creation of a product (e.g., coding of
system component no. 15 in project Alpha
at company ACSoft)
Testing of a system
Measurement of a code module
Planning of a project
Requirements Management for a product
Software process descriptions
Process descriptions encapsulate knowledge
and allow it to be reused
Process descriptions should include:
What activities are carried out
Products, which are the outcomes of a
process activity; e.g. model of software
architecture
Software process descriptions
Roles, which reflect the responsibilities of the people
involved in the process;
Pre- and post-conditions, which are statements that are
true before and after a process activity has been enacted
or a product produced.
Pre condition for architecture design- All requirements
has been approved before design phase begins
Post condition- UML models describing the architecture
has been reviewed
Product, Activity and Role
Process, Phase, Activity and Task

[Link]/in/subhan-ihsan/
Characteristics of software processes
They are enacted in the real world
They usually transform one or more input products
into one or more output products
They can be performed by humans (“enactment“) or
machines (“execution“) or both together
They can be refined by subprocesses, each of which
can also be refined
Software Process related terminology
Process:
A set of partially ordered steps intended to reach a goal.
Process description:
While a process is a vehicle for doing a job, a process
description is a specification of how the job is to be done.
Atomic process (synonym: process step)
is a process that does not allow further structuring in the
form of subprocesses.
Software Process related terminology
Process enactment:
is the performance of process steps undertaken to reach a
given goal. The process performer (i.e., “agent”) can be a
human or a machine. In case of a machine, the term
“process execution” is usually used.
A process schema (synonym: process metamodel, process
architecture)
A process schema describes process building blocks and
their relationships
Software Process related terminology
A process agent (synonym: process performer)
is a person or machine that enacts/executes the process in
order to reach the process goal(s). Humans interpret
process scripts, machines interpret process programs.

A process owner
is a human or organizational entity that sets the goals of a
process and is responsible for their achievement.
Software Process related terminology
A process engineer
is a person who pursues one or several goals of process
modeling (e.g., defining, extending, maintaining,
improving process models).

A principle
is a policy or mode of action that describes important
characteristics of a process model.
Examples of Principles are
Active user involvement is imperative
Frequent inspection
Timeboxed iterations
Develop small incremental releases and iterate
Frequent delivery of product
Continuous integration
Common coding guidelines
Daily meeting

You might also like