IV&V Facility Model-based Design Verification IVV Annual Workshop September, 2009 Tom Hempler.

Slides:



Advertisements
Similar presentations
Software Quality Assurance Plan
Advertisements

Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
1 Independent Verification and Validation Current Status, Challenges, and Research Opportunities Dan McCaugherty IV&V Program Manager Titan Systems Corporation.
Software Testing and Quality Assurance
Software Requirements
SE 555 Software Requirements & Specification Requirements Validation.
Software Testing and Quality Assurance
DITSCAP Phase 2 - Verification Pramod Jampala Christopher Swenson.
Course Instructor: Aisha Azeem
CSE Senior Design II Test Planning Mike O’Dell Based on an earlier presentation by Mike O’Dell, UTA.
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Handouts Software Testing and Quality Assurance Theory and Practice Chapter 11 System Test Design
Software Architecture. Agenda " Why architect? " What is architecture? " What does an architect do? " What principles guide the process of architecting?
Effective Methods for Software and Systems Integration
Chapter 10 Architectural Design
S/W Project Management
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 1: Best Practices of Software Engineering.
Chapter 2 The process Process, Methods, and Tools
CLEANROOM SOFTWARE ENGINEERING.
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
Topics Covered: Software requirement specification(SRS) Software requirement specification(SRS) Authors of SRS Authors of SRS Need of SRS Need of SRS.
Rational Unified Process Fundamentals Module 4: Disciplines II.
An Introduction to Software Architecture
Software System Engineering: A tutorial
Business Analysis and Essential Competencies
1 Process Engineering A Systems Approach to Process Improvement Jeffrey L. Dutton Jacobs Sverdrup Advanced Systems Group Engineering Performance Improvement.
Team Skill 6: Building the Right System From Use Cases to Implementation (25)
T. Dawson, TASC 9/11/13 Use of a Technical Reference in NASA IV&V.
Requirements Engineering CSE-305 Requirements Engineering Process Tasks Lecture-5.
RUP Design RUP Artifacts and Deliverables
Certification and Accreditation CS Phase-1: Definition Atif Sultanuddin Raja Chawat Raja Chawat.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
MD Digital Government Summit, June 26, Maryland Project Management Oversight & System Development Life Cycle (SDLC) Robert Krauss MD Digital Government.
IT Requirements Management Balancing Needs and Expectations.
Testing Workflow In the Unified Process and Agile/Scrum processes.
SOFTWARE SYSTEMS DEVELOPMENT 4: System Design. Simplified view on software product development process 2 Product Planning System Design Project Planning.
CHECKPOINTS OF THE PROCESS Three sequences of project checkpoints are used to synchronize stakeholder expectations throughout the lifecycle: 1)Major milestones,
Lecture 7: Requirements Engineering
BE-SECBS FISA 2003 November 13th 2003 page 1 DSR/SAMS/BASP IRSN BE SECBS – IRSN assessment Context application of IRSN methodology to the reference case.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
KS3 Phase4 Client Server Monitoring System October 1, 2008 by Stephen, Seema, Kam, Shpetim.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
Notes of Rational Related cyt. 2 Outline 3 Capturing business requirements using use cases Practical principles  Find the right boundaries for your.
Historical Aspects Origin of software engineering –NATO study group coined the term in 1967 Software crisis –Low quality, schedule delay, and cost overrun.
Validating Requirements Determining Completeness and Correctness of Requirements Using the System Reference Model IV&V Workshop 16 September 2009.
Business Analysis. Business Analysis Concepts Enterprise Analysis ► Identify business opportunities ► Understand the business strategy ► Identify Business.
1 Chapter 8 Building the Analysis Model (1) Analysis Concepts and Principles.
Requirement Engineering. Recap Elaboration Behavioral Modeling State Diagram Sequence Diagram Negotiation.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Lecture 13.  Failure mode: when team understands requirements but is unable to meet them.  To ensure that you are building the right system Continually.
Winter 2007SEG2101 Chapter 31 Chapter 3 Requirements Specifications.
Software Requirements Specification Document (SRS)
Rational Unified Process Fundamentals Best Practices of Software Engineering Rational Unified Process Fundamentals Best Practices of Software Engineering.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Software Engineering Lecture 10: System Engineering.
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
SwCDR (Peer) Review 1 UCB MAVEN Particles and Fields Flight Software Critical Design Review Peter R. Harvey.
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
 System Requirement Specification and System Planning.
The Software Lifecycle Stuart Faulk. Definition Software Life Cycle: evolution of a software development effort from concept to retirement Life Cycle.
Requirements Analysis Scenes
SYSTEM ANALYSIS AND DESIGN
Manfred Huber Based on an earlier presentation by Mike O’Dell, UTA
Rational Unified Process
Introduction to Software Testing
Chapter 5 Designing the Architecture Shari L. Pfleeger Joanne M. Atlee
Requirements Document
Design.
Presentation transcript:

IV&V Facility Model-based Design Verification IVV Annual Workshop September, 2009 Tom Hempler

IV&V Facility Agenda Design & Integration Verification Planning Iterative Verification Process Perspectives on Verification As-Built Design Verification Goals and Objectives Design Verification Process Design Verification Methods 8/6/2015 2

IV&V Facility Software Design & Integration Verification Work Plan Using criticality and risk analysis results from PBRA, plan IV&V verification tasks Review risk assessment results from PBRA –Review software, interface, and integration design risks identified by the PBRA –Review and target developer artifacts related to mission critical and safety critical behavior –Identify critical software design and integration topologies and protocols –Review schedule risks associated with development schedule and milestones –Integrate design verification schedule with engineering services master schedule 8/6/2015 3

IV&V Facility Design verification is accomplished iteratively at multiple levels during all lifecycle phases Evaluate how well software components interact and support validated capabilities, limitations, and performance requirements. The System Reference Model (SRM) contains the structure and behavior used as a baseline for verification –Mission and safety critical software components and their interactions are compared with as-designed software components –SRM component operations, attributes, and services are functionality and performance requirements of the system –Non-functional requirements such as reliability, safety, scalability, recoverability, security, and availability Perspectives on the design along with scenarios facilitate verification and reveal program/technology risks 8/6/ Iterative Verification Process

IV&V Facility System Reference Model System Under Development DESIGN VERIFICATION - RELATIONSHIPS - Software and Interface Design Verification Views Functional Capabilities & Limitations Services Physical Relationships 8/6/ Structure Behavior Constraints

IV&V Facility 8/6/ Relationships Perspective Relationships defined as having size, weight, physical features, and performance properties Relationships among capabilities and limitations are dependencies, associations, and design or performance constraints. Relationships among physical components are interactions, services provided/consumed, containership, ownership, controller-terminal roles, etc. Verification is accomplished among all critical relationships described in SRM structure and behavior Diagrams: –Structure Diagrams –Behavior Diagrams

IV&V Facility System Reference Model System Under Development DESIGN VERIFICATION - PHYSICAL - Software and Interface Design Verification Views Functional Capabilities & Limitations Services Physical Relationships 8/6/ Structure Behavior Constraints

IV&V Facility 8/6/ Physical Perspective Features: –Describes the physical features and interrelationships among software components –Useful for identifying software and hardware; and software component interdependencies –Describes deployment configurations in terms of multiple instantiations, redundancy, and their interaction –Describes systems, sub-systems and components using classes; and their capabilities and limitations using attributes –Logical design provides facility to describe software domain; and their capabilities and limitations using attributes Diagrams: –Structure Diagrams with design and performance constraints –Behavior Diagrams

IV&V Facility System Reference Model System Under Development DESIGN VERIFICATION - CAPABILITIES & LIMITATIONS- Software and Interface Design Verification Views Functional Capabilities & Limitations Services Physical Relationships 8/6/ Structure Behavior

IV&V Facility 8/6/ Capabilities & Limitations Perspective Features: –SRM structure provides facility to describe software domain; and their capabilities and limitations using attributes –Accounts for non-functional properties such as availability, reliability (fault tolerance), availability, safety, performance (throughput), and scalability –Addresses resource sharing, concurrence –Useful for identifying design where processes can be controlled (initialization, recovery, reconfiguration, shut down) –Provides facility to verify performance, safety, dependability and other non-functional characteristics of systems, sub-systems and components Diagrams: –Structure Diagrams with design and performance constraints

IV&V Facility System Reference Model System Under Development DESIGN VERIFICATION - FUNCTIONAL- Software and Interface Design Verification Views Functional Capabilities & Limitations Services Physical Relationships 8/6/ Structure Behavior

IV&V Facility 8/6/ Functional Perspective Features: –Systems and sub-system components (e.g., program libraries, or architecture layers) are allocated operations that define the functionality of the design –Provides a look into the environment that surrounds the system and the effects (adverse or otherwise) it has on it –Serves as a basis for viewing validated requirement allocation and human interface allocations to the system –Useful for identifying work done by teams/individuals, cost evaluation and planning, progress monitoring, reasoning about software reuse, portability and security –Domain model contains operations or activities that describe systems, sub-systems and components using classes, and their capabilities using attributes and operations Diagrams: –Structure diagrams –Behavior diagrams

IV&V Facility System Reference Model System Under Development DESIGN VERIFICATION - SERVICES- Software and Interface Design Verification Views Functional Capabilities & Limitations Services Physical Relationships 8/6/ Structure Behavior

IV&V Facility 8/6/ Services Perspective Features: –Uses a set of use cases, activities or sequences of interactions between objects and between processes that weaves a behavioral thread through the design –Useful for realizing architectural elements used during software and interface design –Also used for verification of interface design to identify preventative measures taken for adverse behaviors Diagrams: –Structure Diagrams –Behavior Diagrams

IV&V Facility Design Verification Goal/Objectives Goal –Ensure that the proposed software and integration design adequately satisfies the software architecture and validated requirements and behavior. An adequate design is determined by assessing it for completeness, correctness, consistency, ambiguity, and testability. Objectives –Ensure the integration design is a correct, accurate and complete transformation of the validated behavior –Ensure that no unintended features were introduced during the design phase and that the design guards against undesirable behavior –Ensure that the Integration design is consistent with the verified software architecture and validated behavior –Ensure that the proposed design is testable –Verify interfaces define services to be provided and/or consumed, the preconditions for invoking the interface, the post conditions, and the invariants. –Ensure design documentation is acceptable and will support follow-on verification and future maintenance activities –Verify that the interface design isolates behavioral components from each other, and from computational components and data stores. 8/6/

IV&V Facility Answering Three Questions Using validated requirements and behavior –Verify that the system software design provides for the specified capabilities, limitations, and behavior. –Verify that the system software design guards against undesirable behavior –Verify that the system software design provides self protection and recovery capability against adverse conditions 8/6/

IV&V Facility DESIGN VERIFICATION PROCESS 8/6/

IV&V Facility Definitions for Software Design and Integration Quality Factors Design verification check list Unambiguous –The documentation is legible, understandable, and could result in only one interpretation by the intended audience. –All acronyms, mnemonics, abbreviations, terms, symbols, and special design languages are defined. Correct –The software design satisfies the software architecture and validated requirements (i.e., behaviors in the SRM, as well as non-functional requirements like safety or other “…ility”-like requirements). –The software design complies with applicable Mission and NASA standards, references, and policies. Complete –There is a logical decomposition into subsystems and modules, and their interactions are specified. –The hardware, software, and user interfaces are specified to an appropriate level. An appropriate level is one that identifies the information being processed, communication mechanisms and protocols, and services that particular subsystems or modules provide (i.e., behaviors that are changed or affected based on communication between two modules). –Functionality (e.g., algorithms, state/mode definitions, input/output validation, exception handling, reporting, and logging) is specified at the appropriate level of decomposition. –Performance criteria (e.g., timing, sizing, speed, capacity, accuracy, precision, safety, and security) are specified at the appropriate level of decomposition. Consistent –States and state transitions are used similarly throughout the design. For example, if event ε triggers Object1 to transition to state A, then elsewhere in the design that same event shall not cause Object1 to transition to a state other than A. –All terms and concepts are used similarly within the design itself, as well as with external artifacts such as the system and software architectures. Testability –There are objective acceptance criteria such that the design can be shown to pass or fail. 8/6/

IV&V Facility Design Verification Process Constraints Task Preconditions –Software architecture verification has been started –SRM products necessary to support design verification have been completed and validated –A criticality assessment has been made PBRA determined the prioritization and scope of the verification effort, including the level of analysis applied to each component/behavior –Artifacts necessary to support software design verification provided by Project Task Inputs –Software design material –Validated software requirements –Verified software architecture –SRM elaborated to a level indicative of software detailed design Task Outputs/Deliverables –IV&V evaluation of project’s responses to identified deficiencies/issues are documented & tracked –task status, schedules & risks documented & reported on regular basis –Report that documents IV&V assessment of software design –Model Correlation Matrix has been updated based on verified software design –Findings/recommendations for SRM changes/additions 8/6/

IV&V Facility Design Verification Methods Inspection Analysis Demonstration Test 8/6/

IV&V Facility Design Verification - Inspection Inspection –Review and compare artifacts with validated behavior –Verify that the design can be implemented –Verify that the design is traceable to the validated requirements and behavior –Verify that software design and integration design is complete and correct –Verify that omissions, defects, and ambiguities in the design are detected and recorded. 8/6/

IV&V Facility Design Verification - Analysis Analysis –Verify through software structure analysis that the design integrity goals are met and interrelationships described in the behavior model exist –Verify that fault recovery strategies described in the validated behavior model are employed. –Verify that the design is traceable to the validated requirements and behavior –Verify that software design and integration design is complete and correct –Verify that omissions, defects, and ambiguities in the design are detected and recorded. 8/6/

IV&V Facility Design Verification - Demonstration Demonstration Evaluation –Verify that software and integration design is testable within the behavior model –Verify relationships between the validated behavior and the software component features and integration properties –Apply assertions used on the logical model to components of the physical model –Verify that the design is traceable to the validated requirements and behavior –Verify that the design supports critical capabilities –Verify that integration logic is complete and correct –Verify that omissions, defects, and ambiguities in the design are detected and recorded. 8/6/

IV&V Facility Design Verification - Test Test and Evaluation –Verify that software and integration design is testable within the behavior model –Verify relationships between the validated behavior and the software component features and integration properties –Apply assertions used on the logical model to components of the physical model –Verify that the design is traceable to the validated requirements and behavior –Verify that the design supports critical capabilities –Verify that integration logic is complete and correct –Verify that omissions, defects, and ambiguities in the design are detected and recorded. 8/6/

IV&V Facility Summary Design & integration verification planning is a critical first step in an executable process Iterative verification processes are necessary to accomplish verification at all levels of design Perspectives on verification are necessary to maintain context and accomplish goals Verification goals and objectives are defined Design verification process is implemented Design verification methods are model- based, independent, and objective 8/6/

IV&V Facility QUESTIONS? 8/6/