softw are engineering for em bedded system s software
play

Softw are Engineering for Em bedded System s Software Engineering - PowerPoint PPT Presentation

Softw are Engineering for Em bedded System s Software Engineering for Embedded Systems Mohammad. Abdullah Al Faruque Talal Bonny CES - C hair for E mbedded S ystems (Prof. Dr. Jrg Henkel) Department of Computer Science University of Karlsruhe


  1. Softw are Engineering for Em bedded System s Software Engineering for Embedded Systems Mohammad. Abdullah Al Faruque Talal Bonny CES - C hair for E mbedded S ystems (Prof. Dr. Jörg Henkel) Department of Computer Science University of Karlsruhe Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  2. Softw are Engineering for Em bedded System s Lectures Plan Date Lecture Lecturer 25.10.2005 Introduction Bonny 08.11.2005 SW for ES Al Faruque 22.11.2005 Process Models Al Faruque 06.12.2005 Process Models Al Faruque 20.12.2005 SystemC Bonny 10.01.2006 SystemC Bonny 24.01.2006 MDA Bonny 07.02.2006 UML Al Faruque Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  3. Softw are Engineering for Em bedded System s Lecture Contents ( Big Picture) � Definition of Software Engineering � Embedded Systems at a Glance � Embedded Software and Different Issues Related to Software Engineering � Process Models � Detail Description of V Model � Requirement Analysis • Example: Adaptive Cruise Control (ACC) � Requirement Engineering � How to Do Requirement Analysis • Analysis of Functional Requirements • Quality Analysis � Architecture Design � Waterfall Model � Spiral Model � Rational Unified Process (RUP) � Extreme Programming (XP) Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  4. Softw are Engineering for Em bedded System s V Model Architecture Architecture Design Design Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  5. Softw are Engineering for Em bedded System s Tw o Analysis Paths Architecture Architecture Design Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH Design Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  6. Softw are Engineering for Em bedded System s W hat is Architecture? Bass, Clements, Kazman, 2003 (modified): The architecture of a system is the structure or the structures of the system , w hich com prise elem ents, the externally visible properties of those elem ents, and the relationship am ong them � The architecture defines elements of the system • Architecture design is the first phase in which the system is no longer a black box • The designer begins to structure the system into parts • Architecture manifests the earliest design decisions • Architecture is the blueprint for system integration Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  7. Softw are Engineering for Em bedded System s W hat is Architecture ( contd) ? Bass, Clements, Kazman, 2003 (modified): The architecture of a system is the structure or the structures of the system , w hich com prise elem ents, the externally visible properties of those elem ents, and the relationship am ong them � The architecture is only one step further in refinement • Now the elements are black boxes • The architecture specifies what the elements do and how they interact from an outside ( system ‘s) perspective (often regarded as the element‘s responsibilities ) • Central concept of architectures: I nterfaces Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  8. Softw are Engineering for Em bedded System s W hat is Architecture ( contd) ? Bass, Clements, Kazman, 2003 (modified): The architecture of a system is the structure or the structures of the system , w hich com prise elem ents, the externally visible properties of those elem ents, and the relationship am ong them � A system can have and usually has more than one � structure. � Examples: • Design time elements (files, components, modules) • Run-time elements (processes, tasks, threads) • Behavioral elements (states, messages, queues) � The designer must consider different architectural view s Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  9. Softw are Engineering for Em bedded System s I m portance of Architecture Bass, Clements, Kazman, 2003 (again): � Architecture represents earliest design decisions � They are the most difficult to get correct and the hardest to change later in the design process � They have the most far-reaching effects W hy? � Architecture defines constraints on implementation � Architecture dictates organizational structure � Architecture inhibits or enables a system‘s quality ⇒ It is possible to predict system qualities by studying the architecture Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  10. Softw are Engineering for Em bedded System s Architecture Design � Take most important qualities (SEI: ”architectural drivers“) � Apply structuring principles which support these qualities � Find a compromise, if qualities require contradicting structuring principles Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  11. Softw are Engineering for Em bedded System s Quality Attribute Scenarios ( Bass, Clem ents, Kazm an) Response Source of system m easure stim ulus Stim ulus Response Environm ent Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  12. Softw are Engineering for Em bedded System s Exam ple: Maintainability � Maintainability is the property of a system which describes how well faults can be removed General Scenario: � Stimulus: 1. A fault is detected 2. Requirements change such that previous (implemented) design decisions become wrong � Response: 1. Change is made such that fault is removed without introducing new faults � Response measure: 1. Effort for removing fault 2. Probability of introducing new faults Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  13. Softw are Engineering for Em bedded System s Achieving Maintainability � General principle ( SEI: “Tactics“) to achieve maintainability: � Keep changes local • Where the change is done • Which other parts are effected by the change. � Concrete structuring principle: � Information Hiding Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  14. Softw are Engineering for Em bedded System s Lecture Contents ( Big Picture) � Definition of Software Engineering � Embedded Systems at a Glance � Embedded Software and Different Issues Related to Software Engineering � Process Models � Detail Description of V Model � Requirement Analysis • Example: Adaptive Cruise Control (ACC) � Requirement Engineering � How to Do Requirement Analysis • Analysis of Functional Requirements • Quality Analysis � Architecture Design � Waterfall Model � Spiral Model � Rational Unified Process (RUP) � Extreme Programming (XP) Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  15. Softw are Engineering for Em bedded System s The W aterfall Model of the Softw are Life Cycle Requirements Design Implementation Integration Validation Deployment Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  16. Softw are Engineering for Em bedded System s W aterfall Model Phases � Requirements analysis and definition � System and software design � Implementation and unit testing � Integration and system testing � Operation and maintenance � The main drawback of the waterfall model is the difficulty of accommodating change after the process is underway. One phase has to be complete before moving onto the next phase Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  17. Softw are Engineering for Em bedded System s W aterfall Model Problem s � Inflexible partitioning of the project into distinct stages makes it difficult to respond to changing customer requirements � Therefore, this model is only appropriate when the requirements are well-understood and changes will be fairly limited during the design process � Few business systems have stable requirements � The waterfall model is mostly used for large systems engineering projects where a system is developed at several sites Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

  18. Softw are Engineering for Em bedded System s Lecture Contents ( Big Picture) � Definition of Software Engineering � Embedded Systems at a Glance � Embedded Software and Different Issues Related to Software Engineering � Process Models � Detail Description of V Model � Requirement Analysis • Example: Adaptive Cruise Control (ACC) � Requirement Engineering � How to Do Requirement Analysis • Analysis of Functional Requirements • Quality Analysis � Architecture Design � Waterfall Model � Spiral Model � Rational Unified Process (RUP) � Extreme Programming (XP) Chair for Em bedded System s Universität Karlsruhe ( TH) Mohammad Abdullah Al Faruque WS 2005-06

Recommend


More recommend