Requirements Gathering using Object- Oriented Models

Similar documents
ISTQB Sample Question Paper Dump #11

Developing Software Quality Plans a Ten Step Process. Phil Robinson Lonsdale Systems. Software Quality Plans. We all agree that you need one

V&V and QA throughout the M&S Life Cycle

Surviving the Top Ten Challenges of Software Testing

Ensuring Project Success with QA/QC and IV&V

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2

Risk Based Thinking & QMS Risk Management as per ISO

International Standard ISO/IEC 9126

Software Quality. A Definition of Quality. Definition of Software Quality. Definition of Implicit Requirements

Summary of TL 9000 R4.0 Requirements Beyond ISO 9001:2000

Integration and Testing

Building quality into the software from the. Keeping and. the software. software life cycle

Software Testing Life Cycle

Software Quality Metrics. Analyzing & Measuring Customer Satisfaction (Chapter 14)

Introduction. Fundamental concepts in testing

Osprey Technologies, LLC. Quality Manual ISO9001:2008 Rev -

GAIA. GAIA Software Product Assurance Requirements for Subcontractors. Name and Function Date Signature 15/09/05 15/09/05 15/09/05 15/09/05 15/09/05

Cost of Quality. Appendix 2B. Copyright 2006, The McGraw-Hill Companies, Inc.

Principles of Verification, Validation, Quality Assurance, and Certification of M&S Applications

Testing. Testing is the most important component of software development that must be performed throughout the life cycle

Introduction to Software Engineering

Advantages and Disadvantages of. Independent Tests. Advantages. Disadvantages

KINGS COLLEGE OF ENGINEERING DEPARTMENT OF INFORMATION TECHNOLOGY QUESTION BANK

Software Development Life Cycle (SDLC) Tata Consultancy Services ltd. 12 October

DEVELOP QUALITY CHARACTERISTICS BASED QUALITY EVALUATION PROCESS FOR READY TO USE SOFTWARE PRODUCTS

Business Context of ISO conform Internal Financial Control Assessment

0 Introduction Test strategy A Test Strategy for single high-level test B Combined testing strategy for high-level tests...

CERTIFIED SOFTWARE QUALITY ENGINEER

Chapter 7. Auditing Internal Control over Financial Reporting. Copyright 2012 by The McGraw-Hill Companies, Inc. All rights reserved.

In Control: Getting Familiar with the New COSO Guidelines. CSMFO Monterey, California February 18, 2015

Quality Management. Managing the quality of the design process and final

UNIT 2 QUALITY PHILOSOPHY

Fundamentals of Quality

Compliance driven Integrated circuit development based on ISO26262

REQUIREMENTS FOR SAFETY RELATED SOFTWARE IN DEFENCE EQUIPMENT PART 1: REQUIREMENTS

ASA ANNUAL CONFERENCE 2014 WASHINGTON, DC THE 8D DISCIPLINE TO EFFECTIVE PROBLEM SOLVING

QUESTIONS NUMBER ONE (Total marks 20) NUMBER TWO (Total marks 20) NUMBER THREE

An Overview of Software Reliability

Software Quality Management

CHAPTER 2 LITERATURE SURVEY

Engineering systems to avoid disasters

IF YOU DO NOT AGREE TO THESE TERMS, DO NOT DOWNLOAD, INSTALL OR USE BSS.

CA Network Automation

CHAPTER 5 INFORMATION TECHNOLOGY SERVICES CONTROLS

Results of the IEC Functional Safety Assessment

Quality Control Manuals

Quality Manual ISO 9001:2000

Subject : Computer Science. Paper : Software Quality Management. Module : Quality Management Activities Module No: CS/SQM/15

Independent Verification and Validation (IV&V)

To get the most out of this tutorial, it is good to have a basic understanding of the Software Development Life Cycle (SDLC).

Prevent Quality System Deficiencies by Conducting Effective Internal Audits. Whitepaper

SAP s Quality & Testing Platform Complete Solution of Products and Professional Services

Use of PSA to Support the Safety Management of Nuclear Power Plants

Process Improvement. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 28 Slide 1

QMS CO-ORDINATOR & GENERAL PROCEDURES:-

Consumer Basic Hardware Services

Translate stakeholder needs into strategy. Governance is about negotiating and deciding amongst different stakeholders value interests.

Software Testing Conference (STC) Leveraging Requirement Based Test Practices For Non-Safety Critical Software Systems

Quality management systems

Software Sustainment. Defense Acquisition University Jason Hamilton Professor, Information Technology 7 June PSM Workshop [7 June 2017] 1

Formal Techniques in Large-Scale Software Engineering

FDA Medical Device HFE Guidance

Quality Manual. This manual complies with the requirements of the ISO 9001:2015 International Standard. AW2 Logistics, Inc Ace Industrial Dr.

Agile Quality Management

UPPLIER ANUAL. Issued: 01 Aug 13

Supplier Audit Procedure /20/17

Quality Assurance Manual, Revision F Page 1 of 20

BASICS OF SOFTWARE TESTING AND QUALITY ASSURANCE. Yvonne Enselman, CTAL

VC SOFTWARE PROJECT MANAGEMENT PLAN

CPSC 310 Software Engineering. Quality

JOB FAMILY DESCRIPTIONS

Presented by Renaldo de Jager 11-1

V02 SUPPLIER GUIDELINES

INS QA Programme Requirements

Topic 11 - Quality. Higher Business Management

COPYRIGHTED MATERIAL RELIABILITY ENGINEERING AND PRODUCT LIFE CYCLE 1.1 RELIABILITY ENGINEERING

Moving from ISO/TS 16949:2009 to IATF 16949:2016. Transition Guide

PART THREE: Work Plan and IV&V Methodology (RFP 5.3.3)

Cargotec Supplier Requirements

Quality Concepts. Slide Set to accompany. Software Engineering: A Practitioner s Approach, 7/e by Roger S. Pressman

DESIGN AND DEVELOPMENT

AUTOMOTIVE SPICE v3.1 POCKET GUIDE

Supplier Audit Procedure /2/17

MSc Software Testing and Maintenance MSc Prófun og viðhald hugbúnaðar

Quality and Environmental Agreement

Frameworx 11 Certification Report Business Process Framework Release 9.0

SAN FRANCISCO PUBLIC UTILITIES COMMISSION INFRASTRUCTURE CONSTRUCTION MANAGEMENT PROCEDURES

SOFTWARE TESTING REVEALED

VectorCAST Presentation AdaEurope 2017 Advanced safety strategies for DO178C certification Massimo Bombino, MSCE

GENERAL PRINCIPLES OF SOFTWARE VALIDATION

QUALITY MANUAL DISTRIBUTION. Your Logo Here. Page 1 1 of 57. Rev.: A

INF 3121 Software Testing - Lecture 05. Test Management

WORK PLAN AND IV&V METHODOLOGY Information Technology - Independent Verification and Validation RFP No IVV-B

12.0 Business Continuity Management

Medical Device Purchasing Controls Challenges of Compliance in a World Market June, 2013 OMTEC

CPEA. Certified Professional Environmental Auditor.

UPGRADE CONSIDERATIONS Appian Platform

Chapter 9 1. List and briefly explain the dimensions of product and service quality

MadgeTech Data Loggers

Approved for public release; distribution is unlimited.

Transcription:

Requirements Gathering using Object- Oriented Models Software Quality Assurance What is software? According to the IEEE (Institute of Electrical and Electronics Engineers) A software is: Programs, procedures, as well as possibly documentation and data related to the operation of a computer system. 1

Software errors, faults and failures Bug / fault / fault as a result of human errors resulting in non-compliance and manifesting as a failure during execution (system reliability / availability). 4 Software Development Variables $$$ Quality Features Time Time on Quality Time on Features $$$ on quality $$$ on features 2

4 Software Development Variables NASA $$$ Quality Features Google.com $$$ Time Quality Features Time Analysis of the cost of quality The cost of quality is the total amount spent of a company to achieve and deal with the quality of its product. This includes the company's investments in continuous quality improvement and its expenses resulting from the inadequate quality of its products. The objective of quality assurance is to help the company to minimize its cost of quality. 3

Costs related to quality Prevention The associated costs in order to avoid customer dissatisfaction. Includes errors or weaknesses in software, design, documentation and support. Internal faults The cost of dealing with errors discovered during development and commissioning. Note that the company loses money as a user who can not do the job properly and as a developer who must review and correct the anomalies. Evaluation Cost of inspections (tests, inspections, audits, etc.). External faults The cost of processing defects that affect customers after the product is delivered. Examples of cost of quality Prevention Staff training Requirements analysis & early prototyping Fault-tolerant design Defensive programming Usability analysis Clear specification Accurate internal documentation Pre-purchase evaluation of the reliability of development tools Internal faults Regression testing Wasted in-house user time Wasted tester time Wasted writer time Wasted marketer time Wasted advertisements Direct cost of late shipment Opportunity cost of late shipment Evaluation Design review Code inspection Glass box testing Black box testing Training testers Beta testing Usability testing Pre-release out-of-box testing by customer service staff External faults Lost sales and lost customer goodwill Technical support calls Writing answer books (for Support) Investigating complaints Supporting multiple versions in the field Refunds, recalls, warranty, liability costs Interim bug fix releases Shipping updated product Discounts to resellers 4

Cost of quality for the customer Seller: external costs Expenditure absorbed by the seller who delivers a defective product. Loss of sales and customer base Technical support Write technical documentation and directive Investigating complaints Refund, reminders, warranty, prosecution Government Inquiry Support for different versions of software Deployment of patches Delivery charges for new releases Reputation and tarnished image Discount to dealers Customer: costs of poor quality (costs external to the seller) Expenses absorbed by the customer buying a defective product. Loss of time and energy Loss of data Loss of business Embarrassment Departure of frustrated employees Replacement cost of the product System Reconfiguration Support costs Injury / Death Relationship between development processes and defects * Most defects are introduced early 5

What is software quality? Compliance with requirements The narrowest sense of software quality No bugs Low defects ratio (number of defects / unit of size) High reliability (number of failures per n hours of operation) Mean Time to Failure (MTTF) probability of trouble-free operation in a specific time. What is software quality? According to Pressman, software quality is: Compliance with explicit functional and performance requirements, explicitly documented development standards, and implicit features expected of all professionally developed software. 6

Quality assurance vs. quality control: ISO 8402 QUALITY ASSURANCE : All of the pre-established and systematic activities implemented as part of the quality system, and demonstrated as necessary, to give the appropriate confidence that an entity will meet the quality requirements. QUALITY CONTROL : Operational techniques and activities used to meet quality requirements. Quality Assurance Is done during the cycle of realization Focuses on the eradication of causes This is done on the process Uses the measure to eliminate the causes of non-quality Agent of Change Quality encrypted and paid Prevention 7

The difference....qa / QC Quality control is carried out on the product Quality Assurance is done on the process Quality control is done at the end of the stage Quality Assurance takes place throughout the process Quality control adds nothing to the value of the product The QA adds value throughout the process QC is a stage of QA QA is often outside the development process QC is embedded in the development process The difference....qa / QC Quality Control Correction At the end of the cycle An action on the effects of the cycle Is done on the PRODUCT Standards, tolerance Notion policy if made by a third party Quality assurance Prevention Is done during the cycle of realization This is done on the PROCESSS Focuses on eradicating causes of non-compliance Uses the measure to eliminate the causes of non-quality Agent of Change 8

Software Quality Assurance Comprehensive life-cycle approach to each aspect of the software development process. Includes a comprehensive set of quality objectives: Measurable quality attributes (quality metrics) to assess progress towards objectives, Quantitative objectives of certification for all parts of the development process Take into account: Customer product requirement; Quality requirements; And corporate quality requirements. Software Quality Assurance Requirements Verification Architecture Verification Design Verification Validation Code Verification 9

Software Quality Assurance Includes Preventing erros and bugs Activities: training, planning, simulation Detecting and Finding faults in a software interface Activities: inspections, testing (validation), measurement Troubleshooting isolation, correction, checking of corrections Activities: bug isolation, bug analysis, regression testing Quality Factors ISO 9001:2000 groups the quality factors of a software into 6 main areas: Functionality Robustness Usability Efficiency Maintainability Portability 10

Quality Factors: Functionality Compliance with requirements Accuracy Interoperability Compliance with standards and regulations in the functional area Security Functionality The compliance of the software with the needs is an attribute referring to the respect of the explicit or implicit needs of the users. Accuracy is an attribute of the software relating to the production of just or agreed results or effects. Interoperability is an attribute that relates to the ability of the software to interact with other data systems. Compliance with standards is an attribute that refers to compliance with conventions, rights regulations, etc. Security is an attribute that refers to the ability to prevent unauthorized access (accidental or deliberate) to programs, software, and data. Quality Factors: Robustness Maturity Fault Tolerance Recovery after a breakdown Robustness Maturity is an attribute that relates to the frequency of failures due to software defects. Fault tolerance is an attribute that relates to the ability to maintain a given level of service in the event of a software defect or a violation of its interface. Recovery capability after a failure is an attribute that relates to capabilities to restore its level of service and to restore information directly affected in the event of failure and the time and effort required to do so. 11

Quality Factors: Usability Ease of understanding Ease of learning Ease of use Usability The ease of understanding is an attribute of the software on the effort that must be made by the user to recognize its logic and its implementation. Ease of learning is an attribute of the software about the effort the user must make to learn how to use it. The ease of use of the software is an attribute relating to the effort that the user must make to operate and control its operation. Quality Factors: Efficiency Reactivity Resource Consumption Efficiency The reactivity of the software is an attribute relating to the response and processing times as well as the flows during the execution of its function. The resource consumption of the software is an attribute relating to the amount of resources used and the duration of the execution of its function. 12

Quality Factors: Maintainability Ease of analysis Ease of modification Stability Ease of testing Maintainability The ease of analysis of the software is an attribute relating to the effort required to diagnose deficiencies or causes of failure or to modify the parts to be modified. The ease of modification of the software is an attribute relating to the effort required to modify, remedy faults or change environment The stability of the software is an attribute on the risk of the unexpected effects of the changes. The test facility is an attribute on the effort required to validate changes to the software. Quality Factors: Portability Adaptability Ease of installation Compliance with Technical Standards Ease of replacement Portability The ease of adaptation of the software is an attribute relating to the possibility of its adaptation to different given environments without resorting to other actions or means than those provided for this purpose. The ease of installation is an attribute of the effort required to install the software in a given environment. The compliance of the software with the technical standards is an attribute according to which it respects the application of norms or conventions relative to the portability. Ease of software replacement is an attribute of the ability and effort to use it in place of another given software component in the same environment. 13