Вы находитесь на странице: 1из 22

SOFTWARE QUALITY ASSURANCE,

PROJECT PLANS
&
PROJECT MATRIX
SOFTWARE
QUALITY
ASSURANCE
Basic concepts

 Software quality assurance (SQA)


 consists of a means of monitoring the
software engineering processes and
methods used to ensure quality.
 It does this by means of audits of the
quality management system under
which the software system is
created.
 These audits are backed by one or
more standards, usually ISO 9000 or
Capability Maturity Model
Integration ( CMMI).
 It is practically impossible to iron
out every single bug before
releasing it both from a difficulty
QA and Testing
 Quality Assurance  measures the quality of
processes used to create a quality product
 A set of activities designed to ensure that the
development and/or maintenance process is
adequate to ensure a system will meet its objectives.
 QA activities ensure that the process is defined and
appropriate.
 Methodology and standards development are examples
of QA activities.
 A QA review would focus on the process elements of a
project
 Testing  quality control
 The process of executing a system with the intent of
finding defects.
 includes test planning prior to the execution of the test
cases.
 Testing is one example of a QC activity, but there are
others such as inspections.
IEEE 829
 829 Standard for Software Test
Documentation
 a set of documents for use in eight
defined stages of software testing,
each stage potentially producing
its own separate type of document
 Test Plan: a management planning
document
 Test Design Specification
 Test Case Specification
 Test Procedure Specification
 Test Item Transmittal Report
 Test Log
 Test Incident Report
 Test Summary Report
SQA Jobs
 SQA includes:
 Reviewing requirements
documents
 Software testing
 SQA encompasses the entire
software development
process
 Software design
 Coding
 Source code control
 Code reviews
 Change management
 Configuration management
Advantages of SQA

 Improved customer
satisfaction 
 Reduced cost of development
 Reduced cost of maintenance

PROJECT PLANS
Project Planning

 Planning is the systematic


arrangement of tasks to achieve
the objective. In the context of
a project, it involves:
 Defining the Project Objectives
 Developing a work breakdown structure

Project Objective

 The 1 st step in Project Planning.


 The objective must be clear, attainable,
specific, and measurable.
 The objective is usually defined in terms of
scope, schedule and cost.

Work Breakdown
Structure (WBS)
 The 2 nd step is to determine what
activities need to be performed.
 A list of all the activities must be
developed.
 The WBS is a hierarchical tree of end
items to be accomplished.
 A work item is one small piece of the
project.
 A work package is the lowest-level
item.


Why to Plan?

 Better predictability leading to


commitments that can be met.
 Lower cost through reduced rework,
better resource mgmt, better
planning,..
 Improved quality through proper
quality planning and control
 Better control through change
control, CM, monitoring etc.
Why to Plan?

 Better visibility into project health


and state leading to timely
intervention
 Better handling of risks reducing
the chances of failure
 All this leads to higher customer
satisfaction
 And self and organization
improvement

Precedence
Ordering
Essential Activities

 Estimation:

Cost
Duration
Effort
 Scheduling
 Staffing
 Risk Management
 Miscellaneous Plans

PROJECT METRICS
Project Metrics

 Software project metrics are


used by the software team to
adapt project workflow and
technical activities.
 Project metrics are used to
avoid development schedule
delays, to mitigate potential
risks, and to assess product
quality on an on-going basis.
 Every project should measure
its inputs (resources),
outputs (deliverables), and
results (effectiveness of
deliverables).
Project Metrics
 Project metrics enable a software project
manager to
 Assess the status of an ongoing project
 Track potential risks
 Uncover problem areas before their status
becomes critical
 Adjust work flow or tasks
 Evaluate the project team’s ability to
control quality of software work products
 Many of the same metrics are used in both
the process and project domain
 Project metrics are used for making tactical
decisions

Reasons to
Measure
 To characterize in order to
 Gain an understanding of processes,
products, resources, and environments
 Establish baselines for comparisons with
future assessments
 To evaluate in order to
 Determine status with respect to plans
 To predict in order to
 Gain understanding of relationships among
processes and products
 Build models of these relationships
 To improve in order to
 Identify roadblocks, root causes,
inefficiencies, and other opportunities
for improving product quality and
process performance
Use of Project
Metrics
 The first application of project metrics
occurs during estimation
 Metrics from past projects are used as a
basis for estimating time and effort
 As a project proceeds, the amount of time
and effort expended are compared to
original estimates
 As technical work commences, other
project metrics become important
 Production rates are measured
(represented in terms of models
created, review hours, function points,
and delivered source lines of code)
 Error uncovered during each generic
framework activity (i.e, communication,
planning, modeling, construction,
Use of Project
Metrics
 Project metrics are used to
 Minimize the development schedule by
making the adjustments necessary to
avoid delays and mitigate potential
problems and risks
 Assess product quality on an ongoing
basis and, when necessary, to modify
the technical approach to improve
quality
 In summary
 As quality improves, defects are
minimized
 As defects go down, the amount of
rework required during the project is
also reduced
THANK YOU

Вам также может понравиться