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

software_process

The document provides an overview of the software process, detailing activities such as specification, design, validation, and evolution. It discusses various software process models including the Waterfall Model, Incremental Development, and Reuse-Oriented Engineering, along with their characteristics and applications. Additionally, it covers coping strategies for change, Boehm's Spiral Model, and the Rational Unified Process (RUP) as modern approaches to software development.

Uploaded by

dha.abdulaziz
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

software_process

The document provides an overview of the software process, detailing activities such as specification, design, validation, and evolution. It discusses various software process models including the Waterfall Model, Incremental Development, and Reuse-Oriented Engineering, along with their characteristics and applications. Additionally, it covers coping strategies for change, Boehm's Spiral Model, and the Rational Unified Process (RUP) as modern approaches to software development.

Uploaded by

dha.abdulaziz
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Software Process Overview

1. SOFTWARE PROCESS:
A structured set of activities required to develop a software system, including:
- Specification: Defining what the system should do.
- Design and Implementation: Creating the system structure and coding.
- Validation: Ensuring the system meets customer requirements.
- Evolution: Adapting the system to changing needs.

2. SOFTWARE PROCESS MODELS:


Abstract representations of processes, including:
- Waterfall Model: Sequential phases (requirements, design, implementation, testing, maintenance).
Best for stable requirements but inflexible to change.
- Incremental Development: Interleaves specification, development, and validation. Allows for faster
delivery and customer feedback but can lead to degraded system structure over time.
- Reuse-Oriented Engineering: Builds systems from existing components or COTS
(Commercial-off-the-shelf) systems. Common in business systems.

PROCESS ACTIVITIES:
1. SOFTWARE SPECIFICATION:
- Feasibility Study: Determines if the system is technically and financially viable.
- Requirements Elicitation and Analysis: Gathers stakeholder needs.
- Requirements Specification: Defines requirements in detail.
- Requirements Validation: Ensures requirements are valid.

2. SOFTWARE DESIGN AND IMPLEMENTATION:


- Architectural Design: Defines the overall system structure.
- Interface Design: Specifies interactions between components.
- Component Design: Details how each component operates.
- Database Design: Structures system data.

3. SOFTWARE VALIDATION:
- Verification and Validation (V&V): Ensures the system meets specifications and user needs.
- Testing Stages:
- Component Testing: Tests individual components.
- System Testing: Tests the system as a whole.
- Acceptance Testing: Validates the system with customer data.

4. SOFTWARE EVOLUTION:
- Software must evolve to meet changing business needs. The distinction between development and
maintenance is becoming less relevant as most systems are not entirely new.

COPING WITH CHANGE:


1. Change Avoidance: Anticipates changes early (e.g., through prototyping).
2. Change Tolerance: Designs processes to accommodate changes at low cost (e.g., incremental
development).
3. Software Prototyping:
- Used for requirements elicitation, design exploration, and testing.
- Throw-away Prototypes: Discarded after development as they are not suitable for production.
4. Incremental Delivery:
- Delivers functionality in increments, allowing for early user feedback and reduced risk of project
failure.
- Challenges include identifying common facilities needed by all increments and aligning with
organizational procurement models.

BOEHM'S SPIRAL MODEL:


1. Iterative and Risk-Driven:
- Each loop in the spiral represents a phase, with explicit risk assessment and resolution.
- Phases include Objective Setting, Risk Assessment, Development and Validation, and Planning.
- Influential but rarely used in its pure form.

RATIONAL UNIFIED PROCESS (RUP):


1. Modern Generic Process: Combines aspects of waterfall, incremental, and reuse-oriented
models.
2. Phases:
- Inception: Establishes the business case.
- Elaboration: Develops problem understanding and system architecture.
- Construction: System design, programming, and testing.
- Transition: Deployment in the operating environment.
3. Iterative: Both within phases and across phases.

You might also like