Intent Specification Intent Specification is used in SpecTRM

Slides:



Advertisements
Similar presentations
Configuration management
Advertisements

Configuration management
Software Design Fundamentals
SOFTWARE TESTING. Software Testing Principles Types of software tests Test planning Test Development Test Execution and Reporting Test tools and Methods.
Kellan Hilscher. Definition Different perspectives on the components, behavioral specifications, and interactions that make up a software system Importance.
ECMDA workshop Thales ATM experience in using MDE ECMDA Workshop From code centric to model centric software engineering Bilbao 11 July 2006.
Ch 3: Unified Process CSCI 4320: Software Engineering.
The design process IACT 403 IACT 931 CSCI 324 Human Computer Interface Lecturer:Gene Awyzio Room:3.117 Phone:
Ch 3 System Development Environment
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
ECE 720T5 Fall 2012 Cyber-Physical Systems Rodolfo Pellizzoni.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Computer Engineering 203 R Smith Requirements Management 6/ Requirements IEEE Standard Glossary A condition or capability needed by a user to solve.
1 Introduction to Software Engineering Lecture 42 – Communication Skills.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
CSC 402, Fall Requirements Analysis for Special Properties Systems Engineering (def?) –why? increasing complexity –ICBM’s (then TMI, Therac, Challenger...)
IS550: Software requirements engineering Dr. Azeddine Chikh 4. Validation and management.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Introduction to Software Testing
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Software maintenance Managing the processes of system change.
Romaric GUILLERM Hamid DEMMOU LAAS-CNRS Nabil SADOU SUPELEC/IETR ESM'2009, October 26-28, 2009, Holiday Inn Leicester, Leicester, United Kingdom.
This chapter is extracted from Sommerville’s slides. Text book chapter
S/W Project Management
DGTA-ADF Migrating to a Software Assurance Standard 2008 ADF Software Symposium FLTLT Patrick Redmond SCI-DGTA.
Introduction to Software Quality Assurance (SQA)
S/W Project Management Software Process Models. Objectives To understand  Software process and process models, including the main characteristics of.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
ECE 720T5 Winter 2014 Cyber-Physical Systems Rodolfo Pellizzoni.
RUP Implementation and Testing
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)
Project Tracking. Questions... Why should we track a project that is underway? What aspects of a project need tracking?
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
 To explain the importance of software configuration management (CM)  To describe key CM activities namely CM planning, change management, version management.
Configuration Management (CM)
Creator: ACSession No: 16 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringFebruary 2006 (Software Quality) Configuration Management CSE300 Advanced.
SOFTWARE DESIGN (SWD) Instructor: Dr. Hany H. Ammar
High Performance Embedded Computing © 2007 Elsevier Chapter 1, part 2: Embedded Computing High Performance Embedded Computing Wayne Wolf.
John D. McGregor Session 2 Preparing for Requirements V & V
Approaching a Problem Where do we start? How do we proceed?
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
1 Introduction to Software Engineering Lecture 1.
I Power Higher Computing Software Development The Software Development Process.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Human Computer Interaction
Configuration Management CSCI 5801: Software Engineering.
Requirement Engineering. Recap Elaboration Behavioral Modeling State Diagram Sequence Diagram Negotiation.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Software Engineering and Object-Oriented Design Topics: Solutions Modules Key Programming Issues Development Methods Object-Oriented Principles.
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
Chapter 2 – Software Processes Lecture 1 1Chapter 2 Software Processes.
1 Chapter 12 Configuration management This chapter is extracted from Sommerville’s slides. Text book chapter 29 1.
® IBM Software Group © 2009 IBM Corporation Essentials of Modeling with the IBM Rational Software Architect, V7.5 Module 15: Traceability and Static Analysis.
SAFEWARE System Safety and Computers Chap18:Verification of Safety Author : Nancy G. Leveson University of Washington 1995 by Addison-Wesley Publishing.
SAS-05-SpecTRM-TeamX- Meshkat 1 Infusing SpecTRM in the TeamX environment Leila Meshkat¹, Kathryn Weiss², Michael Luna¹, Nancy Leveson² 1: Jet Propulsion.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
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.
2009 copyright Leslie Munday University Requirements Management and Traceability For IIBA By Leslie Munday.
From Use Cases to Implementation 1. Mapping Requirements Directly to Design and Code  For many, if not most, of our requirements it is relatively easy.
CHESS Methodology and Tool Federico Ciccozzi MBEES Meeting Sälen, January 2011 January 2011.
The Systems Engineering Context
IEEE Std 1074: Standard for Software Lifecycle
Strategies For Software Test Documentation
Introduction to Software Testing
Baisc Of Software Testing
From Use Cases to Implementation
Logical Architecture & UML Package Diagrams
Presentation transcript:

Intent Specification Intent Specification is used in SpecTRM

Intent Specification and SpecTRM SpecTRM  Tool that can use Intent Specification Specification Tools Requirements Methodology  Made for use with development of safety-critical software  Made by Safeware Engineering SpecTRM-RL  Another method that can be used in SpecTRM 2

Key benefits 1 Finding errors early in development  Fix with lowest cost and impact on system design Tracing requirements and design rationale throughout system construction and documentation  Safety constraints 3

Key benefits 2 Building required system properties into the design from the beginning Building bridges between specialists  System engineering  Software engineering  Safety engineering 4

Why Intent Specification? 1 Normal specification are structured in levels of what and how  This helps to cope with complexity Unanswered question  Why? Why are decisions made?  Why did we do it that way…?  Why can’t it do …? Important with changing requirements 5

Why Intent Specification? 2 Software-related accidents mostly come from problems with requirements A good specification needs to be organized, readable and reviewable Improved set of practices for writing specifications Can be tailored for needs of the project 6

Structure of Intent Specification Nancy Leveson 7

Levels and decomposition Level 0: Program Management Information Level 1: System-Level Goals, Requirements, and Constraints Level 2: System Design Principles Level 3: Blackbox Behavior Level 4: Physical and Logical Design Level 5: Physical Implementation Level 6: System Operations Environment Operator System and components Verification and Validation 8

The Levels Each level is a complete view of the system Each level is expressed in a different way that motivates the level below Not necessary to complete one level before starting on the next Within a level all aspects of the system are addressed 9

Traceability Link down from higher level shows how something been executed Link up from code show why it was made in this way Links between parts at same level that affect each other Example:  Each hazard would link to safety design constraints within the same level  Each safety constraints would link down from level one to level two where decisions comply with safety constraints 10

Level 0: Program Management Information Project and safety plans that will guide development of the system Program Management Plans  Project overview  Budgeting  List over personnel and responsibilities System Safety Plan  Describes safety objectives and how they will be achieved  Plans for subsystem safety 11

Level 1: System-Level Goals, Requirements, and Constraints 1 Introduction of system being built Historical information  Historical background or precedent  Puts the system in context Environment  Systems are not independent Description  Illustrative examples of where, when and under what circumstances the system will be used 12

Level 1: System-Level Goals, Requirements, and Constraints 2 Assumptions  System relies upon for safe operation  Wrong assumptions may lead to accidents Constraints  Assumptions needs to be true System goals  Reason the system is being built 13

Level 1: System-Level Goals, Requirements, and Constraints 3 High-Level Requirements  What is the system to do System Limitations  Requirements that cannot be implemented Operator Requirements Hazard Analysis  Assumptions, requirements and constraints for the operator 14

Level 1: System-Level Goals, Requirements, and Constraints 4 Hazard Analysis  Generate hazard list and log Hazard List and Assessment  All known hazard for system  More can be found during development and added Design and Safety Constraints  Constraints document things that the system should not do  Limits space of possible design for the system 15

Level 1: System-Level Goals, Requirements, and Constraints 5 Non-Safety Constraints Safety constraints  Motivated by safety concerns Verification and Validation  Plans and procedures for reviewing the requirements 16

Level 2: System Design Principles Answers why for subcomponent requirements at level 3 System Design Principles  Record design decisions that meet requirements and enforce constraints of level 1 Operator Task Design Principles  Responsibilities for operators Verification and Validation  Information about the validation of the design principles for this level 17

Level 3: Blackbox Behavior Describes only the requirements for the behavior of the components as seen from the outside System Blackbox Behavior  Model of subcomponent behavior User Model  User behavior  Find parts of the system that might match poorly with human capability Verification and Validation  Ensures that components will operate in ways that satisfy system-level requirements and design decisions 18

Level 4: Physical and Logical Design 1 Describes the physical and logical designs of each subcomponent Contain design specification for subcomponent or reference to design specification  Hardware Design Specifications  Software Design Specifications Physical Interface Design  Describe human factors 19

Level 4: Physical and Logical Design 2 Training Plan  Describe how to train operators Operations Plan  Describe how to use the system is to be operated Verification and Validation  Design walkthroughs and results 20

Level 5: Physical Implementation 1 Either information of the physical implementation of the system or references to where such information are Software sourcecode Hardware Schematics Hardware Assembly and Installation Instruction 21

Level 5: Physical Implementation 2 Operator Training Manuals  Instructions for use  Traceability to ensure hazard mitigation Operator (User) Manuals  As Operator Training Manuals Verification and Validation  Test plans and results  Special plans for test safety-critical behavior 22

Level 6: System Operations Learn from operational history of system  Pattern of accidents Track of a system’s operational performance Predict future problems For next version or product 23

Use in buisness-crtical systems? 1 Can reduce/drop what intent specification says about  Safety  Hazards Easier to change SW without unforeseen errors  Know why a decision was made  Know what test or simulation needs do be redone and what do not need to be redone Easier to avoid design errors 24

Use in buisness-crtical systems? 2 Possible to reuse parts of documentation for another project? Can be used with any programming language Can be used with other methods for developing software?  UML, RUP and XP 25

Finished, questions?