® IBM Software Group © 2014 IBM Corporation Innovation for a smarter planet Agile Model-Based Systems Engineering (aMBSE) Bruce Powel Douglass, Ph.D. Chief.

Slides:



Advertisements
Similar presentations
System Integration Verification and Validation
Advertisements

Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Ch 3: Unified Process CSCI 4320: Software Engineering.
Chapter 4 Quality Assurance in Context
Alternate Software Development Methodologies
® IBM Software Group © 2011 IBM Corporation Innovation for a smarter planet Model-Based Agility for Embedded Systems Development Dr. Bruce Powel Douglass,
® IBM Software Group © 2014 IBM Corporation Innovation for a smarter planet MBSE for Complex Systems Development Dr. Bruce Powel Douglass, Ph.D. Chief.
Software Quality Engineering Roadmap
Copyright © 2006 Software Quality Research Laboratory DANSE Software Quality Assurance Tom Swain Software Quality Research Laboratory University of Tennessee.
® IBM Software Group © 2007 IBM Corporation Achieving Harmony IBM's Platform and Methodology for Systems Engineering and Embedded Software Development.
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
Software Quality Assurance For Software Engineering && Architecture and Design.
Software Verification and Validation (V&V) By Roger U. Fujii Presented by Donovan Faustino.
Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation.
The Integration Story: Rational Quality Manager / Team Foundation Server / Quality Center Introductions This presentation will provide an introduction.
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.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Model Based Systems Engineering (MBSE) using SysML GSFC Systems Engineering Seminar June 8, 2010 Sanford Friedenthal Lockheed Martin
Effective Methods for Software and Systems Integration
Romaric GUILLERM Hamid DEMMOU LAAS-CNRS Nabil SADOU SUPELEC/IETR.
Complete and Integrated Lifecycle Management. Challenges 1.
S/W Project Management
UML - Development Process 1 Software Development Process Using UML (2)
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
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.
Cybersecurity: Engineering a Secure Information Technology Organization, 1st Edition Chapter 7 Software Supporting Processes and Software Reuse.
By: Md Rezaul Huda Reza 5Ps for SE Process Project Product People Problem.
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
1 Process Engineering A Systems Approach to Process Improvement Jeffrey L. Dutton Jacobs Sverdrup Advanced Systems Group Engineering Performance Improvement.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
What is a life cycle model? Framework under which a software product is going to be developed. – Defines the phases that the product under development.
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
Teaching material for a course in Software Project Management & Software Engineering – part II.
Views from different perspectives
Requirements Engineering CSE-305 Requirements Engineering Process Tasks Lecture-5.
Identify steps for understanding and solving the
© 2015 IBM Corporation Bruce Powel Douglass, Ph.D. Chief Evangelist, Global Technology Ambassador IBM Rational
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Systems Design Approaches The Waterfall vs. Iterative Methodologies.
This chapter is extracted from Sommerville’s slides. Text book chapter
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Review of Software Process Models Review Class 1 Software Process Models CEN 4021 Class 2 – 01/12.
How to Improve the Safety of Signalling Systems with a Shortened Construction Period in Engineering Construction Projects Gao Guoliang Safety Assurance.
LESSON 3. Properties of Well-Engineered Software The attributes or properties of a software product are characteristics displayed by the product once.
Formal Methods.
Business Analysis. Business Analysis Concepts Enterprise Analysis ► Identify business opportunities ► Understand the business strategy ► Identify Business.
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
CS3320-Chap21 Office Hours TR 1:00-2:15 PM W 2:30-3:30 PM By appointment.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
RUP RATIONAL UNIFIED PROCESS Behnam Akbari 06 Oct
INCOSE IW12 MBSE Workshop 15 INCOSE (MBSE) Model Based System Engineering Integration and Verification Scenario Ron Williamson, PhD Raytheon
by: Er. Manu Bansal Deptt of IT Software Quality Assurance.
1 Ontological Foundations For SysML Henson Graves September 2010.
 System Requirement Specification and System Planning.
Agenda Problems with systems and software engineering
An Integrated Model-Based Approach to System Safety and Aircraft System Architecture Development Eric Villhauer – Systems Engineer Brian Jenkins – System.
Software Quality Assurance
CS4311 Spring 2011 Process Improvement Dr
Chapter 2 – Software Processes
Software Quality Assurance
System Modeling Assessment & Roadmap Joint OMG/INCOSE Working Group
PSS verification and validation
Nicholas J. Di Liberto 20 June 2011
Presentation transcript:

® IBM Software Group © 2014 IBM Corporation Innovation for a smarter planet Agile Model-Based Systems Engineering (aMBSE) Bruce Powel Douglass, Ph.D. Chief Evangelist, Global Technology Ambassador IBM Rational Yahoo: tech.groups.yahoo.com/group/RT-UML/ IBM: www- 01.ibm.com/software/rational/leadership/thought/BruceDouglass.html

IBM Software Group | Rational software Innovation for a smarter planet State of the Practice for Systems Development  Systems Engineering Environments in general  Are document-centric  Require huge investment in planning that doesn’t reflect actual project execution  Have difficulty adapting to change.  Require expensive and error-prone manual review and update processes.  Require long integration and validation cycles  Are difficult to maintain over the long haul  Additional standards constraints (eg DO-178C, ARP4761, ISO26262, AUTOSAR, DoDAF) add to the challenge  Tooling Selection  Dependability engineering  Safety  Reliability  Security  System certification 2

IBM Software Group | Rational software Innovation for a smarter planet Improve quality through continuous feedback Verification Analysis Review Testing via execution or simulation Customer feedback (meet the need) Correctness Appropriateness Usability Defensive Design Efficiency through Concentrate on high-value tasks Avoid rework Paying attention to how you’re doing against goals Project retrospective Risk management Planning Don’t plan beyond the fidelity of the information you have Plan enough but not more than that Adjust plans based on “truth on the ground” (metrics) Key Concepts for Agility Primarily build executable things Verify them continuously Primarily build executable things Verify them continuously Active and continuous risk mitigation Dynamic planning Responsive to Change Dynamic planning Responsive to Change 3

IBM Software Group | Rational software Innovation for a smarter planet What do we mean by “verification”?  Syntactic verification – “well-formedness” (compliance in form)  Performed by quality assurance personnel  Two types  Audits – work tasks are performed as per plan and guidelines  Syntactic review – work products conform to standard for organization, structure and format  Ex:  Requirements shall be uniquely numbered, be organized by use case, use the word “shall” to indicate the normative phrase of a requirement; functional requirements shall be modified by at least one quality of service requirement, …  Semantic verification – “correct” (compliance in meaning)  Performed by engineering personnel  Three basic techniques  Testing – requires Executability of work products, impossible to fully verify  Formal methods – strongest but hard to do and subject to invariant violation  Semantic review (subject matter expert & peer) – most common, weakest means 4

IBM Software Group | Rational software Innovation for a smarter planet What does “agile” mean for Systems Engineering?  Do what you need to do, no more and no less  This depends heavily on industry, regulation, and business environment  Provide the necessary level of rigor, precision, and repeatability  Often requires detailed traceability links among work products (e.g. requirements traceability)  Use tooling to automate manually-intensive, error-prone work  Work iteratively and incrementally  Group requirements with user stories or use cases  Incrementally add traceability  Incrementally develop system architecture  Verify work products continuously  With syntactic verification (Q/A) activities  With semantic verification  With customer (aka “validation”)  Outcome contains textual specifications but also linked executable specifications  Use dynamic planning to adjust project plans based on “ground truth” and responsiveness to change  Use goal-based metrics (KPIs) to track project progress  Continuously track progress against plan. Adjust planning frequently  Safety, Reliability, Dependability  Not “done once” but continuously assessed 5

IBM Software Group | Rational software Innovation for a smarter planet Best Practices for Agile Systems Engineering  High-fidelity model-based engineering (Hi-MBE)  Incremental functional analysis with use cases  Test-driven development of system specifications  Example: Requirements verification via executable requirements modeling with SysML / UML  Project risk management  Incrementally add traceability  Integrated safety and reliability analysis  Model-based handoff to downstream engineering  Automated document generation from model artifacts 66 Note: a key difference between agile SW and agile SE is that the outcome of SE is specifications and the outcome of SW is implementation

IBM Software Group | Rational software Innovation for a smarter planet 7 Model-Based Systems Engineering and Agile?

IBM Software Group | Rational software Innovation for a smarter planet 8 Advantages of MBSE  Precision  Models constructed in formal (or semi-formal) languages are more precise than text  Recommendation: Link description informal text to precise, formal models  Verification  Models can be executed, simulated, or (formally) analyzed  Requirements models  Architecture models  Dependability models  Control models  Improved Handoff from systems engineering to downstream engineering  Precise models are less likely to be misinterpreted  If systems and software engineers use the same modeling languages, then no translation is required  Improved understanding of architecture  Improved visualization of functional, structural, and behavioral aspects  Decreased design learning time

IBM Software Group | Rational software Innovation for a smarter planet Trade study Model Trade study Model Trade study Model Models and Viewpoints in Model-Based Systems Engineering Functional Model Executable use cases Functional and QoS requirements Dependability Model Safety, reliability, and security analysis FTA, FMEA, FEMCA, Asset Diagram, SAD Control Model Control algorithms, mathematical models Architectural Model Subsystems, interfaces, Subsystem use cases/ Requirements Model-based handoff Subsystem Model(s) Mechanical Specification Electronic Specification Software Specification Model and text 9 Heat Power Weight Stability

IBM Software Group | Rational software Innovation for a smarter planet 10 Scenario Driven Use Case Construction / Validation Making it Agile Loop Conceptualize requirement aspect Incrementally augment model Verify Repeat until all requirements added Repeat for all use cases < 1 hr

IBM Software Group | Rational software Innovation for a smarter planet Requirements Verification Using Rhapsody and Simulink 11

IBM Software Group | Rational software Innovation for a smarter planet Traceability in Models  Traceability is crucial for effective systems engineering  Traceability supports  Demonstration of congruence of different work products in different disciplines done by different people and managed by different tools  Impact analysis – the effects of change one element as it propagates through the set of related work products  Coverage analysis – ensure that related aspects in different work products are adequately represented  E.g. requirements  test  architecture  design  implementation  safety assessment  Standards compliance required by industry standards 12

IBM Software Group | Rational software Innovation for a smarter planet Important to Relate Safety Information Through Lifecycle 13

IBM Software Group | Rational software Innovation for a smarter planet Integrated Safety and Reliability Analysis 14

IBM Software Group | Rational software Innovation for a smarter planet Model-Based Threat Analysis  Security Analysis Diagram (SAD) is like a Fault Tree Analysis (FTA) but for security, rather than safety  It looks for the logical relation between assets, vulnerabilities, attacks, and security violations  Permits reasoning about security  What kind?  How much?  Risk assessments 15

IBM Software Group | Rational software Innovation for a smarter planet Auto-generation of documents (summary data) Fault Source Matrix, Fault Detection Matrix, Fault-Requirement Matrix, FMEA, Hazard Analysis… Traceability improves your ability to make your safety/security case Generate documents are a natural (and automated) outcome of engineering work rather than as a separate activity 16

IBM Software Group | Rational software Innovation for a smarter planet 17 Model-Based Hand-off to Downstream Engineering

IBM Software Group | Rational software Innovation for a smarter planet Special Considerations for Agile Systems Engineering  Do I have to complete SE before starting on the SW and HW work? 18 Requirements Functional Analysis Systems Architecture Systems Engineering Software Electronics Mechanical Optical Chemical Downstream Development Integration Verification Flight Test Validation Customer acceptance Verification & Validation Extreme case: Complete all SE before DSE -When there is significant novel hardware -When there is basic science to be done

IBM Software Group | Rational software Innovation for a smarter planet Special Considerations for Agile Systems Engineering  Do I have to complete SE before starting on the SW and HW work? 19 Systems EngineeringDownstream Engineering Verification and Validation Extreme case: SE and DSE almost completely overlap -When there is no novel hardware -When development is low risk and well understood

IBM Software Group | Rational software Innovation for a smarter planet Special Considerations for Agile Systems Engineering  Do I have to complete SE before starting on the SW and HW work? 20 Systems Engineering Downstream Engineering Verification & Validation The truth is usually somewhere in the middle -SE starts the engineering work -As independent parts of the specifications stabilize, DSE can begin -DSE continues in an incremental way as well, resulting in incremental V&V

IBM Software Group | Rational software Innovation for a smarter planet Summary  Systems Engineering capability can be greatly enhanced with two key technologies  MBSE - Use of SysML/UML Modeling to capture system  Functionality and Qualities of service (executable use cases)  Structure (architecture)  Model-based hand off to downstream engineering  Automatic generation of documentation from model-based work products  Agile methods employing  Incremental construction and verification of models  Test Driven Development nanocycle-level iteration  Incorporating dependability analysis with the SE workflow  Incremental traceability  Harmony best practice workflows can be employed in an agile way  Process guidance – linked guidance to performance of tasks and creation of work products  Project Planning – create project plans with Harmony process templates in Rational Team Concert  Project Governance – monitor KPIs in project dashboards 21

IBM Software Group | Rational software Innovation for a smarter planet References 22