Standards.

Slides:



Advertisements
Similar presentations
Software Quality Assurance Plan
Advertisements

1 sqa13b IEEE Standard for SQAP u IEEE Std –Standard for Software Quality Assurance Plans –12 pages u IEEE Guide for Software Quality Assurance.
1 Systems V & V, Quality and Standards Dr Sita Ramakrishnan School CSSE Monash University.
Software life cycle processes Purpose n A new international standard (ISO/IEC 12207:1995(E) that –establishes a common framework for software life cycle.
School of Computing, Dublin Institute of Technology.
(c) 2007 Mauro Pezzè & Michal Young Ch 24, slide 1 Documenting Analysis and Test.
Secure System Administration & Certification DITSCAP Manual (Chapter 6) Phase 4 Post Accreditation Stephen I. Khan Ted Chapman University of Tulsa Department.
DITSCAP Phase 2 - Verification Pramod Jampala Christopher Swenson.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 27 Slide 1 Quality Management 1.
Software Configuration Management
Configuration Management Avoiding Costly Confusion mostly stolen from Chapter 27 of Pressman.
OHT 2.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Software Quality assurance (SQA) SWE 333 Dr Khalid Alnafjan
Software Considerations in Airborne Systems
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 27 Slide 1 Quality Management.
Introduction to Software Quality Assurance (SQA)
Standards. What is a standard? What are the benefits of using a standard? What are the costs? Do the costs exceed the benefits?
Chapter 8 : Software Quality Assurance Juthawut Chantharamalee Curriculum of Computer Science Faculty of Science and Technology, Suan Dusit University.
Chapter 6 Software Implementation Process Group
OHT 23.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The benefits of use of standards The organizations involved in standards.
The Guide to the Software Engineering Body of Knowledge
Creator: ACSession No: 16 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringFebruary 2006 (Software Quality) Configuration Management CSE300 Advanced.
Certification and Accreditation CS Phase-1: Definition Atif Sultanuddin Raja Chawat Raja Chawat.
Strong9 Consulting Services, LLC 1 PMI - SVC I-80 Breakfast Roundtable Monthly Meeting Thursday, October 12, :00 am – 9:00 am.
BSBPMG505A Manage Project Quality Manage Project Quality Project Quality Processes Diploma of Project Management Qualification Code BSB51507 Unit.
KS3 Phase4 Client Server Monitoring System October 1, 2008 by Stephen, Seema, Kam, Shpetim.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Chapter 19 Verification and Validation.
IEEE CS SAB, Nov 2007 For Computer Society Internal Use Only 1 S2ESC Report Standards Activities Board Meeting November 6-7, 2007 Submitted by Paul Croll.
Software Product Line Material based on slides and chapter by Linda M. Northrop, SEI.
INFORMATION SYSTEMS FOR MANAGEMENT. Agenda Information system project Organization analysis.
Apply Quality Management Techniques Project Quality Processes Certificate IV in Project Management Qualification Code BSB41507 Unit Code BSBPMG404A.
BSBPMG501A Manage Project Integrative Processes Manage Project Integrative Processes Project Integration Processes – Part 1 Diploma of Project Management.
Cmpe 589 Spring 2006 Lecture 2. Software Engineering Definition –A strategy for producing high quality software.
BSBPMG404A Apply Quality Management Techniques Apply Quality Management Techniques Project Quality Processes C ertificate IV in Project Management
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
SE513 Software Quality Assurance Lecture12: Software Reliability and Quality Management Standards.
SwCDR (Peer) Review 1 UCB MAVEN Particles and Fields Flight Software Critical Design Review Peter R. Harvey.
6/6/ SOFTWARE LIFE CYCLE OVERVIEW Professor Ron Kenett Tel Aviv University School of Engineering.
What is a software? Computer Software, or just Software, is the collection of computer programs and related data that provide the instructions telling.
Verification vs. Validation Verification: "Are we building the product right?" The software should conform to its specification.The software should conform.
Introduction for the Implementation of Software Configuration Management I thought I knew it all !
SQA project process standards IEEE software engineering standards
ITIL: Service Transition
Needs and expectations for the ISO renewal
Software Project Configuration Management
2012 Spring Simulation Interoperability Workshop
Chapter 11: Software Configuration Management
Software Quality Assurance (SQA)
Chapter 10 Software Quality Assurance& Test Plan Software Testing
SQA project process standards IEEE software engineering standards
Chapter 18 Maintaining Information Systems
ISO/IEC Software Testing
TechStambha PMP Certification Training
IEEE Std 1074: Standard for Software Lifecycle
Systems Analysis and Design
Software Documentation
Chapter 6: Design of Expert Systems
12207.
Defining the Activities
Raytheon Parts Management
Quality management standards
Introduction to Software Testing
Software Quality Assurance Plans
QGen and TQL-1 Qualification
ISO/IEC IEEE/EIA Software Life Cycle Processes Supporting Life Cycle Processes IEEE Supporting Processes.
Chapter 13 Quality Management
Introduction To software engineering
Chapter 11: Software Configuration Management
Chapter # 8 Quality Management Standards
HHS Child Welfare National IT Managers' Meeting
Subject Name: SOFTWARE ENGINEERING Subject Code:10IS51
Presentation transcript:

Standards

Definition of standard A technical specification or other document available to the public, drawn up with the cooperation and consensus or general approval of all interests affected by it, based on the consolidated results of science, technology and experience, aimed at the promotion of optimum community benefits British Standards Institute, 1981

Standards are checklists (like a pilot’s checklist) Remind you of things you may forget Force you to acknowledge the consequences of not doing one of the tasks on the standard Don’t build the list from scratch: use one built by hundreds or thousands of professionals

Comparison of Standards External Product Process Resource Internal Product Fpleeger, Fenton, Page, Evaluating Software Engineering Standards, IEEE Software, Vol 11, No 5, Sept 1994, pp 71-79. safe pushchairs safe software

Comparison of Standards Other engineering: guidelines for product evaluation guidelines for acceptable outcomes Software engineering guidelines for process guidelines for techniques few guidelines for product evaluation

Software Engineering Standards Technical specifications available to public Consensus, but not necessarily of all affected parties (usually by committee)

Example: 1228-1994 IEEE Standard for Software Safety Plans Abstract: The minimum acceptable requirements for the content of a software safety plan are established. This standard applies to the software safety plan used for the development, procurement, maintenance, and retirement of safety-critical software. This standard requires that the plan be prepared within the context of the system safety program. Only the safety aspects of the software are included. This standard does not contain special provisions required for software used in distributed systems or in parallel processors

Example: 1008-1987 (R1993) IEEE Standard for Software Unit Testing 1. Scope and References 2. Definitions 3. Unit Testing Activities 3.1 Plan the General Approach, Resources, and Schedule. 3.2 Determine Features To Be Tested 3.3 Refine the General Plan 3.4 Design the Set of Tests 3.5 Implement the Refined Plan and Design 3.6 Execute the Test Procedures 3.7 Check for Termination 3.8 Evaluate the Test Effort and Unit

Partial list of standards 610.12-1990 IEEE Standard Glossary of Software Engineering Terminology 1062, 1998 Edition IEEE Recommended Practice for Software Acquisition 1228-1994 IEEE Standard for Software Safety Plans 1233, 1998 Edition IEEE Guide for Developing System Requirements Specifications 730-1998 IEEE Standard for Software Quality Assurance Plans 828-1998 IEEE Standard for Software Configuration Management Plans

Partial list of standards 1008-1987 (R1993) IEEE Standard for Software Unit Testing 1012-1998 IEEE Standard for Software Verification and Validation 1028-1997 IEEE Standard for Software Reviews 1045-1992 IEEE Standard for Software Productivity Metrics 1058-1998 IEEE Standard for Software Project Management Plans 1074-1997 IEEE Standard for Developing Software Life Cycle Processes 1219-1998 IEEE Standard for Software Maintenance

Partial list of standards 1540-2001 IEEE Standard for Software Life Cycle Processes--Risk Management 1061-1998 IEEE Standard for a Software Quality Metrics Methodology 829-1998 IEEE Standard for Software Test Documentation 830-1998 IEEE Recommended Practice for Software Requirements Specifications 1016-1998 IEEE Recommended Practice for Software Design Descriptions 1044-1993 IEEE Standard Classification for Software Anomalies

Classification of standards Reference only Subjective Partially Objective Objective

Four categories of SE Standards Process The Design Team shall validate the Software Specification by ... Internal Product e.g. code: “each module should have a single entry and exit External Product e.g. reliability Resources

Motivation for standards Provide encapsulation of best practice Avoid repetition of past mistakes Provide framework for quality assurance (assure that standard has been followed) Assist in continuity between workers

Standards organizations IEEE ANSI US DoD NATO Bureau of Standards

How to use standards Review standards regularly and update to reflect changing technology Provide software tools when possible. Clerical standards are a source of complaint

“In many modern standards, the only truly mandatory activity is tailoring the standard to your particular needs.” Lewis Gray

Walkthrough of DO178B Software Development Standard for avionics Handbook for problem areas of software development Catalog of certification requirements

FAA Certification The FAA certifies systems, not software

Software Criticality Levels Failure Consequence Example A Catastrophic Auto pilot B Hazardous navigation system C Major navigation assist system D minor E no effect in-flight entertainment

DO178B Process Planning Requirements Design Coding Integral Processes

DO178 Process: Planning Languages: syntax, naming conventions, coding conventions, bounds on term complexity, indentation standards ... Tools: which tools, which subsets, ... Hardware: may be very stringent Methods

DO178B Planning Describe tasks needed to meet task objectives, such as code reviews, walkthroughs, change control, audits, Describe when processes occur, when processes exit, and who is responsible

DO178B Design How will requirements be satisfied? Need architecture algorithms/data structures I/O Description Data and control flow descriptions Resource strategies Scheduling and communication

DO178B Coding Implement low-level requirements Integration: load software onto target Cannot patch software: need to recertify entire system (expensive)

DO178B Integral Process Requirements-based test generation Low-level tests Integration tests Hardware integration tests Requirements coverage analysis Additional Verification Requirements coverage analysis

DO178B Testing MCDC: Every atomic predicate is tested last 5% of test cases are difficult to generate Rockwell: 30% of development budget is in structural testing

DO178B Tools Must certify for each system: previous qualification efforts don’t transfer Qualify the tool or qualify the output? Qualifying a verification tool is easier than qualifying a synthesis tool