Categories: All - development - requirements - design - testing

by Hend Khalid 14 years ago

396

Software Processes

Developing a software system involves a series of structured activities including validation, evolution, specification, design, and development. Various generic models exist to guide these processes.

Software Processes

each phase contains one or more iterations during each iteration activited from several displines are performed

Software Processes

agile programming

examples
Scrum
XP (extreme programming)

overcomes some SW problems

false feature rich

bisiness misunderstood

high defect rate

major bugs

project cancellation

schedule problems

principles

integrate and test several times a day

refine the architecture all the time

use simplest pissible design that works

everybody tests all the time

pair programming

improve code with refactoring

lifecycle and behavior is defined in test cases

freq. release cycles

iterative light processes

the rational unified process

disciplines
supporting disciplines

project management

config and change management

environment

deployment
test
analysis and design
requirments
business modeling
transition
construction
elaboration
inception
concepts
disciplines (the when)
activities (the how)
roles (the who)
artifacts (the what)
6 basic practices
control changes
continuously verfy quality
model visually
use components
manage requirements
develop iteratively

generic SWP models

component-based SWE
process stages

development and integration

system design with reuse

requirement modifiction

components analysis

based on systematic reuse (systems are integrated from existing components ot COTS
iterative development
risk

customer tells you a part of the story then the next part'll demolish everything

advantages

The highest priority system services tend to receive the most testing

Early increments act as a prototype to help elicit requirements for later increments

Customer may be able to deploy early versions of the software

repeat until the final version is reached

iteratively take a new set of requirements

refine design & develop new functionality elements

start with a simple imple. of a subset of the requirements

may be functional requi. classification

requirement may be prioritised & the highest priority requ. are included in early deliveries

evolutionary development
outline description

sevelopment

new and updated require. lead to new versions of the SW
requirements have to be refined during the development
waterfall
problems

used for large systems eng. projects (system developed at several sites)

appropriate when requirments are well-understood

once phase complete accommodating changes if defficult

phases

maintenance

verfiction

implementation

requirements

a structured set of activites required to develop a SW system

evolution
validation
development
design
specification