Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Design Methodology

Similar presentations


Presentation on theme: "Software Design Methodology"— Presentation transcript:

1 Software Design Methodology
for Embedded Systems

2 What are Embedded Systems?
Embedded systems are the electronic components of a physical system that monitor and control variables of the physical system. Embedded systems are tightly integrated with the physical system and are hidden from view They interact with the real world on a real-time basis and act under constraints of demanding reliability, deadlines and resources. Examples: microwaves, airplane navigation systems, climate control systems, nuclear reactors.

3 What is Embedded Software?
The functionality of an embedded system can be realized using hardware or software. ESW to be precise, is the implementation choice of a functionality. Software is preferred because of flexibility of use and shorter development time compared to hardware lifecycles.

4 How is ESW different? Traditional definition of software:
Sequence of instructions Executed in finite steps Takes finite time Software engineering has been developed based on the above definition of software. ESW does not satisfy the above definition.

5 Characteristics of ESW
Timeliness Concurrency Liveness Dependency on hardware

6 Constraints of traditional Software Engineering practices
Lack of component technologies that can be properly translated into the ESW domain. Lack of “active” objects in OOD. Abstraction of software from the real world Absence of the concept of time in software computational models

7 Crisis in ESW Designers deal with lowest levels of abstraction. Coding is done mostly in assembly language. Design re-use becomes impossible. Verification and validation is postponed until deep into implementation path

8 Approaches to ESW Design
Move ESW up in the layers of abstraction Link it to the hardware to ensure proper implementation Take a holistic approach of the problem including tools, hardware and the supporting systems since ESW is inextricably linked to the physical system

9 Steps in Design Specification Expressed in mathematical models
Capture constraints to be satisfied Design criteria to be optimized UML can be used in a platform based layered design

10 Steps in Design (Contd)
Refinement and decomposition Software can be decomposed The decomposed pieces should satisfy the original properties Require mathematical proofs for the above Successive refinement, decomposition and composition

11 Steps in Design (Contd)
Analysis Evaluation of intermediate results with respect to constraints Should be rigorous since there is the danger of going deep down in implementation before discovery of errors Appropriate physical models at this level of abstraction must be constructed to verify design

12 Steps in Design (Contd…)
Target Platform Definition Right specification form and notations to describe the target platform UML based description of platform can become target of refinement and analysis Mapping Associates portions of the specification with the implementation vehicles of the platform.

13 Steps in Design Verification
If formal specification methods are used, verifying design correctness can be done easily.

14 Conclusion Development of new software engineering paradigms necessary
ESW should be only the implementation aspect and not the design aspect Only a holistic view of ESW as a part of ESD will yield productive results.


Download ppt "Software Design Methodology"

Similar presentations


Ads by Google