2 Introduction to MBSE

pdf

School

The University of Sydney *

*We aren’t endorsed by this school

Course

5620

Subject

Electrical Engineering

Date

Oct 30, 2023

Type

pdf

Pages

40

Uploaded by MateCaribou3742

Report
The University of Sydney Page 1 Week 2: Introduction to MBSE Presented by Dong YUAN School of Electrical and Information Engineering dong.yuan@sydney.edu.au
The University of Sydney Page 2 Content Project Theme Introduction to Model Based Software Engineering
The University of Sydney Page 3 About the recent development in AI AI Machine Learning Neural Networks () Deep Learning (DNN) LLM
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 4 Large Language Models -> AGI Development of IT in recent 10 years Cloud -> Big Data -> AI/5G -> IoT/Edge Computing applications XaaS becomes the main way for delivering/using applications AGI refers to highly autonomous systems that outperform humans at most economically valuable work. AGI possesses human-like cognitive abilities, as opposed to specialized tasks of Narrow AI. AGI could revolutionize industries, science, and society.
The University of Sydney Page 5 Applications of LLMs Natural Language Understanding Language Translation Named Entity Recognition: Identifying names, places, and more. Sentiment Analysis: LLMs gauge emotions from text data. Content Generation LLMs generate articles, stories, and essays. Crafting engaging and relevant social content. Automated writing for e-commerce platforms. Chatbots and Virtual Assistants LLMs provide instant, personalized responses, and answering queries from vast text sources. Avatar, Natural interactions with AI-driven systems.
The University of Sydney Page 6 Applications of LLMs (cont.) Creative Writing and Art LLMs compose poetry in various styles. Crafting narratives, plots, characters, dialogues. Educational Aids Learning Resources: LLMs generate customized educational content. Summarizing complex topics for students. Language Learning: Contextual language exercises and examples. Accessibility Text-to-Speech: Converting written text into spoken words. Audiobook Production: LLMs narrate books for the visually impaired. LLMs as transformative tools in communication and understanding. Etc.
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 7 Issues of Ethic, Safety, Security, etc. Ensuring responsible use to prevent misinformation Handling sensitive data and personal information Preventing accidental leaks in generated text Masking sensitive information Ensuring LLM applications are fair and unbiased Etc.
The University of Sydney Page 8 Content Project Theme Introduction to Model Based Software Engineering
The University of Sydney Page 10 Abstraction => Model Thing Model of Thing abstraction Abstraction is forgetting (some) details
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 11 Level of Abstraction Problem Domain Machine HLL Problem Domain Machine HLL Model Abstraction using Model "A programming language is low level when its programs require attention to the irrelevant.” - Alan J. Perlis
The University of Sydney Page 12 What is a Model?
The University of Sydney Page 13 What is a Model? A Model… is a representation of a part of function, structure, behaviour of a system is a simplification of a system information, abstraction, specification can answer question in place of actual system inference, prediction is used for a purpose planning, design, risk analysis, testing
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 14 Overview MBSE The Problem The Premise The Results
The University of Sydney Page 15 The Enemy: Complexity Modern software systems are reaching levels of complexity comparable to those of biological systems System of system It causes problems and errors in system planning, architectural design and development. Projects fail, miss their deadlines or exceed their budgets. Building a complex system is always connected to a risk of mistakes and missed requirements. Humans are intrinsically prone to errors when handling too many details.
The University of Sydney Page 16 Fred Brooks on Complexity [From: F. Brooks, “The Mythical Man - Month”, Addison Wesley, 1995] Essential complexity inherent to the problem cannot be eliminated by technology or technique simple solutions would not adequately solve the problem Accidental complexity due to implementation technology or methods used to solve the problem ineffective planning or project management, a mismatching or immature implementation technology
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 17 Accidental Complexity can be avoidable One of the main tasks in software engineering is to discover means to minimize accidental complexity. Raising the level of abstraction of the technology used for software development is one of the basic means for guarding against accidental complexity. Margaret Hamilton Mother of software engineering
The University of Sydney Page 18 SC_MODULE(producer) { sc_outmaster<int> out1; sc_in<bool> start; // kick-start void generate_data () { for(int i =0; i <10; i++) { out1 =i ; //to invoke slave;} } SC_CTOR(producer) { SC_METHOD(generate_data); sensitive << start;}}; SC_MODULE(consumer) { sc_inslave<int> in1; int sum; // state variable void accumulate (){ sum += in1; cout << “Sum = “ << sum << endl;} SC_CTOR(consumer) { SC_SLAVE(accumulate, in1); sum = 0; // initialize }; SC_MODULE(top) // container { producer *A1; consumer *B1; sc_link_mp<int> link1; SC_CTOR(top) { A1 = new producer(“A1”); A1.out1(link1); B1 = new consumer(“B1”); B1.in1(link1);}}; Can you see what this program is about? Back to “Modern” Software
The University of Sydney Page 19 …Corresponding UML Model « sc_slave » b1 :Consumer « sc_method » a1: Producer start out1 in1 Can you see it now?
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 20 SC_MODULE(producer) { sc_outmaster<int> out1; sc_in<bool> start; // kick-start void generate_data () { for(int i =0; i <10; i++) { out1 =i ; //to invoke slave;} } SC_CTOR(producer) { SC_METHOD(generate_data); sensitive << start;}}; SC_MODULE(consumer) { sc_inslave<int> in1; int sum; // state variable void accumulate (){ sum += in1; cout << “Sum = “ << sum << endl;} SC_CTOR(consumer) { SC_SLAVE(accumulate, in1); sum = 0; // initialize }; SC_MODULE(top) // container { producer *A1; consumer *B1; sc_link_mp<int> link1; SC_CTOR(top) { A1 = new producer(“A1”); A1.out1(link1); B1 = new consumer(“B1”); B1.in1(link1);}}; The Program and Its Model « sc_slave » b1 :Consumer « sc_method » a1: Producer start out1 in1 «sc_link_mp» link1
The University of Sydney Page 21 Overview The Problem The Premise The Results
The University of Sydney Page 22 Why Do Engineers Build Models? To understand …the interesting characteristics of an existing or desired (complex) system and its environment To predict …the interesting characteristics of the system by analysing its model(s) To communicate …their understanding and design intent (to others and to oneself!) To specify ...the implementation of the system (models as blueprints)
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 23 Engineering Models Engineering model: A selective representation of some system that captures accurately and concisely all of its essential properties of interest for a given set of concerns We don’t see everything at once What we do see is adjusted to human understanding Architects view Plumber’s view Electrician's view Designer ’s view Builder ’s view
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 24 sc_outmaster<int> out1; sc_in<bool> start; // kick-start for(int i =0; i <10; i++) { out1 =i ; //to invoke slave;} SC_METHOD(generate_data); int sum; // state variable << “Sum = “ << sum << endl;} SC_MODULE(producer) { sc_outmaster<int> out1; sc_in<bool> start; // kick-start void generate_data () { for(int i =0; i <10; i++) { out1 =i ; //to invoke slave;} } SC_CTOR(producer) { SC_METHOD(generate_data); sensitive << start;}}; SC_MODULE(consumer) { sc_inslave<int> in1; int sum; // state variable void accumulate (){ sum += in1; cout SC_MODULE(producer) { sc_outmaster<int> out1; sc_in<bool> start; // kick-start for(int i =0; i <10; i++) { out1 =i ; //to invoke slave;} } SC_CTOR(producer) { SC_CTOR(consumer) SC_SLAVE(accumulate, in1); sum = 0; // initialize SC_MODULE(top) // container { sc_link_mp<int> link1; A1 = new producer(“A1”); B1 = new consumer(“B1”); SC_MODULE(producer) { sc_outmaster<int> out1; sc_in<bool> start; // kick-start void generate_data () { for(int i =0; i <10; i++) { out1 =i ; //to invoke slave;} } SC_CTOR(producer) { SC_METHOD(generate_data); sensitive << start;}}; SC_MODULE(consumer) int sum; // state variable SC_CTOR(consumer) { SC_SLAVE(accumulate, in1); sum = 0; // initialize }; SC_MODULE(top) // container { producer *A1; consumer *B1; sc_link_mp<int> link1; SC_CTOR(top) { A1 = new producer(“A1”); A1.out1(link1); B1 = new consumer(“B1”); B1.in1(link1);}}; SC_CTOR(consumer) { SC_SLAVE(accumulate, in1); sum = 0; // initialize }; SC_MODULE(top) // container sc_link_mp<int> link1; SC_CTOR(consumer) SC_SLAVE(accumulate, in1); sum = 0; // initialize SC_MODULE(top) // container sc_link_mp<int> link1; A1 = new producer(“A1”); A1.out1(link1); B1 = new consumer(“B1”); B1.in1(link1);}}; SC_CTOR(consumer) SC_SLAVE(accumulate, in1); sum = 0; // initialize }; SC_MODULE(top) // container producer *A1; consumer *B1; sc_link_mp<int> link1; SC_CTOR(top) { A1 = new producer(“A1”); A1.out1(link1); B1 = new consumer(“B1”); B1.in1(link1);}}; SC_MODULE(producer) { sc_outmaster<int> out1; sc_in<bool> start; // kick-start void generate_data () for(int i =0; i <10; i++) { out1 =i ; //to invoke slave;} SC_METHOD(generate_data); sensitive << start;}}; SC_MODULE(consumer) { sc_inslave<int> in1; int sum; // state variable void accumulate (){ sum += in1; cout << “Sum = “ << sum << SC_CTOR(consumer) SC_SLAVE(accumulate, in1); sum = 0; // initialize }; SC_MODULE(top) // container { producer *A1; What About Software? An abstract representation of a software system Comp1 Arbiter Comp2 Comp3 Display
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 25 Models of Software Software model : An engineering model (specified using a modeling language) of some software that represents: 1. Design-time views of the software: The structure and content of the software specification 2. Run-time views of the software: the structure and behavior of the software in execution B A B 0..* C 0..1 0..* «import» 0..* Left Right m1 m4 m2 m3 One of the primary motives for many modeling languages is the need to more clearly represent software in execution Design-time view Run-time view
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 26 refine NotStarted Started start producer Modern MBSE Development Style Models can be refined continuously until the application is fully specified the model becomes the system that it was modeling! « sc_method » producer start out1 NotStarted Started start producer St1 St2 void generate_data() {for (int i=0; i<10; i++) {out1 = i;}} /generate_data( )
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 27 A Unique Feature of Software A software model and the software being modeled share the same medium the computer Which also happens to be our most advanced and most versatile automation technology Software has the unique property that it allows us to directly evolve models into implementations without fundamental discontinuities in the expertise, tools, or methods !
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 28 The Model-Based Engineering (MBE) Approach An approach to system and software development in which software models play an indispensable role Based on two time-proven ideas: switch (state) { case‘1:action1; newState(‘2’); break; case‘2:action2; newState(‘3’); break; case’3:action3; newState(‘1’); break;} (2) AUTOMATION S1 S3 S2 e1/action1 e2/action2 e3/action3 switch (state) { case‘1:action1; newState (‘2’); break; case‘2:action2; newState (‘3’); break; case’3:action3; newState (‘1’); break;} (1) ABSTRACTION S1 S3 S2 e1/action1 e2/action2 e3/action3 Realm of modeling languages Realm of tools
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 29 The Concept of “Platform Independence”? A highly desirable objective Separation of concerns focus on the functionality and behaviour of a system Enables portability 29 “Platform Independent” Software Application Computing Platform N Computing Platform 2 Computing Platform 1 . . . «deploy» «deploy» «deploy» Does “platform independence” mean that we can ignore platform concerns when designing our application?
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 30 MBE Opportunity: Code Generation The accidental complexity of current programming languages can be greatly reduced by the appropriate use of computer-based automation 30 S1 S3 S2 e1/action1 e2/action2 e3/action3 switch (state) { case‘1:action1; newState (‘2’); break; case‘2:action2; newState (‘3’); break; case’3:action3; newState (‘1’); break;} NotStarted Started start St1 St2 …and what about more advanced modeling languages?? Automatic code generation BUG
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 31 MBE Opportunity: Exploiting Formal Methods Given the possibility of making modelling language constructs better behaved than programming language constructs, it is possible to exploit formal methods for modelling language, which is impossible for programming languages because they could not handle the semantic complexity of programming languages . E.g., State machines, Petri nets Model checking, theorem proving We need to work on formal semantics of modeling languages
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 32 Learning From Models X = cos (h + p/2) + x*5 X = cos (h + p/2) + x*5 ? By formal analysis reliable (provided the models are accurate) ? X = cos (h + p/2) + x*5 X = cos (h + p/2) + x*5 By execution more reliable than inspection direct experience/insight X = cos (h + p/2) + x*5 X = cos (h + p/2) + x*5 ? By inspection mental execution unreliable
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 33 MBE Opportunity: Model Execution D. Harel: “Models that are not executable are like cars without engines” Ability to execute a model on a computer and observe its behavior Key capabilities Controllability: ability to start/stop/slow down/speed up/drive execution Observability: ability to view execution and state in model (source) form Partial model execution: ability to execute abstract and incomplete models Executable specifications: overcoming the limitation of paper- based specifications
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 34 MBE Opportunity: Model Transformations Multiple purposes: Model viewing: abstraction and refinement Domain-to-domain model transformations: e.g., UML to queuing network model Model-to-code transformations (code generation) Standard: OMG’s Queries, Views, and Transformations (QVT) We need a comprehensive theory of model transformations comparable to compiler theory
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 35 Styles of MBSE “Who cares about the code?” Model Model only “What’s a model?” Code Code only “The code is the model” Model Code Code Visualization visualize “The model is the code” Model Code Model-centric generate Levels of Abstraction Automation Time “Manage code and model” Model Code Round Trip Engineering synchronize
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 36 Overview The Problem The Premise The Results
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 37 Major Telecom Equipment Manufacturer MBE technologies used UML, Rational Technical Developer, Rational Unified Process Example 1: Radio Base Station 2 Million lines of C++ code (87% generated by tools) Example 2: Network Controller 4.5 Million lines of C++ code (80% generated by tools) Benefits a. fewer bugs b. productivity increase
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 38 Copilot AI pair programmer from OpenAI https://copilot.github.com/ Translate natural language to code Trained by the GPT-3 model
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 39 If this stuff is so good, why isn’t everybody doing it?
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
The University of Sydney Page 40 Root Causes of Low Adoption Rate Categories of impediments Technical problems: modelling language lacks of mathematical foundations. Social/Cultural issues :e.g. Many practitioners remain unaware of the potential and achievements of MBE Economic factors: e.g. Markets focus on short-term return on investment
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
Thank you! End
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help

Browse Popular Homework Q&A

Q: The mass of Pluto is 1.31E+22 kg, and it's radius is 1.15E+3 km. What is the escape velocity from…
Q: MATCHING: Identify the study components What is the OPERATIONAL DEPENDENT variable? What is the…
Q: Suppose f: A → B is an injection g= B → C is a surjection. Must and gof: A ⇒ C your answer. be an…
Q: Suppose V,W are subspaces of R^n. Let V ∩ W be all vectors which are in both V and W. Show that V ∩W…
Q: A circuit with series and parallel connection has, Vsupply = 24 Volt, resistors, R₁= 600 , and two…
Q: 21. Solve the following problems, stating answers to the proper number of significant figures: (a)…
Q: What does the document say when a state is attacked by "force?" (Articles of Confederation)
Q: explain how Ida B. Wells's work impacts your life today
Q: 8. Spherical Au nanoparticles with a diameter of 4 nm are known to crystallize into fcc…
Q: 1. Using induction, prove that 2 (^(^^!) ) ² २ 2 3=1 J 3
Q: Curved arrows are used to illustrate the flow of electrons. Using the provided resonance structures,…
Q: son Irum works in a busy medical office. A colleague, Molly, makes life miserable for her and the…
Q: Rodica is interested in creativity. She spe and suspects that it depends in part on d negative…
Q: Exercise 4.10.20 Are the following vectors linearly independent? If they are, explain why and if…
Q: The time between calls to a plumbing supply business is exponentially distributed with a mean time…
Q: An open tank is filled with a liquid that has a specific gravity of 1.154 and the liquid exerts a…
Q: The lengths of Atlantic croaker fish are normally distributed, with a mean of 10.5 inches and a…
Q: Elmo, Incorporated is a U.S. corporation with a branch office in foreign country Z. During the…
Q: What interventions could be utilized to overcome these challenges of treating polycythemia with With…
Q: A research center poll showed that 80% of people believe that it is morally wrong to not report all…
Q: An IQ test is designed so that the mean is 100 and the standard deviation is 13 for the population…
Q: Disk brakes, such as those in your car, operate by using pressurized oil to push outward on a…