Procuring digital preservation CAN be quick and painless with our new dynamic...
SQMS Software Quality Management Standards Class Presentation
1. Software Quality
Management Standards
(SQMS)
MCN 8108 Software Quality Assurance& Testing
Class Presentations. Nov 05 . 2011
ALOYSIUSOCHOLA
2010/HD18/431U, oaloxde@yahoo.co.uk
MAKERERE UNIVERSITY
Faculty of Computing and InformaticsTechnology
2. Software Quality
Quality
• Generally an excellence of standard or level
Software Quality
• When its bug free, delivered on time and within budget,
meets requirements, expectations and is maintainable.
Some Problems Affecting SQ
• Tension between quality attributes
• Customer vs Developer points of view
• Requirements and associated problems
• ambiguity
• Incompleteness
• Changes during development, etc
4. Software Quality Assurance
Monitors and tries to improve the development process from the
beginning of the project to ensure Quality.
Also ensures that the Software project is based on previously agreed
specifications, standards and functionality and does not defects and
possible problems.
Encompasses the entire software development process
• Requirements definition
• Software Architecture (design and coding process)
• Implementation and Testing
• Documentation
• Training and Support
• Maintenance
Incorporated knowledge base of best practices
Offtheshelf software tools selected to be used during the process
6. Software Quality Control
Ensures inprocess that both SQA and SQP are being
followed by the development teams
SQC activities include
• Mentoring how to produce artifacts, Ex well-defined
engineering documents using standard templates
• Mentoring how to conduct standard processes, such as
quality reviews
• Perform in-process quality reviews to verify, evaluate
and confirm artifacts
• Verify and evaluate to improve the use of methods,
procedures and adopted software tools
7. A standard can be defined as a degree or level
of required excellence or attainment.
In SE context: it can be defined by the clients
and developers or both, in terms of mutual
agreement on the protocols to be followed, Ex.
• Clients with his requirements
• Developer and the development tools
Institutions have also defined several standards
to guide software quality.
The SQM Standards What is?
8. Some Standards Organisations
ANSI: American National Standards Institute. Does not itself make
standards but approves them.
AIAA: American Institute of Aeronautics and Astronautics (Ex. AIAA R
0131992 Recommended Practice for Software Reliability)
EIA: Electronic Industries Association (Ex. EIA/IS632 Systems
Engineering)
IEC: International Electrotechnical Commission (Ex. IEC 61508
Functional Safety SafetyRelated Systems)
IEEE: Institute of Electrical and Electronics Engineers Computer
Society Software Engineering Standards Committee (Ex. IEEE Std
12281994 Standard for Software Safety Plans)
ISO: International Organization for Standardization (Ex. ISO/IEC
23827:1989 VocabularyPart 7: Computer Programming)
9. Prevents idiosyncrasy Ex. Standards for primitives in
programming languages
Customer protection Ex. Quality assurance standards
Encapsulation of best practice avoids repetition of past
mistakes, Ex. Repeating inspection processes, which in turn
is very complex.
They are a framework for quality assurance processes they
involve checking compliance to standards.
They provide continuity new staff can understand the
organisation by understanding the standards that are used.
Why Standards
10. Quality Assurance Standard
Differing views of quality standards:
• Taking a systems view
• that good management systems yield high quality
• And taking an analytical view
• that good measurement frameworks yield high quality
Ex. Quality management: ISO 90003 Quality
Management and Quality Assurance Standards
• Part 3: Guidelines for the application of 9001 to the
development, supply, installation and maintenance
of computer software
Ex. Quality measurement: IEEE Std 10611992
Standard for Software Quality Metrics Methodology
11. Project Management Standards
Concerned with how general principles of
good management are applied to specific
areas of software engineering
Examples of Standards under this.
• General project management: IEE Std
1058.1-1987 Standard for Software
Project Management Plans
• Producing plans: IEEE Std 1059-1993
Guide for Software Verification and
Validation Plans
12. System Engineering Standard
Particular application domains develop
sophisticated interactions between system and
software engineering, so standardizing from a
systems point of view can be beneficial.
Standards Examples:
• Lifecycle: ISO/IEC WD 15288 System Life
Cycle Processes
• Requirements: IEEE Std 1233-1996 Guide
for Developing System Requirements
Specifications
13. Safety Standards
These traditionally come out of specific
industrial sectors since safety requires deep
analysis of the domain and the technology
Examples of such standards include
• Safety plans: IEEE Std 1228-1994
Standard for Software Safety Plans
• Functional safety: IEC 61508 Functional
Safety-Safety-Related Systems
• Nuclear domain: IEE 603 Criteria for
Safety Systems of Nuclear Plants
14. Product Standards
Focus on the products of software
engineering, rather than on the processes
used to obtain them.
product standards seem difficult to obtain.
Ex.
• Product evaluation: ISO/IEC 14598
Software product evaluation
• Packaging: ISO/IEC 12119:1994
Software Packages - Quality Requirements
and Testing
16. References
Chemuturi, Murali (2010). Software Quality Assurance: Best
Practices, Tools and Techniques for Software Developers
Ian Sommerville (2004), Software Engineering, 7th edition
Select Business Solutions, retrieved Oct 2011 from
http://www.selectbs.com/analysisanddesign/whatisasoftwaredevelopmentprocess
NASASTD8739.8 w/Change 1, (July 28, 2004) Software
Assurance Standard (NASA Technical Standard)
TC 176/SC (2005). ISO 9000:2005, Quality Management
Systems Fundamentals and vocabulary
James A. Bednar, D. Robertson (2005), Software Quality and
Standards