© 2013 Systems and Proposal Engineering Company. All Rights Reserved Innoslate® Webinar Functional Modeling and Simulation October 24, 2013 For a complete white paper on this topic see www.innoslate.com/help. © 2013 Systems and Proposal Engineering Company. All Rights Reserved Want to Follow Along? • If you do not already have an Innoslate account, create a free one at innoslate.com. – The Free Version allows up to 200 entities. 1 © 2013 Systems and Proposal Engineering Company. All Rights Reserved What is Functional Modeling and are representations that can aid in Simulation? “Models defining, analyzing, and communicating a set of concepts.” From SE Body of Knowledge (SEBoK) • Functional modeling provides a means to understand the key steps in user and system processes • Functional modeling usually consists of: – Functional sequencing – Data flow between functions • A number of techniques (representations) have been developed over the years 2 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Some Functional Modeling Representations • Data Flow – IDEF 0 – N2 – Data Flow Diagram • Combined – – – – 3 Behavior (RDD-100) EFFBD (CORE) Activity (SysML) Action (Innoslate) • Functional Sequencing – Function Flow Block Diagram (FFBD) – IDEF 3 – State Machine – Sequence Is it better to look at the data and sequencing separately or together? © 2013 Systems and Proposal Engineering Company. All Rights Reserved State of Current “Languages” • In the past decade, the Unified Modeling Language (UML) and now the profile Systems Modeling Language (SySML) have dominated the discussion • Why? – Perception that software is “the problem” – Hence need for an “object” approach • SysML was designed to relate systems thinking to software development, thus improving communication between systems engineers (SE) and software developers 4 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Why Objects Are Not the Answer • Although SysML may improve the communication of design between SEs and the software developers it does not communicate well to anyone else – No other discipline in the lifecycle uses object oriented design and analysis extensively – Users in particular have little interest/acceptance of this technique – Software developers who have adopted Agile programming techniques want functional requirements (and resent SEs trying to write software) – Many software languages are hybrid object and functional 5 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Popular Software Languages Position Mar 2012 Position Mar 2011 Programming Language Ratings Mar 2012 Delta Mar 2011 Functional/ Object/Hybrid 1 1 Java 17.110% -2.60% Object 2 2 C 17.087% +1.82% Functional 3 4 C# 8.244% +1.03% Hybrid 4 3 C++ 8.047% -0.71% Hybrid 5 8 Objective-C 7.737% +4.22% Object 6 5 PHP 5.555% -1.01% Hybrid 7 7 (Visual) Basic 4.369% -0.34% Hybrid 8 10 JavaScript 3.386% +1.52% Functional 9 6 Python 3.291% -2.45% Hybrid 10 9 Perl 2.703% +0.73% Hybrid From http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html accessed 4/6/2012 Trend to hybrid functional and object 6 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Innoslate Supports LML’s Simplified Simplified schema reduces Schema start-up/training time • Action • Artifact • Asset Conduct logical decomposition and analysis • Input/Output • Location Conduct physical decomposition and analysis – Physical, Orbital, Virtual • Risk • Statement – Resource • Characteristic – Measure Capture verification and validation data • Connector • Cost Capture key • Decision stakeholder decisions 7 Designed with space in mind – Requirement • Time Capture requirements with quality measures However, Language is not enough, we also need a process for doing functional analysis © 2013 Systems and Proposal Engineering Company. All Rights Reserved Functional Analysis and Allocation Architecture Knowledgebase Develop/Revise Context Diagram Updated Architecture Knowledgebase Develop Series of Scenarios for Analysis Create/Update System Behavior Model Analyze Behavior Model Performance Determine Options and Perform Trade Studies Behavior Model • Control Flow • Data Flow (Activity Model) • Performance Criteria Identify Risks and Plan Mitigation Review Model and Risks with Customer Allocate Actions to Assets and Input/Outputs to Links 8 Detailed Operational Concept Updated Architecture Knowledgebase Operational Requirements Document (ORD) See System Analysis and Control for details © 2013 Systems and Proposal Engineering Company. All Rights Reserved Allocation • A simple mapping of actions to assets and inputs/outputs to connectors • Determine best ways to “package” functions into components • Determine the connectors that carry the “data” • Minimize interface requirements (i.e. data flows) between components 9 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Start a New Functional Model • Select New Entity: Action • You will see a Action entity input form • Fill-in name number and description to start 10 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Get New Action Diagram • Select “Action Diagram” under the diagrams menu • Result: new canvas for functional model creation 11 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Decomposing “Navigate Spacecraft” • Select and drag Action onto line between Start and End • Note it Turns Green • Then drop on line 12 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Decomposing “Navigate Spacecraft” (continued) • Use the sidebar to add the name, number, description and other attributes • Now let’s finish this initial decomposition by adding “Calculate Correction” and “Correct Position” 13 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Simulating “Navigate Spacecraft” • Now just select the Discrete Event simulator and click Start • We see a timeline of Actions 14 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Adding a Loop • Now clearly we want to have these actions occur until the course has been fully corrected, so we need to create a feedback loop • We do this by dragging a loop onto the line and then moving the existing actions inside the loop 15 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Simulating “Navigate Spacecraft” Again • Select the “Prompt Decisions” option and you will be asked for how many iterations of the loop are desired • Type in the number you want and hit “Submit” 16 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Resulting Simulation • We can see that the simulator has performed 5 iterations • But how does this help us? – Validates that model executes – Allows us to begin deriving performance requirements 17 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Next Level Decomposition • Now let’s decompose “Calculate Correction” assuming that multiple (5) computers will be used as a necessary redundancy • We begin by adding a SYNC action and 3 additional branches 18 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Finishing the Decomposition • Now we fill in the name of the Sync action and add action for each computer • Although these are essentially the same action, we model them separately so their execution can provide different results 19 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Adding Input/Outputs • Now let’s add Input/Output entities to capture the data flow • Some will be triggers and others will be “optional” – Triggers must arrive before an action is executed 20 Select green circle on I/O and drag to action to create the relationship © 2013 Systems and Proposal Engineering Company. All Rights Reserved Finishing the Model • Use entity view for “Vote on Results” to change Delta P’s to optional • Add final output I/Os 21 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Other Functional Views – IDEF 0 • Fully interactive • Handles tunneling and other issues • Built-in rule checker 22 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Other Functional Views – N2 • Fully interactive 23 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Other Functional Views – Hierarchy • Fully interactive 24 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Simulation of the Total Model Prompt Decisions: 5 iterations 25 Now let’s run the simulator again and look at the results © 2013 Systems and Proposal Engineering Company. All Rights Reserved But How Realistic Is This Model? • All times are unrealistic – Either fixed times or simplistic distributions • Failure modes are not considered • How do we make it more realistic? – Adding additional branches and Actions – Adding scripts to capture decision point logic – Provide probability distributions for times 26 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Adding Failure Modes • Adding branches and Actions to represent offboard activities • Adding scripts for decision points 27 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Example Scripts • Sim Scripts available in Entity View under “More” • Uses JavaScript 28 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Adjusting the Time Probabilities 29 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Adding Probabilities in Decisions • Add random distributions for branching probabilities • Can adjust to realistic failure probabilities 30 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Execute Model with Failure Mode Now we can see the effect of the failure mode 31 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Executing with Monte Carlo 32 Executing 100 iterations of the model begins to show the effect of the individual distributions on the overall system © 2013 Systems and Proposal Engineering Company. All Rights Reserved Summary • Functional Modeling provides a means to capture processes and derive functional requirements • Simulation enables testing the logic to see that it works • Simulation can also be used to make the models more realistic and begin to derive performance requirements 33 © 2013 Systems and Proposal Engineering Company. All Rights Reserved Thank you for attending! • Follow us on Twitter @innoslate for more updates on the next webinar and on Innoslate 34
© Copyright 2024