Software-Processes (1).pdf - Software Processes Four activities fundamental to software engineering a coherent set of activities for software production

Software-Processes (1).pdf - Software Processes Four...

This preview shows page 1 - 15 out of 57 pages.

Software Processes
Image of page 1
Four activities fundamental to software engineering: a coherent set of activities for software production, which leads to production/creation of a software product Four activities fundamental to software engineering: 1. Software Specification 2. Software Design and Implementation 3. Software Validation 4. Software Evolution
Image of page 2
1. Software specification - The functionality of the software and constraints on its operation must be defined. 2. Software design and implementation - The software to meet the specification must be produced. 3. Software validation - The software must be validated to ensure that it does what the customer wants. 4. Software evolution - The software must evolve to meet changing customer needs. Software process
Image of page 3
Process Description 1. Products - the outcomes of a process activity 2. Roles - reflect the responsibilities of the people involved in the process 3. Pre- and post-conditions - statements that are true before and after a process activity has been enacted or a product produced
Image of page 4
Software Process Models
Image of page 5
Software Process Models Simplified representation of software process Each process model represents a process from a particular perspective, and thus provides only partial information about that process Framework of the process but not the details of specific activities Abstractions of the process that can be used to explain different approaches to software development
Image of page 6
3 Major Software Process Models 1. The waterfall model 2. Incremental development 3. Reuse-oriented software engineering
Image of page 7
The Waterfall Model takes the fundamental process activities of specification, development, validation, and evolution Represents them as separate process phases such as requirements specification, software design, implementation, testing, and so on It is an example of a plan-driven process in principle --- you must plan and schedule all of the process activities before starting work on them.
Image of page 8
The Waterfall Model
Image of page 9
Principal stages of waterfall model: Requirements analysis and definition System and software design Implementation and unit testing Integration and system testing Operation and maintenance
Image of page 10
Incremental development This approach interleaves the activities of specification, development, and validation It is based on the idea of developing an initial implementation, exposing this to user comment and evolving it through several versions until an adequate system has been developed
Image of page 11
Incremental development By developing the software incrementally, it is cheaper and easier to make changes in the software as it is being developed In a plan-driven approach, the system increments are identified in advance; if an agile approach is adopted, the early increments are identified but the development of later increments depends on progress and customer priorities
Image of page 12
Incremental development
Image of page 13
Benefits of Incremental development The cost of accommodating changing customer requirements is reduced.
Image of page 14
Image of page 15

You've reached the end of your free preview.

Want to read all 57 pages?

  • Fall '20

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture