0% found this document useful (0 votes)
40 views19 pages

Software Engineering Slide nr.2

The document discusses software processes and models. It defines software as programs along with needed documents and data to build software. A software process involves activities that produce software. Common software processes include specification, development, validation, and evolution. Popular process models discussed are the waterfall model, spiral model, and unified process. The waterfall model has separate sequential phases but is inflexible. The spiral model is risk-driven and iterative. The unified process is iterative, uses UML, and has phases of inception, elaboration, construction, and transition.

Uploaded by

Ahmad Suliman
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
40 views19 pages

Software Engineering Slide nr.2

The document discusses software processes and models. It defines software as programs along with needed documents and data to build software. A software process involves activities that produce software. Common software processes include specification, development, validation, and evolution. Popular process models discussed are the waterfall model, spiral model, and unified process. The waterfall model has separate sequential phases but is inflexible. The spiral model is risk-driven and iterative. The unified process is iterative, uses UML, and has phases of inception, elaboration, construction, and transition.

Uploaded by

Ahmad Suliman
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 19

Software Processes

Software Engineering Slide nr.2

Chapter 2 Software Processes

What is Software? Software is not just the program but also the needed documents and data to build software.

What is a Software Process? A Software Process are activities and their results that produce software.

What is a System?
A system for a university library should be designed. Readers are persons who have a clear reader number. Employees are persons who are identified with their SSNR (Social Security Number). From ever person in this system their first name, family name and address are stored. Readers are not equal to the employees. The employees add new readers to the system. Readers can search after books and magazines and borrow them. From every magazine a clear number (ISSN), date and publisher is saved. Books have its clear number (ISBN), a title and an author which are saved into the system. The employees add books and magazines into the system. Both employees and readers can search after books and magazines

Chapter 2 Software Processes

The four Software Processes Software Specification: Customer and Designer define the product Software Development: The Software is designed and implemented.

Software Validation: The Software is checked if correct.


Software Evolution: Software is modified to adapt changing. (changing market)

Software Process Models Software Life Cycle: has 6 stages Software requirement: define what the software should do.

Analyze: to analyze and plan the software.


Design: to design the software (User Interface) Implementation: to implement the program Test: to test the implementation (if there are errors) Execute: to put the software to run on the end user.

The waterfall model

Chapter 2 Software Processes

Waterfall model phases There are separate identified phases in the waterfall model:
Requirements analysis and definition System and software design Implementation and unit testing Integration and system testing Operation and maintenance

The main drawback of the waterfall model is the difficulty of accommodating change after the process is underway. In principle, a phase has to be complete before moving onto the next phase.
Chapter 2 Software Processes 8

Waterfall model problems Inflexible partitioning of the project into distinct stages makes it difficult to respond to changing customer requirements.
Therefore, this model is only appropriate when the requirements are well-understood and changes will be fairly limited during the design process. Few business systems have stable requirements.

The waterfall model is mostly used for large systems engineering projects where a system is developed at several sites.
In those circumstances, the plan-driven nature of the waterfall model helps coordinate the work.
Chapter 2 Software Processes 9

5. Software evolution Software is inherently flexible and can change.

As requirements change through changing business circumstances, the software that supports the business must also evolve and change. Although there has been a demarcation between development and evolution (maintenance) this is increasingly irrelevant as fewer and fewer systems are completely new.

Chapter 2 Software Processes

10

Boehms spiral model of the software process

Chapter 2 Software Processes

11

Spiral model usage Spiral model has been very influential in helping people think about iteration in software processes and introducing the risk-driven approach to development. In practice, however, the model is rarely used as published for practical software development.

Chapter 2 Software Processes

12

The Unified Process A modern generic process derived from the work on the UML and associated process. Brings together aspects of the 3 generic process models discussed previously.

Normally described from 3 perspectives


A dynamic perspective that shows phases over time; A static perspective that shows process activities; A practive perspective that suggests good practice.

Chapter 2 Software Processes

13

The Unified Process


The Unified Process is iterative. Each stage can be done more than one time.

In the Unified Process there are five stages:


Requirement Analyze Design Implement Test

The Unified Process The Unified Process has a dynamic perspective which shows the model over time. There are four phases:

Inception
Elaboration Construction Transition

The Unified Process

The Unified Process Easier to adapt if customer changes requirement.

Is faster because the Unified Process works parallel.


The Unified Process is Use Case driven.

Unified Process good practice Visually model software


Use graphical UML models to present static and dynamic views of the software.

Verify software quality


Ensure that the software meets organizational quality standards.

Control changes to software


Manage software changes using a change management system and configuration management tools.

Chapter 2 Software Processes

18

Chapter 2 Software Processes

19

You might also like