1 Developing Reliable Systems with SDL Design Patterns and Design Components Christian Webel, Ingmar Fliege, Alexander Geraldy, Reinhard Gotzhein University.

Slides:



Advertisements
Similar presentations
Annual Conference of ITA ACITA 2009 Realising Management and Composition of Self-Managed Cells in Body Area Networks Alberto Schaeffer-Filho, Emil Lupu,
Advertisements

Object-Oriented Application Frameworks Much of the cost and effort stems from the continuous re- discovery and re-invention of core concepts and components.
PROGRESS User Committee Meeting, December 11, On the Fundamental Design Gap in Complex Systems Mark Verhappen Piet van der Putten.
Main issues: • Why is reuse so difficult • How to realize reuse
Dynamic Service Composition with QoS Assurance Feb , 2009 Jing Dong UTD Farokh Bastani UTD I-Ling Yen UTD.
Basic Concepts in Component-Based Software Engineering
Modeling Process-Oriented Integration of Services Using Patterns and Pattern Primitives Uwe Zdun and Schahram Dustdar Distributed Systems Group Institute.
Software Reuse Building software from reusable components Objectives
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
- 1 - Component Based Development R&D SDM Theo Schouten.
Feb. 23, 2004CS WPI1 CS 509 Design of Software Systems Lecture #5 Monday, Feb. 23, 2004.
Protégé An Environment for Knowledge- Based Systems Development Haishan Liu.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
Distributed Systems: Client/Server Computing
Merlin ITEA Symposium Merlin Overview2 Problem domain Companies hardly develop embedded products completely on their own Embedded systems need.
QoS-enabled middleware by Saltanat Mashirova. Distributed applications Distributed applications have distinctly different characteristics than conventional.
 1. Introduction  2. Development Life-Cycle  3. Current Component Technologies  4. Component Quality Assurance  5. Advantages and Disadvantages.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 18 Slide 1 Software Reuse.
Software Engineering Muhammad Fahad Khan
Software Reuse Prof. Ian Sommerville
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14Slide 1 Design with Reuse l Building software from reusable components.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Object-oriented Software Engineering with Reuse Contracts Koen De Hondt, Carine Lucas, Kim Mens, Tom Mens, Patrick Steyaert, Roel Wuyts Programming Technology.
26 Sep 2003 Transparent Adaptive Resource Management for Distributed Systems Department of Electrical Engineering and Computer Science Vanderbilt University,
1 CS 456 Software Engineering. 2 Contents 3 Chapter 1: Introduction.
 Dipl.-Ing. Lars Grunske, 1 Hasso-Plattner-Institute for Software System Engineering at the University of Potsdam Department of Software Engineering and.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
Division of IT Convergence Engineering Towards Unified Management A Common Approach for Telecommunication and Enterprise Usage Sung-Su Kim, Jae Yoon Chung,
An Introduction to Design Patterns. Introduction Promote reuse. Use the experiences of software developers. A shared library/lingo used by developers.
Wireless Access and Terminal Mobility in CORBA Dimple Kaul, Arundhati Kogekar, Stoyan Paunov.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Composing Adaptive Software Authors Philip K. McKinley, Seyed Masoud Sadjadi, Eric P. Kasten, Betty H.C. Cheng Presented by Ana Rodriguez June 21, 2006.
Odyssey A Reuse Environment based on Domain Models Prepared By: Mahmud Gabareen Eliad Cohen.
CSE 303 – Software Design and Architecture LECTURE 4.
Chapter 8 Object Design Reuse and Patterns. Object Design Object design is the process of adding details to the requirements analysis and making implementation.
Service Oriented Architecture CCT355H5 Professor Michael Jones Suezan Makkar.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Component Oriented Programming 1 Introduction to COP.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14Slide 1 Chapter 14 Design with Reuse.
Capturing and Reusing Functional and Non-functional Requirements Knowledge: A Goal-Object Pattern Approach Lawrence Chung and Sam Supakkul The University.
Component-Based Systems X LIU, School of Computing, Napier University TIP As computing systems become more and more complex, software reuse and component-based.
1 OO Analysis & Design - Introduction to main ideas in OO Analysis & design - Practical experience in applying ideas.
Winter 2007SEG2101 Chapter 111 Chapter 11 Implementation Design.
Design Patterns: Elements of Reusable Object- Orientated Software Gamma, Helm, Johnson, Vlissides Presented By: David Williams.
Engineering Self-adaptive Service Mashups Mahdi Bashari LS3 Colloquium May 7 th 2014.
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
Developing Product Line Components Jan Bosch Professor of Software Engineering University of Groningen, Netherlands
What’s Ahead for Embedded Software? (Wed) Gilsoo Kim
Motivation FACE architecture encourages modularity of components on data boundaries Transport Services Segment interface is centered on sending and receiving.
1 Here are some quotations to get an overview of the kinds of issues of interest.
Lecture 21: Component-Based Software Engineering
Banaras Hindu University. A Course on Software Reuse by Design Patterns and Frameworks.
04 - OOD Intro.CSC4071 Software Design ‘Requirements’ defines –The goals the system needs to satisfy. ‘Specification’ defines –The externally-observable.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Université Toulouse I 1 CADUI' June FUNDP Namur Implementation Techniques for Petri Net Based Specifications of Human-Computer Dialogues.
The Observer Design Pattern Author :Erich Gamma, et al. Source :Elements of Reusable Object-Oriented Software Speaker : Chiao-Ping Chang Advisor : Ku-Yaw.
Why is Design so Difficult? Analysis: Focuses on the application domain Design: Focuses on the solution domain –The solution domain is changing very rapidly.
Software Reuse. Objectives l To explain the benefits of software reuse and some reuse problems l To discuss several different ways to implement software.
Advanced Software Engineering Dr. Cheng
Design Patterns: MORE Examples
Introduction to Design Patterns
APPLICATION OF DESIGN PATTERNS FOR HARDWARE DESIGN
Component Based Software Engineering
CS310 Software Engineering Lecturer Dr.Doaa Sami
Mark McKelvin EE249 Embedded System Design December 03, 2002
Presentation transcript:

1 Developing Reliable Systems with SDL Design Patterns and Design Components Christian Webel, Ingmar Fliege, Alexander Geraldy, Reinhard Gotzhein University of Kaiserslautern {webel, fliege, geraldy,

Christian Webel 2 Topics 1.Motivation 2.SDL Design Patterns 3.Micro Protocols 4.Comparison 5.Example: “Airship Control” 6.Conclusion

Christian Webel 3 1. Motivation Problem: –solution from scratch –existing systems: lack of reliability –difficult to integrate reliability Solution: –defining SDL design patterns and design components –using these software artefacts to augment system reliability step- by-step –reuse –SDL as a design language to develop reliable systems

Christian Webel 4 1. Motivation Concepts Reliability: ability of a system to perform its tasks under given conditions for a certain period of time Watchdog: component or functionality monitoring the operation of a system by observing an alive-signal Heartbeat: component or functionality sending a periodic alive-signal

Christian Webel 5 2. Adding Reliability through SDL Design Patterns generic solution for recurring design problems reusable software artefact SDL as design language to be selected, adapted and embedded

Christian Webel 6 2. Adding Reliability through SDL Design Patterns B provides data for A B needs to be monitored by A A is refined by applying the Watchdog pattern B by applying the Heartbeat pattern

Christian Webel 7 2. Adding Reliability through SDL Design Patterns Design pattern Watchdog

Christian Webel 8 2. Adding Reliability through SDL Design Patterns Design pattern Heartbeat

Christian Webel 9 3. Adding Reliability through Micro Protocols encapsulate a single (distributed protocol) functionality using a specific mechanism self-contained and ready-to-use well-defined interfaces (operators) can be composed yielding macro protocols

Christian Webel Adding Reliability through Micro Protocols A, B, Watchdog and Heartbeat as described ready-to-use solutions, no modifications within A or B needed useful if A or B cannot or should not be modified (e.g. 3rd party components)

Christian Webel Adding Reliability through Micro Protocols Micro protocol Watchdog one single process type may be refined to match the requirements of the embedding context needs a periodic trigger alive

Christian Webel Adding Reliability through Micro Protocols Micro protocol Heartbeat one single process type may be refined to match the requirements of the embedding context provides a periodic trigger alive

Christian Webel 13 Design Patterns vs. Micro Protocols 4. Comparison Advantages no change of the system architecture necessary optimization of heartbeat traffic reusable solution no change of the behaviour of the other system components necessary ready-to-use solution reusable solution Disadvantages engineering knowledge required change of the system architecture necessary

Christian Webel Example: “Airship Control” application to control an airship via WLAN two parts: –airshipClient transmits the control values to the airship –airshipServer receives the values and controls the airship hardware reliability is needed !!!

Christian Webel Example: “Airship Control” Application of the Heartbeat pattern

Christian Webel Example: “Airship Control” Application of the Watchdog pattern

Christian Webel Example: “Airship Control” Using the Watchdog and Heartbeat Micro Protocols selected and glued together Watchdog: – redefine timeout-transition – add stop-transition Heartbeat: –just select and integrate also possible to use design patterns und micro protocols together

Christian Webel Conclusion systematic approach to augment existing systems with reliability aspects reuse and reliability (design patterns, micro protocols) Outlook: Validation Compositional testing –Each component tested –Resulting system tested for composition faults Developing more micro protocols –QoS, Routing, Scheduling, Medium Access, Flow Control, …

Christian Webel 19 Thank you for your attention! Questions?