Why Use SysML? Eric A. Barnhart.

Slides:



Advertisements
Similar presentations
Integration of MBSE and Virtual Engineering for Detailed Design
Advertisements

Representations and Models: SysML and Beyond David Long Vitech Corporation SEDC
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Karolina Muszyńska Based on:
UML Diagrams Jung Woo. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems, business.
Chapter 7 Structuring System Process Requirements
UML (Sequence Diagrams, Collaboration and State Chart Diagrams) Presentation By - SANDEEP REDDY CHEEDEPUDI (Student No: ) - VISHNU CHANDRADAS (Student.
Unified Modeling Language
Object-Oriented Analysis and Design
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
End-to-End Design of Embedded Real-Time Systems Kang G. Shin Real-Time Computing Laboratory EECS Department The University of Michigan Ann Arbor, MI
SE 555 Software Requirements & Specification Requirements Analysis.
SE-565 Software System Requirements More UML Diagrams.
Object Oriented Analysis and Design Using the UML
SysML: A Modeling Language for Systems of Systems
Chapter 7 Structuring System Process Requirements
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Chapter 1 The Systems.
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
UML - Development Process 1 Software Development Process Using UML (2)
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
Free Mini Course: Applying SysML with MagicDraw
UML REVIEW –PART1 1. Introduction What is UML visual modelling language UML is a language not a methodology? Q: why is this distinction important? UML.
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
An Introduction to Software Architecture
1 Systems Engineering Process Review Mark E. Sampson EMIS 8340 Systems Engineering Tool—applying tools to engineering systems.
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 4, Requirements Elicitation.
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
Selected Topics in Software Engineering - Distributed Software Development.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
UML Use Case Diagramming Guidelines. What is UML? The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing,
Requirement Handling
TAL7011 – Lecture 4 UML for Architecture Modeling.
Business Analysis with For PG MDI, Gurgaon Kamna Malik, Ph.D.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
XASTRO-2 Presentation CCSDS SAWG th November 2004.
CSCI 3428: Software Engineering Tami Meredith UML Unified Modeling Language.
UML - Development Process 1 Software Development Process Using UML.
CS223: Software Engineering
UML Course Instructor: Rizwana Noor. Overview  Modeling  What is UML?  Why UML?  UML Diagrams  Use Case  Components  Relationships  Notations.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Requirement Analysis SOFTWARE ENGINEERING. What are Requirements? Expression of desired behavior Deals with objects or entities, the states they can be.
Effective SE Communication through Models and Representations David Long INCOSE Copyright © 2015 by D. Long. Published.
© 2005 by Prentice Hall Chapter 7 Structuring System Process Requirements Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
Chapter 7 Part II Structuring System Process Requirements MIS 215 System Analysis and Design.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Unified Modeling Language. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems,
Business System Development
UML Diagrams By Daniel Damaris Novarianto S..
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
SysML v2 Formalism: Requirements & Benefits
Unified Modeling Language
SysML v2 Usability Working Session
UML Diagrams Jung Woo.
An Introduction to Software Architecture
Copyright © 2015, 2012, 2009 Elsevier Inc. All rights reserved.
Copyright © 2015, 2012, 2009 Elsevier Inc. All rights reserved.
Software Development Process Using UML Recap
UML  UML stands for Unified Modeling Language. It is a standard which is mainly used for creating object- oriented, meaningful documentation models for.
Presentation transcript:

Why Use SysML? Eric A. Barnhart

Systems Engineering Communications! Systems Engineering is an interdisciplinary approach and means to enable the realization of successful systems. It focuses on defining customer needs and required functionality early in the development cycle, documenting requirements, then proceeding with design synthesis and system validation while considering the complete problem. Time Delay!

It’s all about the… communication!

Communications and Learning Verbal-Linguistic Sharing words, writings, documents Why are we stuck here? Logical-Mathematical Equations, drawings, MatLab models Engineering discipline Visual-Spatial Pictures, charts, drawings Approximately 30% of people! Other methods too…

What is SysML? SysML is a graphical language SysML is a method for communications SysML emphasizes the SE domain SysML is NOT a specific tool or methodology Main Entry: lan·guage        Pronunciation: \ˈlaŋ-gwij, -wij\ Function: noun 1 … (2): a systematic means of communicating ideas or feelings by the use of conventionalized signs, sounds, gestures, or marks having understood meanings (3): … (4): … (5): a formal system of signs and symbols (as FORTRAN or a calculus in logic) including rules for the formation and transformation of admissible expressions

SysML Relationship To UML For more info… www.sysml.org SysML UML 2.0 Common Diagrams: Activity, Block Definition (UML2::Class), Internal Block (UML2::Composite Structure), Package, Sequence, State Machine, Use Case New Diagrams: Parametric Constraint, Requirement

SysML Trivia SysML is a UML profile Inherits the mature UML notation Inherits UML “bloat” Compatible with UML SysML is SE domain specific, UML is general purpose SysML abandons some of the software-centric aspects of UML

Our typical form of communications The dreaded “block diagram”

Simplified Block Diagram Track Target Report Position Order of operation? Simulation Federation Relationship? RT Clock Executive Interface? What does a block diagram mean?????

A little better?

Try This Syntax A component A frame to group things Ports – controlled points of interface (with optional direction) An Interface entity - Required An Interface entity - Supplied

Better yet

Even Better with Full Context

Compare and Contrast Block diagram with random or inconsistent meaning to symbols Component diagram with well-defined syntax and grammar

Communications The engineer must use a consistent, well-defined, and well-understood language to communicate the requirements and design to other engineers, otherwise the product will founder, fail, or be a disaster. For the systems engineer, that language is currently SysML.

Ένα πρόβλημα με καλη σαφήνεια είναι μισό λυμένω Axiom Ένα πρόβλημα με καλη σαφήνεια είναι μισό λυμένω Translations courtesy Haratini E. Andre

“A problem well-defined is half solved.” Communicating Well In order to communicate you must speak a common language You must share the problem definition Across cultures Across space Across TIME “A problem well-defined is half solved.” Lou Cohen

Matching the Language to the Problem Verbal-linguistic methods for system definition Writing specs, ICDs, SRSs, etc. Logical-mathematical methods for system definition Models, MatLab files Visual-spatial methods for system definition Pictures Drawings Charts } Models too! SysML is a suitable language, iff you model your system. If you don’t, then it won’t work.

Όλα είναι ελληνικά σε μένα Is there a problem? You have to speak the modeling language, otherwise… Όλα είναι ελληνικά σε μένα (It’s all Greek to me) Translations courtesy Haratini E. Andre

INCOSE Orlando Presents: Prerequisites You must be able to use the language You must model your system as a standard practice “Speak” the language Learn UML, SysML Practice, practice, practice Your boss must recognize the language Never leave your boss in the dark Never make your boss look stupid Your boss must understand WHY you speak the language Your customers (internal and external) must understand the language and the models INCOSE Orlando Presents: SysML Tutorial, June 8th By Sandy Friedenthal Lockheed Martin

The models they depict have enormous value to the SE process Why model? Model depiction information System describes 1+ 1 By themselves, drawings can have dubious value Drawing Define Requirements Design System Implement Integrate The models they depict have enormous value to the SE process Requirements Model

Got Models? – Operational Concepts Do you do analyze operational concepts? Sample Use Case Diagram Copilot / Gunner Track Target <<extends>> Scan by Pattern <<extends>> <<extends>> <<extends>> Autotrack Image Select Track Mode Drive Turret Manually

Got Models? - Requirements Do you model requirements and their relationships? Sample Requirements Diagram

Got Models? – Functional Decomposition Do you do functional decomposition? (DoDAF SV-4) Sample Activity Diagram

Got Models? – States & Modes Do you analyze states/modes? (DoDAF SV10b) Sample State Diagram POWER APPLIED [ powerIsStable] SELF TEST FAILED / STORE FAILURE DATA TEMP REACHES OPT / ASSERT READY ENABLE CMD RCVD OPTIONS SET CMD(  ) [ options enabled ] / SET OPTION OFF COMMAND RCVD / STORE DATA TEMP FAULT EXECUTE COMMAND[ safety confirmed ] DISABLE CMD RCVD Off Mode Warmup Mode Failure Mode Standby Mode Ready Mode Fire Mode EXECUTION COMPLETED entry: emit 3 pulses entry: Assert Not Ready

Got Models? – Event Traces Do you trace events? (DoDAF SV-10c) Sample Sequence Diagram <<device>> Keypad <<device>> AlphaNumericDisplay <<device>> ScrewActuator <<device>> ChangeDispenser <<device>> M.A.U Credit Chute EnterLocation DisplayMessage( code ) BuyProduct( selection ) GetPrice( selection ) CompareToPrice DisplayMessage( error ) -end- DispenseProduct( selection ) Turn AcceptFunds CalculateChange DispenseAmount resetAmount

Got Models? - Deployment Do you deploy components onto processors? Sample Deployment Diagram (borrowed from UML)

Got Models? - Parametrics Do you create parametric models? Sample Parametrics Diagrams

SysML Drawing Summary SYSML DIAGRAM PURPOSE UML ANALOG Activity diagram Show system behavior as control and data flows. Useful for functional analysis. Compare Extended Functional Flow Block diagrams (EFFBDs), already commonly used among systems engineers.  Block Definition diagram Show system structure as components along with their properties, operations and relationships. Useful for system analysis and design. Class diagram Internal Block diagram Show the internal structures of components, including their parts and connectors. Useful for system analysis and design. Composite Structure diagram Package diagram Show how a model is organized into packages, views and viewpoints. Useful for model management. Parametric diagram Show parametric constraints between structural elements. Useful for performance and quantitative analysis. N/A Requirement diagram Show system requirements and their relationships with other elements. Useful for requirements engineering.

SysML Drawing Summary - cont. Sequence diagram Show system behavior as interactions between system components. Useful for system analysis and design. State Machine diagram Show system behavior as sequences of states that a component or interaction experience in response to events. Useful for system design and simulation/code generation. Use Case diagram Show system functional requirements as transactions that are meaningful to system users. Useful for specifying functional requirements. (Note potential overlap with Requirement diagrams.) Allocation tables*   *dynamically derived tables, not really a diagram type Show various kinds of allocations (e.g., requirement allocation, functional allocation, structural allocation). Useful for  facilitating automated verification and validation (V&V) and gap analysis. N/A UML 2.0 Component, Communications, Object, Deployment, Interaction and Timing diagrams have not been included in SysML

Leaving SysML at Home Don’t bother with SysML if.. your process is centered on writing nothing but textual specifications you don’t model your systems your management won’t read SysML diagrams your customer won’t read SysML all you want to do is say you’re using it

Bringing SysML to Work Selling SysML to systems engineers Preaching to the Choir

Bringing SysML to S/W Engineers Selling points They’re probably already using UML “now we can communicate better”

Bringing SysML to Management Selling Points Better communications Reduced errors “Easy to learn” Break them in slowly Interface to S/W Improved integration Solid, proven technology Customers are asking for it Competitors are using it DON’T ask for a $20K tool up front Use SysML manually first, buy the tool later Some managers just don’t get it

EE’s generally won’t care Bringing SysML to EEs Chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken chicken EE’s generally won’t care (neither will ME’s)

Getting Started – One Idea Use the language any way you can Visio, PowerPoint, etc. Insinuate the language into existing work products Drawings start appearing in specs Control the document = control the drawing inside it Do the analysis as part of the effort to write the CDRL Make the managers want it Buy the tool after SysML is part of your process

Why SysML? Standardized communications Improve life-cycle management - across space - across time Improve life-cycle management Capture the artifacts of systems engineering Eliminate dreaded Block Diagrams