Page 1 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model Chapter 12 The Koala Component Model.

Slides:



Advertisements
Similar presentations
Configuration management
Advertisements

Component-Based Software Engineering Main issues: assemble systems out of (reusable) components compatibility of components.
Database System Concepts and Architecture
Generative Programming for a Component-based Framework of Distributed Embedded Software Systems Xu Ke, Krzysztof Sierszecki Mads Clausen Institute for.
Multiple V-model. Introduction In embedded systems, the test object is not just executable code. First a model of the system is built on a PC, which simulates.
Basic Concepts in Component-Based Software Engineering
Chapter 13 Embedded Systems Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
Page 1 Building Reliable Component-based Systems Chapter 16 - Component based embedded systems Chapter 16 Component based embedded systems.
Page 1 Building Reliable Component-based Systems Chapter 13 -Components in Real-Time Systems Chapter 13 Components in Real-Time Systems.
“Chapter 9” Managing Object Design Done By: Alia Waled.
Component Models and Technology Component-based Software Engineering
Page 1 Building Reliable Component-based Systems Chapter 3 - Architecting Component-Based Systems Chapter 3 Architecting Component-Based Systems.
H 1 Building Product Populations with Software Components, © 2002 Koninklijke Philips Electronics NV Building Product Populations with Software.
WKES 3202 SOFTWARE REQUIREMENTS ENGINEERING SEMESTER 1 SESSION 2004/2005.
Page 1 Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model Chapter 19 Industrial Experience.
- 1 - Component Based Development R&D SDM Theo Schouten.
Establishing the overall structure of a software system
Page 1 Building Reliable Component-based Systems Chapter 11 - Components in Product Line Architectures Chapter 11 Components in Product Line Architectures.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
Page 1 Building Reliable Component-based Systems Chapter 4 - Component Models and Technology Chapter 4 Component Models and Technology.
Page 1, July 3, 2015 CBSE – graduate course Component-Based Software Engineering Building reliable component-based systems Overview
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
Software engineering Olli Alm Lecture 2: requirements, modelling & representation.
Building software from reusable components.
1 A Student Guide to Object- Orientated Development Chapter 9 Design.
Copyright Arshi Khan1 System Programming Instructor Arshi Khan.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Component-Based Software Engineering (CBSE) Speaker: Jerry Gao Ph.D. San Jose State University URL:
Efficient Hardware dependant Software (HdS) Generation using SW Development Platforms Frédéric ROUSSEAU CASTNESS‘07 Computer Architectures and Software.
Software Engineering Muhammad Fahad Khan
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
The Design Discipline.
Systems Analysis and Design in a Changing World, Fifth Edition
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
Architectural Design. Recap Introduction to design Design models Characteristics of good design Design Concepts.
©Ian Sommerville 1995 Software Engineering, 5th edition. Chapter 13Slide 1 Architectural Design u Establishing the overall structure of a software system.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Chapter 10 Architectural Design.
Architectural Design portions ©Ian Sommerville 1995 Establishing the overall structure of a software system.
Software Requirements Engineering CSE 305 Lecture-2.
Philips Company Restricted Information and Software Technology MG-R: a Component Based Software Architecture for CE Products Embedded software within Upmarket.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
Java in the Box: Implementing the BoxScript Component Language Yi Liu Electrical Engineering and Computer Science South Dakota State University H. Conrad.
Configuration Management (CM)
 CS 5380 Software Engineering Chapter 2 – Software Processes Chapter 2 Software Processes1.
Jump to first page (c) 1999, A. Lakhotia 1 Software engineering? Arun Lakhotia University of Louisiana at Lafayette Po Box Lafayette, LA 70504, USA.
Architectural Design lecture 10. Topics covered Architectural design decisions System organisation Control styles Reference architectures.
Component frameworks Roy Kensmil. Historical trens in software development. ABSTRACT INTERACTIONS COMPONENT BUS COMPONENT GLUE THIRD-PARTY BINDING.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
Architectural Design Yonsei University 2 nd Semester, 2014 Sanghyun Park.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 14 Database Connectivity and Web Technologies.
07/09/04 Johan Muskens ( TU/e Computer Science, System Architecture and Networking.
Chapter 7: Architectural Design Chapter 11 in textbook 1.
Page 1, December 8, 2015 CBSE – graduate course Component-Based Software Engineering Building reliable component-based systems Overview
12 Chapter 12: Advanced Topics in Object-Oriented Design Systems Analysis and Design in a Changing World, 3 rd Edition.
Chapter 4 Review Chad Hagstrom CS 310 Spring 2008.
Arch-1 9.Architecture. Arch-2 What’s Architecture? Description of sub-system –Components/sub-systems –Their interaction Framework for communication.
Overview of SAIP and LSSA. Software Architecture in Practice Provides a set of techniques, not a prescriptive method for architectural design. Based on.
Computer Science 340 Software Design & Testing Software Architecture.
Page 1 Building Reliable Component-based Systems Chapter 9 - Component Composition and Integration Chapter 9 Component Composition and Integration.
Ryu Overview 2014/11/25 晁鍾義 Tony. What is Ryu ? Component and Ryu What is component ? Component and libraries in the Ryu and description Ryu Architecture.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 15. Review Interaction-Oriented Software Architectures – MVC.
Basic Concepts and Definitions
Architectural Mismatch: Why reuse is so hard? Garlan, Allen, Ockerbloom; 1994.
Ganga/Dirac Data Management meeting October 2003 Gennady Kuznetsov Production Manager Tools and Ganga (New Architecture)
Slide 1 Chapter 8 Architectural Design. Slide 2 Topics covered l System structuring l Control models l Modular decomposition l Domain-specific architectures.
DDC 1023 – Programming Technique
Part 3 Design What does design mean in different fields?
Component-Based Software Engineering
from Lutz Dietrich and Hans Kluge
Presentation transcript:

Page 1 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model Chapter 12 The Koala Component Model

Page 2 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model Overview qRequirements for Koala qKoala Interfaces qBinding, Gluing and Switches qThe Product Line Architecture qManaging Versions and Variants qSubtyping qSummary

Page 3 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model Koala qKoala is l architectural description language l component model for development of embedded software for consumer electronics products. qIs used to build a large diversity of products from a repository of components.

Page 4 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model Requirements for Koala qOriginal requirements: l Devise a technique with which components can be ‘freely’ composed into products. l The technique must work in resource-constrained environments. l Make the product architectures as explicit as possible. qAdditional requirements: l Let components make as few assumptions as possible about their environment. l Allow for parameterized components that are as efficient as dedicated components. l Allow for various ways of connecting components.

Page 5 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model Koala Interfaces qProvide: l Like interfaces in COM and java. qRequire: l Communication with components environment. qMultiple: l Handle evolution and diversity. qOptional: l Fine tune.

Page 6 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model Binding and Bind Time in Koala qBasic binding scheme: l Usage of symbolic names. l Architectural description language. l Compiler generates #define. qCan be used as long as we build closed systems.

Page 7 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model Principle of Binding A B P A B’ P’

Page 8 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model Koala Components qKoala component: l Implementation in C. l Component definition. qKoala configuration: l List of components. l Top-level component. qKoala component definition: l Describes template for instantiating component. l Resembles a class in java.

Page 9 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model C C2C2 C1C1 C3C3 ms A Koala Component A module A switch Interfaces Subcomponent

Page 10 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model Composing Koala Components qConnect: l Requires interfaces to provides interfaces; l Provides interfaces to provides interfaces; l Requires interfaces to requires interfaces. qDoes not fit? l Connect a wider type. l ’Normal’ glue code. l Switch.

Page 11 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model Architectural Rules qInitialization l Initialization interface qMultithreading l Pumps qNotifications l Large number of asynchronous activities

Page 12 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model Overall Architecture qSeparated into three layers: l Computing platform l Audio/video/data platform l Service and application qLayer contains a set of subsystems qSubsystems contain may components

Page 13 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model Computing Hardware tvplf infra A/V Platform API uims txt epg deal fact Computing Platform tvsvc apps Computing Platform API Audio / Video Hardware A/V and Data Platform Applications & Services Product Line Architecture

Page 14 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model Managing Versions and Variants qDiversity in a product line should not be handled by a CM system, because: l It keeps diversity outside scope of the architects and, l CM systems only handle compile-time variation. qCM used for: l Maintaining full version history. l Temporary branches. l Safeguarding product in final testing phase. qKoala used for permanent diversity.

Page 15 Building Reliable Component-based Systems Chapter 12 - The Koala Component Model Summary qInterfaces qBinding and bindtimes qComponents composition qArchitectural rules qOverall architecture qVersion management