ISA 201 Intermediate Information Systems Acquisition

Slides:



Advertisements
Similar presentations
Low Defect Potentials (< 1 per function point)
Advertisements

CPIS 357 Software Quality & Testing I.Rehab Bahaaddin Ashary Faculty of Computing and Information Technology Information Systems Department Fall 2010.
Overview Lesson 10,11 - Software Quality Assurance
CS 325: Software Engineering March 26, 2015 Software Quality Assurance Software Metrics Defect Injection Software Quality Lifecycle Measuring Progress.
Software Quality Matters Ronan Fitzpatrick School of Computing Dublin Institute of Technology.
Software Quality Assurance For Software Engineering && Architecture and Design.
Chapter : Software Process
Software Quality SEII-Lecture 15
Software Project Management Fifth Edition
UNIT-II Chapter : Software Quality Assurance(SQA)
Software Engineering II Lecture 1 Fakhar Lodhi. Software Engineering - IEEE 1.The application of a systematic, disciplined, quantifiable approach to the.
 The software systems must do what they are supposed to do. “do the right things”  They must perform these specific tasks correctly or satisfactorily.
Software Quality Assurance Activities
Unit 8 Syllabus Quality Management : Quality concepts, Software quality assurance, Software Reviews, Formal technical reviews, Statistical Software quality.
College of Engineering and Computer Science Computer Science Department CSC 131 Computer Software Engineering Fall 2006 Lecture # 1 (Ch. 1, 2, & 3)
OHT 23.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The benefits of use of standards The organizations involved in standards.
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
Chapter 2 Process: A Generic View
Software Quality Assurance SE Software Quality Assurance What is “quality”?
CSI - Introduction General Understanding. What is ITSM and what is its Value? ITSM is a set of specialized organizational capabilities for providing value.
IT Requirements Management Balancing Needs and Expectations.
Software Project Management Lecture # 10. Outline Quality Management (chapter 26)  What is quality?  Meaning of Quality in Various Context  Some quality.
Software process improvement Framework for SPI SPI support groups, maturity and immaturity models Assessment and gap analysis Education and training Selection.
Slide 1V&V 10/2002 Software Quality Assurance Dr. Linda H. Rosenberg Assistant Director For Information Sciences Goddard Space Flight Center, NASA
University of Sunderland CIFM03Lecture 2 1 Quality Management of IT CIFM03 Lecture 2.
Software Quality : The Elusive Target
Georgia Institute of Technology CS 4320 Fall 2003.
University of Palestine software engineering department Testing of Software Systems Testing throughout the software life cycle instructor: Tasneem.
Software Testing and Quality Assurance Software Quality Assurance 1.
Software Engineering - I
Chapter 4 프로세스 모델 Process Models
Process: A Generic View
Chapter 2 Object-Oriented Paradigm Overview. Getting Acquainted with the Class Project Read the requirements specification carefully Make note of any.
1 Chapter 8 Building the Analysis Model (1) Analysis Concepts and Principles.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 15a: Product Metrics for Software Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Software Engineering (CSI 321) Software Process: A Generic View 1.
SE513 Software Quality Assurance Lecture12: Software Reliability and Quality Management Standards.
ISA 201 Intermediate Information Systems Acquisition
by: Er. Manu Bansal Deptt of IT Software Quality Assurance.
Chapter 2 Object-Oriented Paradigm Overview
Dr. Yeffry Handoko Putra, M.T
SQA project process standards IEEE software engineering standards
Software Quality Control and Quality Assurance: Introduction
Software Quality Management
BIL 424 NETWORK ARCHITECTURE AND SERVICE PROVIDING.
ISA 201 Intermediate Information Systems Acquisition
Software Project Management
CS4311 Spring 2011 Process Improvement Dr
Chapter 10 Software Quality Assurance& Test Plan Software Testing
SQA project process standards IEEE software engineering standards
Identify the Risk of Not Doing BA
Quality Exercise 2 Instructions
Lecture 15: Technical Metrics
Software Engineering (CSI 321)
Quality Exercise 2 Instructions
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
Quality Exercise 2 Instructions
UNIT-6 SOFTWARE QUALITY ASSURANCE
A possible solution: Personal Software Process (PSP)
CMMI – Staged Representation
Quality management standards
UNIT-6 SOFTWARE QUALITY ASSURANCE
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
Software Quality Assurance Lecture 3
Software Engineering I
Chapter # 8 Quality Management Standards
ISO/IEC Systems and software Quality Requirements and Evaluation
Software Verification and Validation
Capability Maturity Model
Presentation transcript:

ISA 201 Intermediate Information Systems Acquisition

Lesson 15a Software Quality

Today we will learn to: Define software quality Identify characteristics unique to software that impact quality Identify characteristics of generic DOD software system domains (e.g. Platform IT, Command and Control, and Defense Business Systems), that might influence how each system is reviewed in a software quality program Recognize that every IT acquisition program requires a Program Manager approved software quality statement. Given several process-focused and product-focused software quality assurance methods, describe how each assures quality in a software acquisition Recognize the benefits of applying Capability Maturity Model Integrated (CMMI) concepts and principles to a DoD SW development project Given a software acquisition scenario, recognize the preferred method for identifying and tracking defects Given an acquisition scenario with multiple software related programmatic issues, analyze how each may impact the program’s ability to meet its quality objectives Software Quality Assurance

How is Software Different from Hardware? Lesson Plan How is Software Different from Hardware? What is Software Quality? Software Domain Considerations Lesson Exercise Part 1 Software Quality Assurance Planning and Methods Lesson Exercise Part 2 Software Quality Assurance

What Makes Software Different from Hardware Software Quality Assurance

What is Software Quality? Lesson Plan Status How is Software Different from Hardware? What is Software Quality? Software Domain Considerations Lesson Exercise Part 1 Software Quality Assurance Planning and Methods Lesson Exercise Part 2 Software Quality Assurance

Definitions for Software Quality THE ESSENCE: Does it do what it is supposed to? Definitions for Software Quality The degree to which a system, component, or process meets specified requirements [IEEE Std 610.12-1990] The degree to which a system, component, or process meets customer or user needs or expectations (no undesirable properties) [ISO/IEC 9001} Other Definitions Lack of bugs Adherence to a software quality model (“ilities”) The Program Manager must understand and define software quality for his or her program Software Quality Assurance

Software Quality Model Characteristics ISO 9126-1 :2001 Software engineering -- Product quality provides a SW quality model that identifies six main quality characteristics: Functionality Suitability Accurateness Interoperability Compliance Security Reliability Maturity Fault tolerance Recoverability Usability Understandability Learnability Operability Efficiency Time behavior Resource behavior Analyzability Maintainability Changeability Stability Testability Adaptability Portability Installability Conformance Replaceability Software Quality Assurance

Software Domain Considerations Lesson Plan Status How is Software Different from Hardware? What is Software Quality? Software Domain Considerations Lesson Exercise Part 1 Software Quality Assurance Planning and Methods Lesson Exercise Part 2 Software Quality Assurance

Software Domain Considerations Is there a relationship between software quality and software safety? Is there a relationship between software quality and cybersecurity? Mission Systems C4ISR Defense Business Platform IT (PIT) systems – Safety, Response time C4ISR systems – Security, interoperability DBS systems – Privacy, interoperability SW quality assurance practices should be chosen to meet the program’s quality objectives and informed by the risks inherent in the type of system being built. Software Quality Assurance

Lesson Exercise Part 1 Lesson Plan Status How is Software Different from Hardware? What is Software Quality? How do I achieve Software Quality? Lesson Exercise Part 1 Software Quality Assurance Planning and Methods Lesson Exercise Part 2 Software Quality Assurance

Quality Exercise 1 Review the ICM table and identify areas that are applicable to the specific quality characteristics identified in the lesson. Identify quality-focused information needs (reference the ICM table in exercise folder) and map the information needs to measurable concepts and potential measures. Include key aspects of the Software Quality Model Characteristics Include any safety and cybersecurity quality implications Based on your experience, prioritize the information needs in keeping with the common challenges programs experience. Summarize your IPT’s results in a briefing using the template provided (whiteboard is preferred if possible).. Software Quality Assurance

Software Quality Assurance Planning and Methods Lesson Plan Status How is Software Different from Hardware? What is Software Quality? How do I achieve Software Quality? Lesson Exercise Part 1 Software Quality Assurance Planning and Methods Lesson Exercise Part 2 Software Quality Assurance

Software Quality Assurance Methods Product Assurance Process Assurance systematic activities providing evidence of the ability of the software process to produce a software product fit for use Process maturity and compliance Risk Management Independent oversight SQA audits and reporting systematic activities providing evidence that the software product performs as specified Desk Checking Walk-Throughs Formal Inspections Joint Reviews Computer-Based Testing Product Quality Measures Software Quality Assurance

Quality Program A quality program includes a management process that is capable of ensuring the following key activities: Formulating a quality management plan Applying software engineering principles Conducting formal technical reviews Applying a multi-tiered testing strategy Enforcing Process adherence Controlling change and measuring the impact of change Performing SQA audits, keeping records and reporting The PM should allow contractors to define and use a preferred quality management process that meets required program support capabilities. The DOD does not require third party certification or registration of a supplier’s quality system The PM is ultimately responsible for setting the quality objectives! Software Quality Assurance

Software Quality Assurance Plan Lesson 03

Process Assurance Software Engineering Software Cleanroom Engineering The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software. [IEEE Std 610.12-1990] Software Cleanroom Engineering Combines formal methods of requirements and design with statistical usage testing to produce software with nearly none or no defects. Normally used in systems requiring highly reliable software (space shuttle) Continuous Process Improvement A strategic approach for developing a culture of continuous improvement in the areas of reliability, process cycle times, costs in terms of less total resource consumption, quality, and productivity. Six Sigma: A disciplined approach and methodology for reducing variations in system output. Lean Six Sigma: A disciplined, data-driven approach and methodology for eliminating defects in any process — from manufacturing to transactional and from product to service. Theory of Constraints: a management paradigm that views any manageable system as being limited in achieving more of its goals by a very small number of constraints. Software Quality Assurance

Process Assurance: Capability Maturity Model—Integration (CMMI) Was a collaborative effort sponsored by the Office of the Secretary of Defense/Acquisition and Technology (OSD/A&T) Systems Engineering with participation by government, industry, and the Software Engineering Institute (SEI)*. Objective is to develop a product suite that provides industry and government with a set of products to support process and product improvement. It can be used to guide process improvement across a project, a division, or an entire organization. Benefits of implementing process improvement: The quality of a system is highly influenced by the quality of the process used to acquire, develop, and maintain it. Process improvement increases product and service quality as organizations apply it to achieve their business objectives. Process improvement objectives are aligned with business objectives. CMMI maturity level can often be a good predictor of whether a software development project will incur cost and schedule overruns. CMMI Institute http://cmmiinstitute.com/ *CMMI is a spin-off of original SEI activity Software Quality Assurance

Process Assurance: Capability Maturity Model—Integration (CMMI) CONTINUOUS Path enables organization to incrementally improve processes corresponding to an individual process area (PA) (or group of process areas) selected by the organization. STAGED Path enables organization to improve a set of related processes by incrementally addressing successive sets of process areas. Software Quality Assurance

Process Assurance: Capability Maturity Model—Integration (CMMI) Level Continuous Representation Capability Levels Staged Representation Maturity Levels Level 0 Incomplete   Level 1 Performed Initial Level 2 Managed Level 3 Defined Level 4 Quantitatively Managed Level 5 Optimizing Capability levels enable your organization to focus its process improvement efforts process area by process area from capability level 0 to capability level 3. Maturity levels provide a staging of processes for improvement across your organization from maturity level 1 to maturity level 5. Software Quality Assurance

Process Assurance: More Quality Process Models and Standards ISO 9000, Quality Management and Quality Assurance Standards Provides guidelines as to which document to use and how to use it. Use of ISO 9001, 9002 or 9003 depends on business structure ISO 9001, Quality Systems Model for Quality Assurance in Design/Development, Production Installation, and Servicing ISO 9002, Quality Systems Model for Quality Assurance in Production and Installation ISO 9003, Quality Systems Model for Quality Assurance in Final Inspection and Test ISO 9004, Quality Management and Quality Systems Element Along with ISO 9000, ISO 9004 is an advisory document. ISO 9001 gives the requirements that an organization must do to manage the processes affecting quality of its products and services ISO 9000 - Quality management://www.iso.org/iso/iso_9000 Software Quality Assurance

Other Quality Standards and Initiatives SPICE (SW Process Improvement and Capability Determination) (ISO/IEC 15504) An international standard for software process assessment. Derived from process lifecycle standard ISO 12207 and ideas of maturity models like Bootstrap, Trillium and the CMM. Control Objectives for Information and related Technology (COBIT) Provides good practices across a domain and process framework. Practices designed to help optimize IT-enabled investments, ensure service .delivery and provide a measure against which to judge when things do go wrong.. Information Technology Infrastructure Library (ITIL) Provides international best practices for IT service management. Consists of a series of books giving guidance on the provision of quality IT. services, and on the accommodation and environmental facilities needed to support IT. Practical Software and Systems Measurement (PSM) Best practices within the software/system acquisition and engineering communities. Goal is to provide Project Managers with the information needed to meet cost, schedule, and technical objectives on programs. Software Quality Assurance

Product Assurance: Human–based Testing Software Quality Assurance

Product Assurance: Measures Low Defect Potentials (< 1 per function point) High Defect Removal (> 95%) Unambiguous, Stable Requirements (< 2.5% change) Explicit Requirements Achieved (> 97.5% achieved) High User Satisfaction Ratings (> 90% “Excellent”) Installation Ease of Learning Ease of Use Functionality Compatibility Various internal DoD and GAO reports and studies have indicated that establishing meaningful measures and using them to manage contributes to program success Software Quality Assurance Lesson 03

Product Assurance: Measures Establish Requirements Identify list of possible quality requirements Determine list of quality requirements Assign a direct metric to each quality requirement Identify Metrics Apply the software quality metrics framework Perform a cost-benefit analysis Gain commitment to the metrics Implement Metrics Define the data collection procedures Prototype the measurement process Collect the data and compute the metric values Analyze Results Interpret the results Identify software quality Make software quality predictions Ensure compliance with requirements Validate Metrics Apply the validation methodology Apply the validity criteria Apply the validation procedures Document results IEEE Standard for a Software Quality Metrics Methodology IEEE Std 1061-1998 (reaffirmed 2009) Software Quality Assurance

Lesson Exercise Part 2 Lesson Plan Status How is Software Different from Hardware? What is Software Quality? How do I achieve Software Quality? Lesson Exercise Part 1 Software Quality Assurance Planning and Methods Lesson Exercise Part 2 Software Quality Assurance

Quality Exercise 2 Instructions Quality Analysis   The current software upgrade project has been in progress for a year now and the project should be well into the Coding and Unit Testing phase. The PM believes that something is amiss and has asked your IPT to perform an in-depth analysis to assess the project’s status from a quality perspective. The PM received from the prime contractor the measurement indicators (without any additional comments or information) and has given them to your IPT to analyze (see Contractor Data Presented to PM). The PM has also identified the program’s specific Quality Attributes and is concerned that the data does not allow for a good quality assessment. The PM wants your IPT to complete the enclosed assessment templates. Tasks:  Within your IPT, review carefully the set of charts to identify problems, assess their impact, project the outcomes, and evaluate alternatives. Compare/contrast the PM’s Quality Attributes with the Software Quality Model Characteristics (ISO 9126-1 :2001 Software engineering) presented in the lesson material and identify any areas you feel the PM should address. Compare and contrast the ICM Quality measurable concepts (with indicators and measures) from Exercise 1 with the PM’s Quality Attributes. Identify the differences between the ICM table and the PM’s Quality Attributes. Assess the data provided by the contractor - does the data provided meet information needs based on the PM’s Quality Attributes? If not, identify the areas where you need additional data to support the PM’s Quality Attributes. What recommendations would you make to the PM based on the insight gained from your analysis? Be sure to include recommendations for strengthening the overall SW quality program. What additional analyses you would perform to assess and strengthen the SW Quality activities.

Today we learned to: Define software quality Identify characteristics unique to software that impact quality Identify characteristics of generic DOD software system domains (e.g. Platform IT, Command and Control, and Defense Business Systems), that might influence how each system is reviewed in a software quality program Recognize that every IT acquisition program requires a Program Manager approved software quality statement. Given several process-focused and product-focused software quality assurance methods, describe how each assures quality in a software acquisition Recognize the benefits of applying Capability Maturity Model Integrated (CMMI) concepts and principles to a DoD SW development project Given a software acquisition scenario, recognize the preferred method for identifying and tracking defects Given an acquisition scenario with multiple software related programmatic issues, analyze how each may impact the program’s ability to meet its quality objectives Software Quality Assurance

(Back-up) Integrated Analysis (From Measures Lesson) Integrated analysis combines multiple indicators and focuses on the cause and effect relationships inherent between IT performance parameters These IT performance parameters map directly to the measurement information categories McGarry, J., Card, D., Jones, C., Layman, B., Clark, E., Dean, J., & Hall, F. (2002). Practical Software Measurement. Part 1