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

softw are engineering for em bedded system s software
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 1

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Software Engineering for Embedded Systems

  • Mohammad. Abdullah Al Faruque

Talal Bonny

CES - Chair for Embedded Systems (Prof. Dr. Jörg Henkel) Department of Computer Science University of Karlsruhe

slide-2
SLIDE 2

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

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

slide-3
SLIDE 3

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

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)

Lecture Contents ( Big Picture)

slide-4
SLIDE 4

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

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)

Lecture Contents ( Big Picture)

slide-5
SLIDE 5

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

W hat is Softw are Engineering? Boehm : Software Engineering: The practical application of scientific knowledge in the design and construction of computer programs and the associated docum entation required to develop, operate, and maintain them. Dennis: Software engineering is the application of principles, skills, and art to the design and construction of programs and systems of programs.

slide-6
SLIDE 6

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

W hat is Softw are Engineering ( contd) ? Parnas: Software engineering is programming under at last one of the following two conditions:

More than one person is involved in the construction and/or use of the programs, More than one version of the program will be produced.

Fairley: Software engineering is the technological and m anagerial discipline concerned with the systematic production and maintenance of software products that are developed and modified on time and within cost estimates.

slide-7
SLIDE 7

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

W hat is Softw are Engineering ( contd) ? Som erville: Software Engineering is concerned with building software systems which are large than would normally be tackled by a single individual, uses engineering principles in the development of these systems and is made up of both technical and non-technical aspects. Pom berger and Blaschek: Software engineering is the practical application of scientific knowledge for the economical production and use of high- quality softw are.

slide-8
SLIDE 8

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

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)

Lecture Contents ( Big Picture)

slide-9
SLIDE 9

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

W hat is an Em bedded System ?

Em bedded System = A computer system which is integrated into another system, the embedding system. The requirements for the embedded system must be derived from the requirements for the embedding system. Exam ples?

Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH

slide-10
SLIDE 10

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Exam ples of Em bedding System s

Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH

slide-11
SLIDE 11

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Em bedding system = product Examples:

  • Automotive Electronics
  • Avionics
  • Health Care Systems

Tw o Different Main Application Areas Em bedding system = production system Examples:

  • Manufacturing Control
  • Chemical Process Control
  • Logistics

Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH

slide-12
SLIDE 12

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Typical functionalities

Measuring physical variables (sensing) Storing data Processing sensor signals and data Influencing physical variables (actuating) Monitoring Supervising Enable manual and automatic operation

  • In one word:

Control W hat are Em bedded System s doing?

slide-13
SLIDE 13

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Interaction with physical environment Closed loop Malfunction may lead to damage No or very restricted human/computer interface No or very restricted maintenance possibilities Part of competitively priced products (high volumes) Tight resource constraints Often special hardware Part of engineering product High product generation frequency Often many variants I m plications for SW engineering? Differences to “Desktop“ Com puting?

slide-14
SLIDE 14

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

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)

Lecture Contents ( Big Picture)

slide-15
SLIDE 15

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Shift of developing effort of the Embedded Systems from the hardware to the software Rapid complexity rise of Embedded Software Very specific basic conditions/constraints, under which Embedded software is developed and operated

Conventional software development methods cannot be used over so easily without adoption

W hy SW Engineering for ES?

Source: Dr.-Ing. M. Syrjakow

slide-16
SLIDE 16

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Som e of m any reasons

Specific characteristics of software Increasing quality requirements Increasing complexity of Software system Only unclear or obscure (not formal) specifications possible Semantics is very complex and it gives no mathematical support Users specify the problem Programmers interpret the specification and based on the specification they implement the program

W hy is SW Engineering so Com plicated?

Source: Dr.-Ing. M. Syrjakow

slide-17
SLIDE 17

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Specific economic and organizational basic conditions with the production of embedded systems

Mass production requires strictly savings with hardware resources Therefore little space for software abstraction that typically require/use more memory or computational power Because of surrounding environment and heterogeneity an integrated approach for system specification is required

Specific Boundary Conditions/ Constraints for the Developm ent of Em bedded Softw are

Source: Dr.-Ing. M. Syrjakow

slide-18
SLIDE 18

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

High inter disciplinary basic knowledge as well as integrated development approach Meeting/Maintaining of real time requirements requires deterministic time performance Fast technological progress requires constant acquiring of new competence/expertise and qualifications Specific Boundary Conditions/ Constraints for the Developm ent of Em bedded Softw are

Source: Dr.-Ing. M. Syrjakow

slide-19
SLIDE 19

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Changing the focus of embedded systems from the hardware-centric development to a requirement-centered development Layer architectures for the uncoupling of hardware and software Concepts for the control of the timing behavior of complex distributed dynamically configurable systems Closing the significant technological and methodical gap between the existing procedures for the SW development embedded and other (enterprise) software

Source: Dr.-Ing. M. Syrjakow

Research Agenda

slide-20
SLIDE 20

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Typical Course/ Progress of SW Project

Source: Dr.-Ing. M. Syrjakow

The view from the different perspectives

slide-21
SLIDE 21

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Study from 2001 of Forrester Research shows that only 16% of all more extensive SW development projects can meet the timing requirements One finds reports on missed or made too expensive projects again and again in the press

Project Nivadis of the police of niedersächsischen Toll Collect Internet-job-exchange of the federal agency for work

The fundamental problems and error are nearly always the same for the projects!

Source: Dr.-Ing. M. Syrjakow

Typical Course/ Progress of SW Project

slide-22
SLIDE 22

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Insufficient definition of the goals of the project Missing knowledge about the business and the organization

  • f the client

Missing IT strategy or going in a wrong direction/aims for the wrong goal Absence of a constant IT architecture Bad plannings with resources Additional requests and inputs Too less self explanation and less precision I m portant Factors for the Failure of a SW Project

Source: Dr.-Ing. M. Syrjakow

slide-23
SLIDE 23

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Missing Management Expertise Insufficient technical abilities and knowledge Missing “Soft Skills“ (group leadership, good presentation …) Dogm atism (rigid holding on fixed IT stretegies, development environments, programming languages, etc…) No Acceptance and integration in the enterprise (From the company who needs the softaware) I m portant Factors for the Failure of a SW Project

Source: Dr.-Ing. M. Syrjakow

slide-24
SLIDE 24

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

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)

Lecture Contents ( Big Picture)

slide-25
SLIDE 25

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

A process m odel Structures the development and maintenance process into distinguishable steps Defines w ork products of the steps Specifies the possible sequences and repetitions of the steps Defines roles for the participants of the development and maintenance process and their responsibilities Process Models

slide-26
SLIDE 26

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Exam ples:

  • V Model
  • Waterfall
  • Spiral
  • XP

In the embedded systems industries, the most popular process model is the V m odel Process Models

slide-27
SLIDE 27

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

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)

Lecture Contents ( Big Picture)

slide-28
SLIDE 28

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

V Model

Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH

slide-29
SLIDE 29

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

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)

Lecture Contents ( Big Picture)

slide-30
SLIDE 30

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Objective: Determine and document the required functionality and properties of the system (W hat and how good, not how ) Determine and document how the achievement of the functionality and properties can be validated or measured, i.e. the test cases for the acceptance test

  • Results:
  • Specification document
  • Acceptance test plan
  • Possibly first version of system manual

Requirem ents Analysis

slide-31
SLIDE 31

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

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)

Lecture Contents ( Big Picture)

slide-32
SLIDE 32

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06 Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH

Exam ple: Adaptive Cruise Control ( ACC) Context: Car Periphery Supervision

slide-33
SLIDE 33

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06 Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH

Exam ple ( ACC) : Funtionality

slide-34
SLIDE 34

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06 Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH

Exam ple ( ACC) : User I nterface

slide-35
SLIDE 35

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06 Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH

Exam ple ( ACC) : Sensor

slide-36
SLIDE 36

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06 Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH

Exam ple ( ACC) : Sensor/ 2

slide-37
SLIDE 37

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06 Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH

Exam ple ( ACC) : Sensor/ 3

slide-38
SLIDE 38

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

ACC shall detect vehicles in front of the car in a distance from 0 to 120 meters and in an angle of +/- 4° relativ to the centerline of the car. ACC shall determine the velocity of detected vehicles If the road is free, ACC will keep the car at a specified cruise velocity. If a slower vehicle is in front of the car, ACC will reduce speed until a specified distance to the front vehicle is

  • achieved. ACC will then keep the distance constant until the

car either vanishes or accelerates above the specified cruise velocity. ACC can be activated between 30 and 180 km/h. Requirem ents for ACC / 1

Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH

slide-39
SLIDE 39

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

In distance control mode, deviations from the reference distance must not exceed 5% for more than 2 seconds assuming a maximal accelaration or decelaration of the front vehicle of 0.5 g. The distance control algorithm shall be a PI (Proportional- Integral-acting Controller ) controller. If ACC is malfunctioning, it has to switch off automatically and indicate by a red light and a short beep that it is out of

  • service. It must never indicate a safe distance to the front

vehicle when this is not the case. ACC must not be out of function for more than 10e-7 hours per year of operation time. Distance and cruise speed selections must be well readable for the driver.

Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH

Requirem ents for ACC / 2

slide-40
SLIDE 40

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Speed and direction angle information are provided by the ESP system via the CAN (Controller Area Network) bus. For customer A, the ACC software has to run on a Motorola

  • MPC4200. Customer B wants to integrate the ACC software

into his already existing engine control unit. Manufacturer A wants a 77 Ghz radar sensor, manufacturer B an infrared sensor, manufacturer C wants to combine radar and video information. Marketing plans to offer ACC Stop & Go with an additional 24 GHz short range radar sensor for next year. Requirem ents for ACC / 3

Source: Prof. Dr.-Ing. Stefan Kowalewshi, RWTH

slide-41
SLIDE 41

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

Literature

  • Klaus Bender: Embedded Systems - qualitätsorientierte

Entwicklung; Springer-verlag, 2004.

  • D. Simon: An Embedded Software Primer; Addison-

Wesley, 1999.

  • http://www-i11.informatik.rwth-aachen.de/
  • http://www-i3.informatik.rwth-aachen.de/
slide-42
SLIDE 42

Universität Karlsruhe ( TH)

Softw are Engineering for Em bedded System s

Mohammad Abdullah Al Faruque

Chair for Em bedded System s

WS 2005-06

End Of the Lecture 1