Download presentation
Presentation is loading. Please wait.
1
Software modeling for embedded systems: static and dynamic behavior
2
Important concepts in embedded systems: --concurrency: the system can handle multiple active independent or cooperating objects at the same time --thread [of control]—models sequential execution of a set of instructions; embedded system may have several concurrent threads operating simultaneously --persistence—how long does a software object last? Examples: Temporary variable Global variable Software module
3
table_05_00 Recall: “UML” syntax can vary among implementations; Previously we looked at one implementation, here we consider examples from the text
4
fig_05_00 UML: Use case diagram (graphical)
5
fig_05_01 UML Use case diagram--example
6
fig_05_02 UML: Use case diagram (text); note exceptions
7
UML—static modeling
8
fig_05_03 UML: Class diagram (“CRC card”) Class name data Methods (responsibilities and collaborators) (+ collaborators)
9
fig_05_04 UML: class relationships: inheritance
10
fig_05_05 UML: “interface”—similar to inheritance but different public appearance Hidden operation
11
fig_05_06 UML: containment of one class within another Type 1: aggregation—statistical analysis has a number of algorithm “parts”
12
fig_05_07 UML: containment of one class within another Type 2: composition—here the intervals are meaningless outside the schedule (~ “local variables”)
13
UML—dynamic modeling
14
fig_05_08 UML: interaction diagram—call and return
15
fig_05_09 UML: interaction diagram—create and destroy
16
fig_05_10 UML: interaction diagram—send (no response expected)
17
fig_05_11 UML: sequence diagram: sequence of actions; carries out a use case
18
fig_05_12 UML sequence diagram--example
19
fig_05_13 UML: concurrent behavior. Example: fork and join
20
fig_05_14 UML: concurrent behavior. Example: branch and merge
21
fig_05_15 UML activity diagram—captures all actions and control flows within a task
22
fig_05_16 UML state machine models--4 types of events: UML state chart is a directed graph
23
fig_05_18 UML state chart: types of transitions initial state final state
24
fig_05_19 UML state chart: actions and guard conditions If guard condition is false, transition does not happen
25
fig_05_20 UML: can decompose state into sequential substates
26
fig_05_21 UML: can define a “history” state (e.g., for an interrupt)— system will probably eventually return to this state
27
fig_05_22 UML: can have concurrent substates
28
UML is a tool for a structured design methodology It helps manage the design and development process We can also look at modifying / refining the PROCESS itself CMM : capability maturity model-- defines level of the development process itself 1. Initial: ad hoc 2. Repeatable: basic project management processes in place 3. Defined: documented process integrated into an organization-wide software process 4. Managed: detailed measures are collected 5. Optimizing--desired level: Continuous process improvement from quantitative feedback
29
UML is a tool for a structured design methodology It helps manage the design and development process We can also look at modifying / refining the PROCESS itself CMM : capability maturity model-- defines level of the development process itself 1. Initial: ad hoc 2. Repeatable: basic project management processes in place 3. Defined: documented process integrated into an organization-wide software process 4. Managed: detailed measures are collected 5. Optimizing--desired level: Continuous process improvement from quantitative feedback
30
fig_05_23 Another methodology: control flow and data flow diagrams (Note: in a processor we usually have a data path and a control path)
31
fig_05_24 Control and data flow diagrams: tasks (with hierarchy levels)
32
fig_05_25 Control and data flow diagrams: Data sources and sinks
33
fig_05_26 Control and data flow diagrams: Data stores
34
fig_05_27 Control and data flow diagrams: Example
35
fig_05_28 Control and data flow diagrams: Hierarchical view of an input / output task
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.