Architectural Modeling in SysML

Similar documents
SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh

Modeling Requirements, Architectures, Behaviour...

Software Service Engineering

Unambiguous, Non-Binding Requirements for MDA. -David Hansz, Requirements Analyst -David Fado, Software Architect

Modelling in Enterprise Architecture. MSc Business Information Systems

Spemmet - A Tool for Modeling Software Processes with SPEM

Adding Formal Requirements Modeling to SysML

Programming II (CS300)

Software Architecture in Action. Flavio Oquendo, Jair C Leite, Thais Batista

The Open Group SOA Ontology Technical Standard. Clive Hatton

What is a Data Model?

Best Practices for Model-Based Systems Engineering

Modeling variability in software product lines with the variation point model

OMG MDA Implementers Conference. UML 2.0 Support for MDA in Dynamic Models: How Practical is Execution from Behavioral Models?

MeDUSA Method for Designing UML2-based Embedded System Software Architectures

Modeling Requirements

An Information Model for High-Integrity Real Time Systems

Introduction To Systems Engineering CSC 595_495 Spring 2018 Professor Rosenthal Midterm Exam Answer Key

UML 2.0 UML 2.0. Scott Uk-Jin Lee. Division of Computer Science, College of Computing Hanyang University ERICA Campus

Process and data flow modeling

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University

Object-Oriented Systems Analysis and Design Using UML

COSC 3351 Software Design. An Introduction to UML (I)

JOURNAL OF OBJECT TECHNOLOGY

Modeling Issues Modeling Enterprises. Modeling

SESE Tour 2018 Toulouse May 22

Current State of ontology in engineering systems

Enterprise Architect Training Courses

Years ago many of us had high expectations for effective database systems to support our requirements analysis and management needs.

ASSURING DATA INTEROPERABILITY THROUGH THE USE OF FORMAL MODELS OF VISA PAYMENT MESSAGES (Category: Practice-Oriented Paper)

Strategies of Systems Engineering Development

Darshan Institute of Engineering & Technology for Diploma Studies

Software Architecture and Design I

Enterprise Architect. User Guide Series. SysML Models. Author: Sparx Systems. Date: 30/06/2017. Version: 1.0 CREATED WITH

Briefing Date. Purpose

Patterns and Testing

Framework for Improvement in Cleanroom Software Engineering Thesis Submitted in the partial fulfillment of requirements for the award of the degree

REQUIREMENTS ENGINEERING LECTURE 2017/2018. Dr. Jörg Dörr. Conceptual Modelling. Fraunhofer IESE

SysML, It s Coming Are You Prepared?

A Generic Method for Defining Viewpoints in SysML

Component Design. Systems Engineering BSc Course. Budapest University of Technology and Economics Department of Measurement and Information Systems

Analysis Package White Paper. ADM Task Force January 2006

Requirement Model for Mechanical, Electrical and Software Integrated Products Using SysML

Topic 3 Unified Modeling Language UML. Objective: Student will use UML to represent relationshiops between objects, its structure and dynamics.

Towards Unified System Modeling with the ModelicaML UML Profile

HOW TO INVENT AN ALGORITHM

Architectural Blueprint

Metamodeling with Metamodels. Using. UML/MOF including OCL

Applying UML to System Engineering Some Lessons Learned Murray Cantor Principal Consultant

UNIT II. Syllabus. a. An Overview of the UML: Visualizing, Specifying, Constructing, Documenting

technical memo Physical Mark-Up Language Update abstract Christian Floerkemeier & Robin Koh

OMG Systems Modeling Language Tutorial May, 2012

OBJECT-ORIENTED MODELING AND DESIGN. Introduction

Evaluating Aspects of Systems Modeling Languages by Example: SysML and OPM

Introduction to UML What is UML? Motivations for UML Types of UML diagrams UML syntax Descriptions of the various diagram types Rational Rose (IBM.. M

An Ontological Analysis of Metamodeling Languages

A Model-Based Development Method for Device Drivers

3D Rotation: more than just a hobby

Fourth International Workshop on Model Based Architecting and Construction of Embedded Systems

SOFTWARE ARCHITECTURE & DESIGN INTRODUCTION

Lecture 8: Use Case -Driven Design. Where UML fits in

Object-Oriented and Classical Software Engineering

Requirements Modelling and Software Systems Implementation Using Formal Languages

Chapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects,

Integrity 10. Curriculum Guide

for TOGAF Practitioners Hands-on training to deliver an Architecture Project using the TOGAF Architecture Development Method

Software Development Chapter 1

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN

Test and Evaluation of Autonomous Systems in a Model Based Engineering Context

Business Rules in the Semantic Web, are there any or are they different?

Modeling Crisis Management System With the Restricted Use Case Modeling Approach

IMCE MOF2 / OWL2 Integration

Future Directions for SysML v2 INCOSE IW MBSE Workshop January 28, 2017

Using Ontological Methods for Managing Product Development

A ROADMAP TO STANDARDIZING THE IRIG 106 CHAPTER 10 COMPLIANT DATA FILTERING AND OVERWRITNG SOFTWARE PROCESS

One Model, Many Interests, Many Views

Interface-based enterprise and software architecture mapping

COrDeT Cannes : Use of domain engineering process to develop reusable architectures and building-blocks

CS SOFTWARE ENGINEERING QUESTION BANK SIXTEEN MARKS

An Introduction to MDE

Organizing Information. Organizing information is at the heart of information science and is important in many other

Sub- PPL Unit-I Class-SE Comp

SOFTWARE MODELING AND DESIGN. UML, Use Cases, Patterns, and. Software Architectures. Ki Cambridge UNIVERSITY PRESS. Hassan Gomaa

Friends, Romans, countrymen use your EARS & Improve your requirements

340 Review Fall Midterm 1 Review

FRAMEWORK OF THE EXTENDED PROCESS TO PRODUCT MODELING (XPPM) FOR EFFICIENT IDM DEVELOPMENT

Software Architecture. Lecture 5

Course 3 7 March

USING PAPYRUS IN A DESIGN SPACE EXPLORATION TOOLCHAIN CURRENT DEVELOPMENTS AT FLANDERS MAKE

SYLLABUS CHAPTER - 1 [SOFTWARE REUSE SUCCESS FACTORS] Reuse Driven Software Engineering is a Business

Existing Model Metrics and Relations to Model Quality

Raising the Level of Development: Models, Architectures, Programs

IBM Rational Software Architect

Enterprise Architect. User Guide Series. SysML Models. Author: Sparx Systems Date: 26/07/2018 Version: 1.0 CREATED WITH

The JCGV Ground Systems Architecture

Software Component Relationships. Stephen H. Edwards. Department of Computer Science. Virginia Polytechnic Institute and State University

FRAMEWORK OF THE EXTENDED PROCESS TO PRODUCT MODELING (XPPM) FOR EFFICIENT IDM DEVELOPMENT

Managing Change and Complexity

Restricted Use Case Modeling Approach

TDDD04: Integration and System level testing. Lena Buffoni

Transcription:

Architectural Modeling in SysML A Practical Approach to Mapping Functions to Logical Architectural Variants Michael J. Vinarcik, ESEP-Acq, OCSMP-Model Builder Advanced Booz Allen Hamilton National Defense Industrial Association 18 th Annual Systems Engineering Conference October 26-29, 2015

Engineers Love Models! What is a Model? A simplified or idealized description or conception of a particular system, situation, or process, often in mathematical terms, that is put forward as a basis for theoretical or empirical understanding, or for calculations, predictions, etc.; a conceptual or mental representation of something. Freq. with modifying word. Oxford English Dictionary Why do engineers love them? Reality is often too complicated to deal with directly; abstraction hides complexity and facilitates analysis. Models Provide Cognitive Leverage

SysML: Systems Modeling Language In 2001, the International Council on Systems Engineering established a Model Driven Systems Design workgroup to customize UML for systems engineering. By 2006, OMG adopted OMG SysML (the current version is 1.4, adopted in March 2014). SysML provides for the following diagram types, with numerous relationship available between model elements: Behavioral Diagrams: Use case, Activity, Sequence, State Machine Structural Diagrams: Block Definition, Internal Block, Package Other Diagrams: Requirements, Package

The System Model Other system modeling languages exist, but SysML is the most widelyadopted and has a thriving tool ecosystem. A well-constructed system model unambiguously represents a system s behavior, structure, and interrelationships between elements. It also fosters a crispness in the formulation of issues (according to David Miller, NASA Chief Technologist). In addition, current SysML tools allow the model content to be expressed as tables, matrices, and other derivative work products.

Behavior is at the Heart of Design Systems may be characterized by: The elements of which they are composed The relationships and interactions between those elements The behaviors the system exhibits Note that systems typically exhibit more functions/behaviors than the component parts can provide individually (otherwise there would be no reason to assemble them into the system). It is the desired behaviors (and the conditions under which they are exhibited) that are at the heart of design. All requirements are derived products that seek to characterize and communicate the desired behaviors and associated parameters.

Rigorously Define Behavior In order to effective design a system, then, one must fully understand the desired behaviors it must exhibit. As the behaviors are understood, they must be clearly and unambiguously described. This description can then serve as a basis for the creation/derivation of functional and performance requirements.

Property-Based Requirements In Model Based Systems Engineering: Fundamentals and Methods (ISBN: 978-1-84821-469-9), Patrice Micouin proposes that all requirements are either: Structural: related to the composition and structure of a system Behavioral: related to the behavior/functions of a system Mixed: a combination of the above types He also proposed a property-based requirements model that eliminates the ambiguity associated with text-based requirements (including a syntax for capturing the conditions under which a system must exhibit its functions).

Functional Decomposition Functional decomposition is a cornerstone of systems engineering processes. Many methods have been used, including functional-flow block diagrams (FFBDs) and IDEF0. SysML activity diagrams can be used to fulfill this role and have the added advantage of being easily allocated to logical architectural variants. This enhances the utility of the system model by facilitating reuse and endto-end traceability.

Use Case: The Foundation of Behavioral Understanding SysML Use Case Diagrams are a useful starting point for behavior modeling. They are simple, easy to understand, and allow the individual or team defining system behavior to sketch the relevant behaviors, actors, and interacting systems. This presentation will follow the decomposition of use cases associated with a common, everyday system: a BBQ grill.

Use Case Diagram: BBQ This diagram captures the basic behaviors a BBQ grill must exhibit Several adjacent systems are included (fuel, environment, food) It also includes bad actors : uninvited guests

Activity Diagram as Method Activity Diagrams may be attached to use cases as methods This enabled direct drill-down behavior in the modeling tool

Activity Diagram as Method This diagram is the method for Cook Food It includes a variety of activities with input/output parameters captured and expressed as object flows into and out of pins

Operations (Input/Output/Return) In SysML a function is represented by an operation Operations must be owned by a block Operations may have one or many inputs and outputs parameters Operations may also have only one return parameter

Functional Blocks for the BBQ Grill

Every Activity is a Call Operation In this approach, every activity node on an activity diagram is a call operation node. If further decomposition is required, a method may be attached to a given operation. This mirrors the typical functional decomposition table with the added benefit of the richness of expression possible (and/or, time events, interrupts, logical branching, etc.).

Call Operation Example Combust Fuel is owned by Cooking Functions Its inputs are Oxygen and Fuel Its outputs are Smoke, Heat, and Ash

Input/Output Table

Logical Block Logical Elements are typed with the <<logical>> stereotype. They are then associated with functional blocks via the generalization relationship. This allows them to inherit the operations from the functional block (as well as functional requirements satisfied by the operations and any other requirements or model elements linked to the functional block).

The User Logical Block

Physical Block Physical Blocks are similar to logical blocks; they have the <<physical>> stereotype. They also may contain properties such as: Mass Length/Width/Height Other physical properties Note that they may also inherit attributes and relationships from other blocks.

Physical Operator Block

Advantages of Generalization/Specialization No allocations: Blocks own their functions and attributes. Inheritance of relationships: Functional requirements are satisfied by operations; if a block inherits a function, it also inherits this relationship Other relationships (such as value properties satisfying performance requirements) also inherit No allocation relationships are needed simplifying the modeling effort.

Moving Functions Smoke Food moved to a new functional block

Logical Architecture Example

Pellet Grill Logical Architecture

Derived Work Product: Example Matrix

Conclusion Using operations is a flexible and straightforward way to accomplish functional decomposition. Generalization relationships may be used to inherit functions, requirements, and other relationships from each architecture to the next (functional to logical to physical). Derived work products, such as tables and matrices, may be used to manage these relationships and ensure coverage and traceability.