Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of.

Slides:



Advertisements
Similar presentations
Introduction to Object Orientation System Analysis and Design
Advertisements

Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Use Case Modeling SJTU. Unified Modeling Language (UML) l Standardized notation for object-oriented development l Needs to be used with an analysis and.
Ch 12: Object-Oriented Analysis
1 Chapter 4 Dynamic Modeling and Analysis (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis H.K. Tsang, Clarence.
Sequence Diagrams. Introduction A Sequence diagram depicts the sequence of actions that occur in a system. The invocation of methods in each object, and.
CS3773 Software Engineering Lecture 03 UML Use Cases.
1 Chapter 4 Dynamic Modeling and Analysis (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis H.K. Tsang, Clarence.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 5, Analysis: Dynamic Modeling.
1 SWE Introduction to Software Engineering Lecture 25 – Object-Oriented Design (Chapter 14)
1 Objectives To introduces the concept of software Design. To introduce the concept of Object- Oriented Design (OOD). To Define various aspects about object.
Project Doors Group Doors 3 Presenters: Becky Smith, Tim Hollosy Demo Given by: Tim Hollosy.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented design 2.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
Analysis of Requirements Developed by Gretel Coombs VESL Project - NSF Grant under the direction of Dr. Betty Cheng.
UML Sequence Diagrams Eileen Kraemer CSE 335 Michigan State University.
Embedded Systems: Review and OMT modeling Slides by Gretel Coombs and Betty H.C. Cheng.
Object-Oriented Analysis
Marcelo Santos – OOAD-CDT309, Spring 2008, IDE-MdH 1 Object-Oriented Analysis and Design - CDT309 Period 4, Spring 2008 More on use cases System sequence.
Case Study: Class Extraction.
1 Lab Beginning Analysis and Design 4 Completion of first version of use case diagram initiates the processes of analysis and design. 4 UML provides.
Unified Modeling Language
Objects What are Objects Observations
OO Analysis and Design CMPS OOA/OOD Cursory explanation of OOP emphasizes ▫ Syntax  classes, inheritance, message passing, virtual, static Most.
Data Flow Diagrams.
程建群 博士(Dr. Jason Cheng) 年03月
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 25. Review Design Level Class Diagram Identifying classes/Operations/Attributes Associations – Simple associations.
Systems Analysis and Design in a Changing World, Fifth Edition
CSC 395 – Software Engineering Lecture 13: Object-Oriented Analysis –or– Let the Pain Begin (At Least I’m Honest!)
Approaching a Problem Where do we start? How do we proceed?
Systems Analysis & Design 7 th Edition Chapter 5.
An Introduction to the Unified Modeling Language
Lecture 1: Introduction to Software Engineering WXGE6103 Software Engineering Process and Practice Object-oriented Design.
SWT - Diagrammatics Lecture 4/4 - Diagramming in OO Software Development - partB 4-May-2000.
1 Kyung Hee University Statecharts Spring Kyung Hee University Specifying Objects’ Behaviour  Interaction diagrams show message-passing behaviour.
THE ANALYSIS WORKFLOW  The specification document  Informal specifications  The analysis workflow  Extracting the entity classes  Functional modeling:
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
1 LAB What is Collaboration diagram? 4 Collaboration diagrams illustrate the interaction between the objects, using static spatial structure. 4.
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design,
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Chapter 5 – System Modeling Lecture 9 Section A 27/4/2015 Section B 29/4/2015 1Chapter 5 System modeling.
Object Modeling THETOPPERSWAY.COM. Object Modelling Technique(OMT)  Building a model of an application domain and then adding implementation.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Appendix A Object-Oriented Analysis and Design A.1.
1 After the scenarios are formulated Find all the use cases in the scenario Describe each of these use cases in more detail Participating actors Describe.
CHAPTER 6 OBJECT ANALYSIS.
1 Object-Oriented Static Modeling of the Banking System - III Lecture # 33.
Chapter 5 – System Modeling Lecture 1 1Chapter 5 System modeling.
Design Review.
Systems Analysis and Design in a Changing World, Fourth Edition
Appendix 3 Object-Oriented Analysis and Design
Case Study -- Weather system
Object-Oriented Analysis and Design
Dynamic Modeling of Banking System Case Study - I
Unified Modeling Language
Object-Oriented Static Modeling of the Banking System - I
Subject Name: Object oriented Modeling and Design
Rumbaugh’s Objectmodeling Technique
Chapter 5 – System Modeling
Chapter 8: Modelling Interactions and Behaviour UML Activity Diagram
Object Oriented System Design
University of Houston-Clear Lake
Chapter 20 Object-Oriented Analysis and Design
CIS 375 Bruce R. Maxim UM-Dearborn
Appendix A Object-Oriented Analysis and Design
Design and Implementation
Object and class structuring
CIS 375 Bruce R. Maxim UM-Dearborn
Chapter 4 System Modeling.
Presentation transcript:

Embedded Systems Details

Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of the system. Takes input from the sensors and gives instructions to the actuators. Sensor object environmental objects that gives information to controller. Can be passive (thermometer) or active (button).

Object Model: Four main system objects (continued) Actuator object Environmental objects that are controlled by the controller. Can be turned on or influenced by controller. Examples: User indicator lights, motors, burners. User Interface object A display for the user. Can be made up of both sensors and actuators. Example: machine control panel

Step One: Develop a high-level object model Embedded System Sensor ControllerActuatorUser-Interface Class Association Aggregation Inheritance Zero or more Operation() Attribute() Class Name ButtonPedal * ** *

Review of Dynamic Model A dynamic model is a type of state machine. System can only be in one state at a time. Arrows: Transitions from one state to another happen when events happen. Events are labeled on the transitions. Guards are conditions that keep a transition from happen, such as [is in neutral or park ]

Step Two: Develop a system- level dynamic model Idle or off state Running state ‘On’ button pushed [in neutral or park] ‘Off’ button pushed Transition State [ condition ] Guard

Example: Automotive Door Control The system controls the windows and door locking functions. All doors have window roll up and down controls. Driver’s door has window lock feature. Driver and front passenger have door lock and unlock toggle. Fob unit for locking and unlocking doors, with driver notification (horn honk and lights flash.) Three concurrent systems identified.

Summary of development process The object model shows the real world objects grouped in classes with attributes and operations and associations. The dynamic model shows the control aspects with superstates refined into substates.

Embedded Systems Design More Detail on Process

Review of Embedded Systems Software controller that is interacting with its hardware environment through sensors and actuators. Concurrency and real time issues. Safety critical nature of many of these systems. Increased demand for these systems to be designed well.

High level design: Initial thoughts for embedded systems. Assume there is a hardware environment. Assume that somehow the needed signals are coming from the environment (sensors.) Assume the needed hardware is there to respond to your signals (actuators.)

Object Model In UML the object model is the starting place for the modeling process. The object model will include objects and their relationships. The Object Model will be the static, structural aspect of the system. Class attribute operation

Identify Real World Objects Read over the problem description and find the nouns in the text. These nouns are candidates for objects in your object model. Discard unnecessary and incorrect classes. Object classes will include the controller (software unit that will be built), sensors, and actuators.

Data Dictionary: needs to be written A written paragraph describing each modeling entity. Needed so that names are non-ambiguous.

Class: Sensor Because of the common properties of all sensors, this can be a class of objects, called a superclass. Generalization - this superclass can be generalized into subclasses. Inheritance - each subclass will inherit the properties or features from the superclass. Examples: user interface (buttons etc), thermometers, hardware sensors.

Class: Actuator Similarly the actuators will probably become a superclass. Generalization - The various actuators can be generalized into subclasses. Inheritance - each actuator subclass will inherit properties or features from the superclass. Examples: LEDs, motor controls, etc.

The Controller At an abstract level, this would be only one object in most embedded systems. This object would be refined at lower levels of the modeling process into subsystems or sub-objects. Aggregation could be used to show the parts of the controller.

Model itself Graphically a class is shown as a box with the name on top. Attributes (middle third) and operations (bottom third) added eventually. Attributes and operations are not needed for high- level object model. Class attribute operation

Find the Associations Interaction between objects must be shown by associations or lines draw with labels. ex: line between user button and associated LED. Many times these associations will be a physical connection between objects in an embedded system. Multiplicity must be shown eventually.

Example Controller Actuators Sensors Water level User buttons MotorLED reads turned on by **

Conclusion about Object Model: Not very complex at first. More details will come as designer proceeds from abstraction to more and more concreteness. controller will be divided into more objects attributes and operations are identified and included. Starting place for OO Modeling. Sets the stage.

Next step: Dynamic Model The dynamic model shows the control aspect of the system. Because embedded systems are mainly controllers, the dynamic model is the ‘key’ model for embedded systems. This model can show the timing aspects. Shows sequence of operations in response to external stimuli.

Getting started on a Dynamic Model Helpful to make a scenario: sequence of events that happens in one execution of a system. Example: insert coins, make selection, pop dispensed. Interface (high-level prototyping) a rough draft of user interface will help thinking about the events in an embedded system.

Interface (type of rapid prototyping) clearentercancel receiptscash slot ATM interface from Figure 8.17 by Rumbaugh

continue getting started…. Next make an event trace. each object is a vertical line. events as horizontal arrow. time goes from top to bottom. Use previously discussed ‘creation tips.’

Example of an Event Trace User ATMConsortiumBank insert card request password enter password verify account verify card with bank bank account OK account OK request kind enter kind request amount enter amount process transaction process bank transactions bank transaction succeeds Example from Figure 8.18 of Rumbaugh Event trace for ATM scenario