Copyright © 2006 Software Quality Research Laboratory DANSE Software Quality Assurance Tom Swain Software Quality Research Laboratory University of Tennessee.

Slides:



Advertisements
Similar presentations
Process and Product Quality Assurance (PPQA)
Advertisements

© by cellconsult.com Application Testing & Test Management.
1.Quality-“a characteristic or attribute of something.” As an attribute of an item, quality refers to measurable characteristics— things we are able to.
Software Quality Assurance Plan
Chapter 4 Quality Assurance in Context
More CMM Part Two : Details.
CH02: Modeling the process and life cycle Process of developing software (organization and discipline in the activities) contribute to the quality of the.
Sixth Hour Lecture 10:30 – 11:20 am, September 9 Framework for a Software Management Process – Artifacts of the Process (Part II, Chapter 6 of Royce’ book)
Copyright © 2003 Software Quality Research Laboratory Software Production Essentials Seeing Past the Buzz Words.
Lecture 12 Reengineering Computer-aided Software Engineering Cleanroom Software Engineering.
Overview Lesson 10,11 - Software Quality Assurance
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Business Area Analysis Focus: Domain View (selected business area) Goals: –Isolate functions and procedures that allow the area to meet its goals –Define.
Copyright © 2007 Software Quality Research Laboratory DANSE Software Quality Assurance Tom Swain Software Quality Research Laboratory University of Tennessee.
DITSCAP Phase 2 - Verification Pramod Jampala Christopher Swenson.
COMP8130 and 4130Adrian Marshall 8130 and 4130 Test Management Adrian Marshall.
Software Quality Assurance For Software Engineering && Architecture and Design.
Introduction to Software Testing
Software Testing & Strategies
Functional Testing Test cases derived from requirements specification document – Black box testing – Independent testers – Test both valid and invalid.
Software Integration and Documenting
Configuration Management Process and Environment MACS Review 1 February 5th, 2010 Roland Moser PR a-RMO, February 5 th, 2010 R. Moser 1 R. Gutleber.
Chapter 16 Software Quality Assurance
Chapter 16 Software Quality Assurance
Formal Methods 1. Software Engineering and Formal Methods  Every software engineering methodology is based on a recommended development process  proceeding.
UML - Development Process 1 Software Development Process Using UML (2)
Introduction to Software Quality Assurance (SQA)
Testing. Definition From the dictionary- the means by which the presence, quality, or genuineness of anything is determined; a means of trial. For software.
Software Quality Assurance Activities
RUP Implementation and Testing
Software Configuration Management (SCM)
Unit 8 Syllabus Quality Management : Quality concepts, Software quality assurance, Software Reviews, Formal technical reviews, Statistical Software quality.
Software System Engineering: A tutorial
Product Development Chapter 6. Definitions needed: Verification: The process of evaluating compliance to regulations, standards, or specifications.
Current and Future Applications of the Generic Statistical Business Process Model at Statistics Canada Laurie Reedman and Claude Julien May 5, 2010.
OHT 1.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The uniqueness of software quality assurance The environments for which.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
Systems Analysis and Design in a Changing World, Fourth Edition
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts.
© Michael Crosby and Charles Sacker, 2001 Systematic Software Reviews Software reviews are a “quality improvement process for written material”.
1 Lecture 12: Chapter 16 Software Quality Assurance Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman Slides.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
Software Engineering Lecture 8: Quality Assurance.
Software Engineering Lecture 10: System Engineering.
SE513 Software Quality Assurance Lecture12: Software Reliability and Quality Management Standards.
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
Slide 1SATC June 2000 Dolores R. Wallace* NASA Goddard Space Flight Center Greenbelt, Maryland for the American Society.
by: Er. Manu Bansal Deptt of IT Software Quality Assurance.
SQA project process standards IEEE software engineering standards
Software Testing.
PREPARED BY G.VIJAYA KUMAR ASST.PROFESSOR
Software Engineering (CSI 321)
Software Quality Assurance
Software Verification and Validation
CS4311 Spring 2011 Process Improvement Dr
Testing Process Roman Yagodka ISS Test Leader.
SQA project process standards IEEE software engineering standards
Software Quality Assurance
IEEE Std 1074: Standard for Software Lifecycle
Chapter 21 Software Quality Assurance
9/18/2018 Department of Software Engineering and IT Engineering
Introduction to Software Engineering
Chapter 21 Software Quality Assurance
Engineering Processes
Introduction to Software Testing
Engineering Processes
Overview Activities from additional UP disciplines are needed to bring a system into being Implementation Testing Deployment Configuration and change management.
Software Reviews.
Presentation transcript:

Copyright © 2006 Software Quality Research Laboratory DANSE Software Quality Assurance Tom Swain Software Quality Research Laboratory University of Tennessee Department of Computer Science

Copyright © 2006 Software Quality Research Laboratory SQA WBS Software Quality Engineering SNS Interface Requirements SNS Integration Plan Software Testing

Copyright © 2006 Software Quality Research Laboratory Software Quality Engineering  Write Software Quality Engineering Guidelines –Done  Present 4 Software Quality Engineering Workshops, focused on Specific DANSE Tasks –To be scheduled –General preparation done

Copyright © 2006 Software Quality Research Laboratory Software Quality Engineering Responsibilities  Define development process procedures and standards (see  Recommend methods and tools to support productivity and process compliance  Perform periodic audits

Copyright © 2006 Software Quality Research Laboratory Process Summary  Rigorous code specification derived from informal requirements –Architecture –Behavior  Certification –Independent Work Product Review –Quantitative Testing  Configuration management –Centralized build/release control –Comprehensive change tracking

Copyright © 2006 Software Quality Research Laboratory Essential Process Elements

Copyright © 2006 Software Quality Research Laboratory Work Product Completion Criteria  Planning Review Initial Requirements Initial Requirements  Peer Review Behavior Specification Behavior Specification Architecture Specification Architecture Specification  Code Review Software Implementation Software Implementation  Certification Test Software Release Software Release

Copyright © 2006 Software Quality Research Laboratory Certification Protocol  Architecture and Behavior Specs updated to as- built design – peer review action items resolved  Code inspection complete – action items resolved  Certification testing complete – defect correction for all failures resolved  Beta test complete* – reported issues resolved *optional for all except final increment

Copyright © 2006 Software Quality Research Laboratory Software Quality Engineering Responsibilities  Define development process procedures and standards (see  Recommend methods and tools to support productivity and process compliance  Perform periodic audits

Copyright © 2006 Software Quality Research Laboratory Software Configuration Management

Copyright © 2006 Software Quality Research Laboratory Trac Ticket Lifecycle

Copyright © 2006 Software Quality Research Laboratory Roles of Trac and Subversion in the Development Sequence

Copyright © 2006 Software Quality Research Laboratory Manual Inspection Manual and Automated Code Inspection Code Automated Inspection (PyLint, Flexelint) + Test 2. Verify correct code functionality with respect to specification. 1. Identify defects related to semantic errors and hazardous coding practices. 3. Iterate until defect volume is acceptable for testing.

Copyright © 2006 Software Quality Research Laboratory Software Quality Engineering Responsibilities  Define development process procedures and standards (see  Recommend methods and tools to support productivity and process compliance  Perform periodic audits

Copyright © 2006 Software Quality Research Laboratory Quick-look Audit Results: Areas for Improvement  Requirements Definition  Behavior Specification  Architecture Specification  Code Annotation (Doxygen)  Certification Test Planning  Design Review

Copyright © 2006 Software Quality Research Laboratory Toward Better Requirements (Use Cases) U (Functional Requirements)  Express as stimulus/condition/response action statement “When the user does X while Y is true, then the system output is Z.”  Collect all in a single work product  Itemize and tag for traceability

Copyright © 2006 Software Quality Research Laboratory Toward Better Requirements Supplementary Requirements  Nonfunctional requirements only  Should be measurable  If not measurable, then objectively verifiable  Otherwise, don’t bother

Copyright © 2006 Software Quality Research Laboratory Behavior Specification (currently non-existent) 1) Establish system boundary. 2) Define human/software/hardware interfaces. 3) Itemize stimuli. 4) Itemize responses. 5) Define response for every stimulus sequence.

Copyright © 2006 Software Quality Research Laboratory Architecture Specifications (currently too implicit and incomplete)  Define components and their responsibilities  Specify relationships among components  Specify intra-system and external interfaces  Ensure unidirectional dependency hierarchy  Specify assumptions regarding platform/environment

Copyright © 2006 Software Quality Research Laboratory DANSE Architecture Specification Recommendation  Overview class diagram(s) with summary description of each class/component on Doxygen main page  Detailed interface specifications embedded in code as Doxygen annotation

Copyright © 2006 Software Quality Research Laboratory Specification for Functions & Static Processes (using Doxygen) 1) For arguments and return values, specify type, definition, units, valid range, and default value 2) Partition input space into domains 3) Specify response function for EVERY domain

Copyright © 2006 Software Quality Research Laboratory Required Testing (missing in some planning documents)  Certification Test  Model system  Generate test cases  Define test oracle(s)  Execute test  Evaluate results  Beta Test  Plan  User Guide  User training  User feedback  Completion criteria

Copyright © 2006 Software Quality Research Laboratory Design Review Essentials  Reviewable work product checked into SVN  Notify reviewers 2+ days before review  Review formats 1. “Walk-thru” meeting 2. Issue resolution meeting 3. E-review by individuals  Reviewers confirm correctness and traceability  Record each action item as Trac ticket  Resolve action items (tickets)  Update work product in SVN

Copyright © 2006 Software Quality Research Laboratory Software Engineering Workshop Topics Engineering Diffraction Focus CNMS Room L382, Wed, Jan 24  Better and Easier Requirements  Systematic transition: Requirements→Behavior Spec→Code  Architecture spec standards  Model-based Testing How-to

Copyright © 2006 Software Quality Research Laboratory Quality Challenges  New, large, distributed development team  Wide range of software engineering experience  Expectations comparable to industrial product line  Reliable, intuitive operation for novice users  Straightforward extensibility for power users  Long term maintenance by SNS

Copyright © 2006 Software Quality Research Laboratory