25 april 2000 seescoaseescoa stww - programma software modeling techniques for embedded systems
TRANSCRIPT
25 April 2000
S
E
E
S
C
O
A STWW - Programma
Software Modeling Techniquesfor Embedded Systems
S
E
E
S
C
O
A
Overview
Aspects of Software Engineering
State of the Art in SE for ES
Selected Topics ARTiSAN ROOM ObjecTime Octopus
Summary
S
E
E
S
C
O
A
Software Engineering for Embedded Systems
Process
= Number of Steps + Guiding Path
Formalism – Notation – Diagram
Class, State, Sequence, Timing, Concurrency, System Architecture, Port Notation
Tool Support
Editors, Repositories, Simulators, Synchronization, Round-Trip / Reverse Engineering, Version Control
S
E
E
S
C
O
A
State of the Art
UML for Real-Time Within RTAD (part of OMG), companies are working on
UML-RT, but standard is NOT FINISHED
Concrete tools by different vendors use home-brewed recipes: I-Logix - RhapsodyARTiSAN - Realtime StudioObjecTime / Rational - ObjecTime Developer Rose Realtime
…
Other Methodologies SE methods developed in pre-UML era Recently OO-ified and UML-ified
Room integrated in Rose RealtimeOctopus Octopus/UML…
S
E
E
S
C
O
A
ARTiSAN’s UML for Real-Time
Focus: Extending UML-notations to accommodate needs of embedded systems design
Process Modeling requirements (Use Cases, Interaction Diagrams) Modeling architecture (Class, State, Concurrency, ...)
Extra’s System level concurrent task design Support for HW/SW co-design
Discussion RT constraints described with non-formal comments,
with limited tool support
Limited resource constraints
S
E
E
S
C
O
A
Sequence Diagram
S
E
E
S
C
O
A
Concurrency Diagram
S
E
E
S
C
O
A
System Architecture Diagram
Deployment Diagram
Solution Architecture Mapping
System Architecture Diagram
S
E
E
S
C
O
A
ROOM
Developed for telecommunication systems, defines process + notations
Process Standard software process, with focus on iterative development
Extra’s Port Notation Formal approach with controlled gaps allows for
round-trip engineering Simulators: all models can be executed
Discussion Continuity of concepts across development process Support for expressing real-time constraints ? No resource constraints
S
E
E
S
C
O
A
ObjecTime’s UML for Real-TIME
Combination of UML, role modeling and ROOM concepts
Discussion Freestyle mapping of ROOM diagrams on UML Round-trip engineering becomes difficult see ROOM
S
E
E
S
C
O
A
Port Notation
S
E
E
S
C
O
A
State Chart
S
E
E
S
C
O
A
Octopus
Focus on development method, not on notation
Method Requirements Specification System Architecture Analysis System Increment Subsystems Development Performance Analysis
Extra’s Hardware abstraction
Discussion No resource constraints Realistic use of timing diagrams Very orchestrated process
S
E
E
S
C
O
A
Timing Diagram
S
E
E
S
C
O
A
Overview
ARTiSAN ROOM ObjecTime Octopus
Timing Constraints Non-Formal ? Non-Formal Pragmatic
Resource Constraints Limited No No No
HW/SW Co-Design SA Diagram No No No, HW abstraction
Hardware Abstraction No, Co-Design No No Yes
Code Generation No Yes Limited Tool Dependent
Roundtrip Engineering No Yes No No