Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 20

Software Quality Engineering

CT051-3-3

Software Process Models

Software Engineering

Prepared by: xxx First Prepared on: xx-xx-xx Last Modified on: xx-xx-xx
Quality checked by: xxx
Copyright 2004 Asia Pacific Institute of Information Technology
Topic & Structure of the lesson

• Software Development Life Cycle Model


• Waterfall Model
• Rapid Application Development (RAD)
• Agile SDLC Model
• Rational Unified Process
• Quality Assurance

Module Title? Slide 2 of 10


Learning Outcomes

By the end of this lecture, YOU should be


able to :
• Explain various process models like
SDLC, RAD and RUP
• Evaluation of process models and
the quality assessments of the model

Module Title? Slide 3 of 10


Key Terms you must be able to use

If you have mastered this topic, you should


be able to use the following terms correctly
in your assignments and exams:
• Software Development Life Cycle
• Rapid Application Development (RAD)
• RUP

Module Title? Slide 4 of 10


SDLC Model

A framework that describes the activities


performed at each stage of a software
development project.

Module Title?
Waterfall Model
• Requirements – defines
needed information, function,
behavior, performance and
interfaces.
• Design – data structures,
software architecture, interface
representations, algorithmic
details.
• Implementation – source
code, database, user
documentation, testing.

Module Title?
Rapid Application Model (RAD)

• Requirements planning phase (a workshop


utilizing structured discussion of business
problems)
• User description phase – automated tools
capture information from users
• Construction phase – productivity tools, such as
code generators, screen generators, etc. inside
a time-box. (“Do until done”)
• Cutover phase -- installation of the system, user
acceptance testing and user training

Module Title?
Agile

• Speed up or bypass one or more life cycle


phases
• Usually less formal and reduced scope
• Used for time-critical applications
• Used in organizations that employ
disciplined methods

Module Title?
Some Agile Methods

• Adaptive Software Development (ASD)


• Feature Driven Development (FDD)
• Crystal Clear
• Dynamic Software Development Method
(DSDM)
• Rapid Application Development (RAD)
• Scrum
• Extreme Programming (XP)
• Rational Unify Process (RUP)

Module Title?
Rational Unified Process (RUP)

• RUP is a method of managing OO Software


Development
• It can be viewed as a Software Development Framework
which is extensible and features:
– Iterative Development
– Requirements Management
– Component-Based Architectural Vision
– Visual Modeling of Systems
– Quality Management
– Change Control Management

Module Title? Slide 10 of 10


RUP Features

• Online Repository of Process Information


and Description in HTML format
• Templates for all major artifacts, including:
– RequisitePro templates (requirements tracking)
– Word Templates for Use Cases
– Project Templates for Project Management
• Process Manuals describing key processes

Module Title? Slide 11 of 10


RUP Phases

Inception Elaboration Construction Transition

Core Workflows
Business Modeling
Requirements
Analysis & Design
Implementation
Test & Assessment
Deployment

Supporting Workflows
Change Management
Project Management
Environmental Analysis
Iteration(s)

Module Title? Slide 12 of 10


Satisfies stated and implied requirements

• Absence of system crashes


• Correspondence between the software and the users’
expectations
• Performance to specified requirements

Quality must be controlled because it lowers production


speed, increases maintenance costs and can adversely
affect business

Module Title?
Quality Assurance Plan

• The plan for quality assurance activities


should be in writing
• Decide if a separate group should perform
the quality assurance activities
• Some elements that should be considered
by the plan are: defect tracking, unit
testing, source-code tracking, technical
reviews, integration testing and system
testing.

Module Title?
Quality Assurance Plan

• Defect tracing – keeps track of each defect found, its


source, when it was detected, when it was resolved, how
it was resolved, etc
• Unit testing – each individual module is tested
• Source code tracing – step through source code line by
line
• Technical reviews – completed work is reviewed by
peers
• Integration testing -- exercise new code in combination
with code that already has been integrated
• System testing – execution of the software for the
purpose of finding defects.

Module Title?
Quick Review Question

Question 1

Evaluate the deficiencies that found in


SDLC with suitable examples.

Question 2

Why object oriented approach is


suitable for speed development?

Module Title? Slide 16 of 10


Tutorial 2

1. When to use the Waterfall Model?


2. Evaluate the quality of a system that is
developed using Rapid Application
Development.
3. Why RUP is suitable for new system
development?
4. Evaluate the FIVE (5) differences between
integration testing and system testing.

Module Title? Slide 17 of 10


Summary of Main Teaching Points

1. SDLC
Waterfall model

2. RAD
Agile

3. RUP

4. Quality Assurance

Module Title? Slide 18 of 10


Question and Answer Session

Q&A

Module Title? Slide 19 of 10


Next Session

1. Project Briefing

2. Software Quality Assurance Plan

Module Title? Slide 20 of 10

You might also like