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 48019-2122.

Slides:



Advertisements
Similar presentations
ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
Advertisements

Introduction to UML: Structural &Use Case Modeling
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Hydra (A General Framework for Formalizing UML with Formal Languages for Embedded Systems*) *from the Ph.D. thesis of William E. McUmber Software Engineering.
Alternate Software Development Methodologies
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
Amit, Keyur, Sabhay and Saleh Model Driven Architecture in the Enterprise.
Train Control Language Teaching Computers Interlocking By: J. Endresen, E. Carlson, T. Moen1, K. J. Alme, Haugen, G. K. Olsen & A. Svendsen Synthesizing.
Software Testing and Quality Assurance
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
1 Software Architecture: a Roadmap David Garlen Roshanak Roshandel Yulong Liu.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
CS 290C: Formal Models for Web Software Lecture 6: Model Driven Development for Web Software with WebML Instructor: Tevfik Bultan.
Model-based Analysis of Distributed Real-time Embedded System Composition Gabor Madl Sherif Abdelwahed
Purpose of Requirements Analysis Process of discover, refinement, modeling, and specification o Bridge gap between system level SW allocation and design.
5/24/011 Advanced Tool Integration for Embedded Systems Assurance Insup Lee Department of Computer and Information Science University of Pennsylvania.
MCA –Software Engineering Kantipur City College. Topics include  Formal Methods Concept  Formal Specification Language Test plan creation Test-case.
Software Engineering Tools and Methods Presented by: Mohammad Enamur Rashid( ) Mohammad Rashim Uddin( ) Masud Ur Rahman( )
UI/UI PROTOTYPE GENERATION Sum Pham. C ONTENTS Framework overview Current approaches Introduce a model-driven user interface generation.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Formal Methods 1. Software Engineering and Formal Methods  Every software engineering methodology is based on a recommended development process  proceeding.
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
UML - Development Process 1 Software Development Process Using UML (2)
Assessing the Suitability of UML for Modeling Software Architectures Nenad Medvidovic Computer Science Department University of Southern California Los.
Software Project Management Lecture # 7. What are we studying today? Chapter 24 - Project Scheduling  Effort distribution  Defining task set for the.
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
Presenter : Ching-Hua Huang 2013/7/15 A Unified Methodology for Pre-Silicon Verification and Post-Silicon Validation Citation : 15 Adir, A., Copty, S.
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
Verification and Validation in the Context of Domain-Specific Modelling Janne Merilinna.
Using Architecture and Analysis Design Language (AADL) to Independently Validate and Verify (IV&V) System Performance Requirements and Design Performance.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
1 Introduction to Software Engineering Lecture 1.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
UML Use Case Diagramming Guidelines. What is UML? The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing,
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Automata Based Method for Domain Specific Languages Definition Ulyana Tikhonova PhD student at St. Petersburg State Politechnical University, supervised.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Formal Methods.
Requirements Engineering-Based Conceptual Modelling From: Requirements Engineering E. Insfran, O. Pastor and R. Wieringa Presented by Chin-Yi Tsai.
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Prof. Hany H. Ammar, CSEE, WVU, and
Modelling the Process and Life Cycle. The Meaning of Process A process: a series of steps involving activities, constrains, and resources that produce.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
ANALYSIS PHASE OF BUSINESS SYSTEM DEVELOPMENT METHODOLOGY.
UML - Development Process 1 Software Development Process Using UML.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Yu, et al.’s “A Model-Driven Development Framework for Enterprise Web Services” In proceedings of the 10 th IEEE Intl Enterprise Distributed Object Computing.
Hardware/Software Co-Design of Complex Embedded System NIKOLAOS S. VOROS, LUIS SANCHES, ALEJANDRO ALONSO, ALEXIOS N. BIRBAS, MICHAEL BIRBAS, AHMED JERRAYA.
Introduction to Software Engineering 1. Software Engineering Failures – Complexity – Change 2. What is Software Engineering? – Using engineering approaches.
SECURE TROPOS Michalis Pavlidis 8 May Seminar Agenda  Secure Tropos  History and Foundation  Tropos  Basics  Secure Tropos  Concepts / Modelling.
1 Ontological Foundations For SysML Henson Graves September 2010.
Model Checking Early Requirements Specifications in Tropos Presented by Chin-Yi Tsai.
SysML 2.0 Formalism: Requirement Benefits, Use Cases, and Potential Language Architectures Formalism WG December 6, 2016.
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
SysML v2 Formalism: Requirements & Benefits
Software Design Methodology
Design Model Like a Pyramid Component Level Design i n t e r f a c d s
What is a software process?
Overview of the ETSI Test Description Language
Overview of the ETSI Test Description Language
Department of Computer Science Abdul Wali Khan University Mardan
Transaction Level Modeling: An Overview
Human Computer Interaction Lecture 14 HCI in Software Process
Software Development Process Using UML Recap
Presentation transcript:

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

OutlineOutline Motivation Project Goal and Objectives Our Approach Technology Integration Conclusion

MotivationMotivation e2e rt design is an important but hard problem because rt constraints: –Often cut across component and process boundaries. –Are awkward to specify, and reason about with current modeling tools. –Are often only considered at later stages of system development.

Motivations, cont ’ d At early stages of system analysis and design, only coarse-grained e2e timing constraints are know. Often designer has to manually derive intermediate rt constraints using heuristics, and specify them in the model, instead of specifying e2e constraints directly. Need to make e2e constraints easier to specify, reason about and verify or validate.

Project Goal Develop methods for effective e2e design and implementation of embedded rt systems. –Current design notations (UML,Simulink/Stateflow) usually do not allow designer to effectively express and reason about e2e constraints. –The loose semantics of UML allow the designer to specify almost anything in the design diagrams, most likely serving as comments. –Want to enhance UML with e2e design syntax and semantics, and integrate e2e analysis and validation tools into the UML design process.

ObjectivesObjectives Enable the designer to express behavior and rt constraints at a higher level, closer to domain knowledge and further away from implementation details. Automate the usually tedious process of deriving intermediate behavior and rt constraints from e2e requirements. Provide formal semantics for e2e extensions to enable effective formal analysis and simulation.

Proposed Approach Define graphical and textual syntax. –Extension to UML notation with a meta- modeling tool (possibly DOME from Honeywell). –XML-based text file format. Define rigorous semantics using a formal language, such as ACSR. Develop algorithms for automatic derivation of intermediate timing constraints from e2e constraints.

Proposed Approach, cont ’ d Develop effective and integrated tools to reason about, and validate e2e behavior and rt constraints. –Analysis at e2e behavior level instead of the component behavior level. –(Semi)-automatic derivation of intermediate task constraints from e2e constraints, possibly with interactive user guidance. –Integration of an rt analysis tool with a UML tool. Methodology for component-based e2e design.

Proposed Design Flow e2e functional and timing requirements Detailed Design of Subtasks Rigorous e2e Decomposition Schedulability Analysis (RMA or ACSR) Distributed Executables Download to Target Application Components Formal Verification (model checking) WCET Analysis Application Components High-level Costumer Requirements Code Generator Application WCET

Formal Semantics UML is an informal design notation without formal semantics. In order to rigorously validate e2e constraints with automatic tool support, we need to formalize the semantics of our e2e extensions to UML. ACSR is a process algebra that can model resource and rt constraints, so we plan to use it as a basis for formalization. Other formal languages are not ruled out at this point.

End-to-End Behavior UML Sequence Diagram can be used to specify e2e behavior, but –it does not have formal semantics. –interactions between different e2e transactions due to sharing of intermediate components are not apparent. –analysis techniques, such as model checking, are usually performed on component behaviors, i.e., at a more detailed level than e2e behavior. –It does not fulfill our needs.

e2e RT Constraints A transaction can be decomposed into sub- transactions that cooperate to fulfill e2e functional and timing requirements. Formal representation of e2e rt constraints will enable automatic derivation of intermediate constraints while taking into account the interference between different e2e transactions. Schedulability analysis can be performed after detailed timing constraints have been determined.

Partial Specification e2e specifications can capture only partial information of the system, enabling rapid iterations of specification and analysis. Or different sub-systems can be specified with different level of detail.This is an important benefit. Need to develop algorithms for validating the equivalence between high-level e2e specs and detailed design.

Methodology Development e2e design techniques can be an integral part of the software process, bridging the gap between high-level analysis and detailed design. Methodology development is essential for technology transfer. E2e design techniques naturally encourages iterative styles of development.

Integration & Collaboration We will collaborate with U Penn team, and make our results an integral part of the advanced tool integration. The concept of e2e design can also be applied to other design methods besides UML.

Project Milestones Year 1: Extend UML with e2e behavior and rt spec notations. Develop XML-based concrete format. Explore use of bi-simulation checking and model checking for e2e behavior of UML. Year 2: Define a runtime execution model in UML to facilitate schedulability analysis and conduct case studies. Explore automatic derivation of intermediate constraints from e2e constraints. Develop an initial methodology for technology integration. Year 3: Integrate the runtime execution model and simulation into the code generator of the enhanced UML tool.

Project Milestones Year 4: Perform a medium-size case study to access the new analysis techniques. Complete integration of our techniques into HASTEN tool suite. Complete methodology development. Year 5: Assess the developed technology on a realistic, large-scale system. Refine the methodology and improve analysis techniques for large scale systems. Quantify improvements in terms of shortened development cycle and improved product quality