Hierarchical vs. Flat Component Models
|
|
- Anna Higgins
- 6 years ago
- Views:
Transcription
1 Hierarchical vs. Flat Component Models František Plášil, Petr Hnětynka DISTRIBUTED SYSTEMS RESEARCH GROUP Outline Component models (CM) Desired Features Flat vers. hierarchical CMs Desired features hard in hierarchical CMs Experience SOFA 2.0 Conclusion CHARLES UNIVERSITY PRAGUE Faculty of Mathematics and Physics Czech Republic Classics: A Software component is A software component is a unit of composition with contractually specified interfaces and explicit context dependencies only. A software component can be deployed independently and is subject to composition by third parties. [C. Szyperski: Component Software] We think: A Software component is A software component: well defined interfaces and behavior unit of deployment distributed application REUSE view: black-box entity Can be reused in different contexts without knowledge of its internal structure (i.e., without modifying its internals) by third parties DESIGN view: gray-box / white box entity internal structure visible a set of communicating sub. Component model Component model The collection of the related abstractions, their semantics and the rules for component composition (creation of component architecture) In our view, the concept of component has always to be interpreted in the semantics of a particular component model. Key abstractions Related to Container 1 Interfaces provided required Binding providing references Communication style Proc calls (synchro) Events (publisher subscriber) Messages (asynchro) Assembly Architecture Deployment Address space & runtime abstraction - container Container2
2 Key abstractions (cont.) Features desirable flat & hierarchical Composition nesting Flat component model black box component Hierarchical model Gray/glass box view Multiple communication styles Deployment & cooperation of heterogeneous Separation of ADL and the target implementation language an early introduction of all types in interfaces is too entangling ~ (not domain types in parameters of interfaces) User-defined controlling part (controllers) Features desirable flat & hierarchical Current status of component models (cont.) Access to service outside the architecture deployed elsewhere at different time Support for design: contract more than signatures (~ behavior types), behavior specification Granularity of contract Service Component (orchestration of service contracts needed!) Versioning Contract/behavior verification at the ADL level Code model checking against (what) Specific properties and/or behavior specification Industrial models CCM, EJB flat component model Ad hoc feature definition (no flexibility/genericity) fixed control functionality (home,..) Transactions in EJB multipurpose deployment descriptor in EJB 2 communication styles in CCM Inherent distribution via CORBA in CCM Academic models Fractal, SOFA, ArchJava,Java/A,Darwin, Wright, ACME, Paladio, KobrA, hierarchical model (composite ) More features User defined controllers Behavior contract definition in ADL... Features reality Flat Features reality (cont.) Flat Multiple communication styles CCM (proc call + events); EJB proc call Deployment & cooperation of heterogeneous CCM: CORBA like, EJB containers Separation of ADL and the target implementation language an early introduction types is too entangling ~ parameters in interfaces CCM CORBA IDL, EJB Java CCM any; EJB uncontrolled User-defined controlling part (controllers) CCM factory; EJB home interface Access to service outside the architecture deployed elsewhere at different time CCM: Corba Object Services; EJB: limited to predefined security, persistence, transactions Support for design more than signatures (~ behavior types), contract/behavior specification Contract/behavior verification at the ADL level Code model checking against (what) Specific properties and/or behavior specification Versioning
3 Current status of Features hard Hierarchical CM Straightforward question Why does industry use just the flat model Answer It is hard to properly balance the semantics of the advanced features Primary issues, e.g. s of an architecture i.e., adding and removing at runtime, passing references to,... Contacting external services Those existing outside the composed architecture activated independently in time by a third party What is hard on hierarchical CMs Evolution gap / Architecture erosion Connection to external services from the non highest-level Deployment & cooperation of heterogeneous nested in different nodes than the parent needs vertical bindings (and potential heterogeneity) Behavior verification to target horizontal and vertical composition Model checking of code requires main not just a (isolated) component How far up we should go when creating an artificial environment Example of a non-trivial hierarchical application Why we need dynamic architecture At least Dynamic # of a component instances Example: Component ~ a customer representative Dynamic # of instances An example Dynamic Reconfiguration in Hierarchical CM # of Token is dynamic Multiple instances of parameterized loggers In a flat component model easy 1 2 In a hierarchical component model how to manage new
4 Approaches to dynamic reconfiguration 1. Forbidding 2. Flattening architecture removing composite at runtime => loosing the correspondence ADL <-> code 3. Restricted reconfiguration a) well-defined patterns b) shared c) formal rules to specify desired reconfigurations 4. Unlimited Evolution gap/ architecture erosion None of them is fully satisfactory Software services and SOA Another widely used software building paradigm From high level view very similar to software But strong emphasis laid on definition of interfaces just provided ones no knowledge about implementation composition of services based on message routing orchestration (ESB ~ MULE, SONIC) no rigid architecture dynamic reconfiguration not a real issue ~ per request architecture Our experience SOFA CM SOFA General Overview SOFA (Software Appliances) Vertical bindings subsume, delegate Distributed deployment Connectors (+ generator) Versioning Contract/ Behavior verification Behavior protocols Both horizontal and vertical Update of a component only No access to external services Prototype implementation Java LGPL Implemented features development ADL compiler repository protocol checker NetBeans module run-time run-time environment dynamic update automatically generated connectors component trading (experimental only) licensing, automated downloads SOFA nodes (distribution centers) SOFA 2.0 new version SOFA evolution over years some inconsistencies between implementation and specifications e.g., protocols vs. connectors, architectures vs. dynamic reconfiguration,... New version: SOFA 2.0 properly balanced features Key improvements dynamic reconfiguration access to outside services (work in progress) Dynamic reconfiguration Elementary operations of reconfiguration 1. removing a component 2. adding a component 3. removing a connection 4. adding a connection 5. adding/removing a component s interface Arbitrary sequence of these operations uncontrolled architectural modification evolution gap problem/ architecture erosion
5 Dynamic reconfiguration Solution: comply with reconfigurations patterns Adding/removing interface forbidden Breaks the fundamental rule of well-defined component interface Other operations via reconfigurations patterns Nested factory pattern Adding new component and new connection new created by other component a factory Recall the example with multiple loggers where to put the new component 1. Nested factory pattern + Component removal pattern 2. Utility interface pattern 2 1 Nested factory pattern Access to external services Two key options A B Access to broadly-needed external services Needed by most of the At different levels of nesting in the architecture We adopted A component, which initiated the creation typically needs to intensively collaborate with the new component B breaks the rule of well-defined component interface Tunneling needed Strictly component-based solution: Service A component on the top level of the architecture hierarchy Connections through all the higher-level composite Consequence escalation of connections, clumsy architecture (some component just mediate access) performance penalties Solution: Utility interface pattern New concept a utility interface reference to a utility interface can be freely passed among connection established orthogonally to the architecture hierarchy WorkerA WorkerB PService Utility interface mixing CBD with SOA Introduction of the utility interfaces Brings into component-based models a feature of service-oriented architectures Takes advantages of both paradigms encapsulation and hierarchical of CM simple dynamic reconfiguration from SOA
6 Evaluation and Current status Patterns chosen based on experience with non-trivial case studies of component-based applications in SOFA and Fractal without dyn. reconfiguration -> dynamic parts of an application ~ predefined max. static architecture Implementing SOFA 2.0 patterns Utility interface pattern Contract/Behavior verification Code verification against behavior specification Evaluation: Experience with Behavior Specification Behavior protocols successfully used to describe nontrivial component projects (Airport demo, SPEEDO) Real-life behavior protocols checked in reasonable time Checking most complex In several hours ~ 60 events in a component (max) ~ 500 lines of spec all together Architecture protocol state space BP specification Good base for a later implementation Lessons for SOFA 2.0 SOFA architecture / frame abstractions Very beneficial: Design, State space size Frame spec needed in reality, not interface spec Interface automata nice, but... Capturing exceptions in behavior specification hard Conclusion Hierarchical a necessity for CBD Challenges Adding support for dynamic reconfiguration to hierarchical component model well-defined reconfiguration patterns Dynamicity in behavior/contract specifications Mixing CBD with external services (SOA, ) As an aside: our experience Proof of the concept!!! a non-trivial application is an invaluable source of research ideas (not a class room example) Questions Answers also at Acknowledgement to those who contributed to the ideas presented in this talk: Pavel Jezek and Jan Kofron (demo application) Tomas Bures, Vladimir Mencl (SOFA, SOFA 2.0) Jiri Adamek, Jan Kofron, Pavel Jezek (behavior protocols) Viliam Holub (exceptions in behavior protocols) Pavel Parizek (code model checking)
Fighting Class Name Clashes in Java Component Systems
Fighting Class Name Clashes in Java Component Systems Petr Hnětynka, Petr Tůma Charles University Department of Software Engineering Distributed System Research Group Malostranské náměstí 25, 118 00 Prague
More informationEnhancing EJB Component Model
Enhancing EJB Component Model Vladimír Mencl, Jiří Adámek, Adam Buble, Petr Hnětynka, Stanislav Višňovský Abstract Component Based Software Development (CBSD) aims to lower software development costs by
More informationCHARLES UNIVERSITY IN PRAGUE FACULTY OF MATHEMATICS AND PHYSICS DOCTORAL THESIS. Petr Hnětynka
CHARLES UNIVERSITY IN PRAGUE FACULTY OF MATHEMATICS AND PHYSICS DOCTORAL THESIS Petr Hnětynka Making deployment process of distributed component-based software unified Department of Software Engineering
More informationEvolving Services Architectures
Evolving Services Architectures Petr Hnetynka and Jan Kofron Charles University, Czech Republic A joint presentation of the OW2 projects SOFA 2 and Q-ImPrESS. Overview SOFA 2 overview Q-ImPrESS overview
More informationSoftware Components and Distributed Systems
Software Components and Distributed Systems INF5040/9040 Autumn 2017 Lecturer: Eli Gjørven (ifi/uio) September 12, 2017 Outline Recap distributed objects and RMI Introduction to Components Basic Design
More informationConstraint-based Generation of Connectors
Constraint-based Generation of Connectors Tomas Bures Charles University, Faculty of Mathematics and Physics, Prague, Czech Republic Abstract. In this paper we discuss the a typical use-case of connector
More informationOracle-based Mode-change Propagation in Hierarchical Components.
Oracle-based Mode-change Propagation in Hierarchical Components. http://d3s.mff.cuni.cz Tomas Pop, Frantisek Plasil, Matej Outly, Michal Malohlava, Tomas Bures Tomas.Pop@d3s.mff.cuni.cz CHARLES UNIVERSITY
More informationA COMPONENT-ORIENTED FRAMEWORK FOR SPACECRAFT ON-BOARD SOFTWARE
A COMPONENT-ORIENTED FRAMEWORK FOR SPACECRAFT ON-BOARD SOFTWARE Marek Prochazka (1), Roger Ward (1), Petr Tuma (2), Petr Hnetynka (2), Jiri Adamek (2) (1) SciSys, Clothier Road, Bristol, BS4 5SS, United
More informationSoftware Reuse and Component-Based Software Engineering
Software Reuse and Component-Based Software Engineering Minsoo Ryu Hanyang University msryu@hanyang.ac.kr Contents Software Reuse Components CBSE (Component-Based Software Engineering) Domain Engineering
More informationSpecification and Generation of Environment for Model Checking of Software Components *
Specification and Generation of Environment for Model Checking of Software Components * Pavel Parizek 1, Frantisek Plasil 1,2 1 Charles University, Faculty of Mathematics and Physics, Department of Software
More informationMinsoo Ryu. College of Information and Communications Hanyang University.
Software Reuse and Component-Based Software Engineering Minsoo Ryu College of Information and Communications Hanyang University msryu@hanyang.ac.kr Software Reuse Contents Components CBSE (Component-Based
More informationThe Fractal Open Component Model
The Fractal Open Component Model Jean-Bernard Stefani INRIA Grenoble-Rhône-Alpes Jean-Bernard Stefani (INRIA Grenoble) Fractal OW2 Webinar 04/2009 1 / 24 Executive Summary Fractal: a model for the construction
More informationAutomatic Code Generation for Non-Functional Aspects in the CORBALC Component Model
Automatic Code Generation for Non-Functional Aspects in the CORBALC Component Model Diego Sevilla 1, José M. García 1, Antonio Gómez 2 1 Department of Computer Engineering 2 Department of Information and
More informationDistributed Information System as a System of Asynchronous Concurrent Processes
Distributed Information System as a System of Asynchronous Concurrent Processes Marek Rychlý Jaroslav Zendulka Department of Information Systems Faculty of Information Technology Brno University of Technology
More informationCHARLES UNIVERSITY, PRAGUE FACULTY OF MATHEMATICS AND PHYSICS. Master Thesis. Michael Cífka Visual Development of Software Components
CHARLES UNIVERSITY, PRAGUE FACULTY OF MATHEMATICS AND PHYSICS Master Thesis Michael Cífka Visual Development of Software Components Supervisor: Ing. Petr Tůma, Dr. I would like to thank my supervisor,
More informationIN software engineering, component-based development
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 33, NO. 10, OCTOBER 2007 709 Software Component Models Kung-Kiu Lau and Zheng Wang Abstract Component-based development (CBD) is an important emerging topic
More informationAddressing Heterogeneity in OMG D&C-based Deployment
Addressing Heterogeneity in OMG D&C-based Deployment Lubomír Bulej 1,2, Tomáš Bureš 1,2 1 Charles University, Faculty of Mathematics and Physics, Department of Software Engineering Malostranske namesti
More informationSoftware Architectures
Software Architectures Richard N. Taylor Information and Computer Science University of California, Irvine Irvine, California 92697-3425 taylor@ics.uci.edu http://www.ics.uci.edu/~taylor +1-949-824-6429
More informationArchitecture of Distributed Systems Component-based Systems
Architecture of Distributed Systems 2017-2018 Component-based Systems Original : J.J Lukkien Revision: R.H. Mak 25-Oct-17 Rudolf Mak TU/e Computer Science 2II45-CBSE Goals of this lecture Students have
More informationComponent models. Page 1
Component Models and Technology Component-based Software Engineering Ivica Crnkovic ivica.crnkovic@mdh.se Page 1 Overview Introduction ACME Architectural Description Language Java Bean Component Model
More informationModeling Software Components Using Behavior Protocols
CHARLES UNIVERSITY FACULTY OF MATHEMATICS AND PHYSICS Modeling Software Components Using Behavior Protocols Doctoral Thesis Stanislav Višnovský Department of Software Engineering Malostranske namesti 25,
More informationDesign Pattern What is a Design Pattern? Design Pattern Elements. Almas Ansari Page 1
What is a Design Pattern? Each pattern Describes a problem which occurs over and over again in our environment,and then describes the core of the problem Novelists, playwrights and other writers rarely
More informationSpecification and Generation of Environment for Model Checking of Software Components
Specification and Generation of Environment for Model Checking of Software Components Pavel Parizek a,1, Frantisek Plasil a,b,1 a Department of Software Engineering Charles University, Faculty of Mathematics
More informationCarmen : Software Component Model Checker
Carmen : Software Component Model Checker Aleš Plšek 1 and Jiří Adámek 2,3 1 INRIA-Lille, Nord Europe, Project ADAM USTL-LIFL CNRS UMR 8022, France ales.plsek@inria.fr 2 Distributed Systems Research Group
More informationOn Hierarchical, parallel and distributed components for Grid programming
On Hierarchical, parallel and distributed components for Grid programming Francoise Baude, Denis Caromel, Matthieu Morel www.inria.fr/oasis/proactive OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis
More informationIntroduction to componentbased software development
Introduction to componentbased software development Nick Duan 8/31/09 1 Overview What is a component? A brief history of component software What constitute the component technology? Components/Containers/Platforms
More informationEuroPLoP 2003 Focus Group: Patterns for Component Composition and Adaptation
EuroPLoP 2003 Focus Group: Patterns for Component Composition and Adaptation Uwe Zdun Department of Information Systems, Vienna University of Economics, Austria zdun@acm.org Markus Voelter voelter - Ingenieurbüro
More informationPOAD Book: Chapter 4: Design Patterns as Components Chapter 5: Visual Design Models
POAD Book: Chapter 4: Design Patterns as Components Chapter 5: Visual Design Models Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU Outline Chapter 4: Design Patterns
More informationSDC Design patterns GoF
SDC Design patterns GoF Design Patterns The design pattern concept can be viewed as an abstraction of imitating useful parts of other software products. The design pattern is a description of communicating
More informationRapid Large-Scale SOA - Connected Products at Leapfrog Enterprises
Rapid Large-Scale SOA - Connected Products at Leapfrog Enterprises A little bit about myself Jason Whaley Web Infrastructure Engineer Leapfrog Enterprises jwhaley@leapfrog.com What Will be Covered Overview
More informationComponent-based Architecture Buy, don t build Fred Broks
Component-based Architecture Buy, don t build Fred Broks 1. Why use components?... 2 2. What are software components?... 3 3. Component-based Systems: A Reality!! [SEI reference]... 4 4. Major elements
More informationElectronic Payment Systems (1) E-cash
Electronic Payment Systems (1) Payment systems based on direct payment between customer and merchant. a) Paying in cash. b) Using a check. c) Using a credit card. Lecture 24, page 1 E-cash The principle
More informationToday: Distributed Objects. Distributed Objects
Today: Distributed Objects Case study: EJBs (Enterprise Java Beans) Case study: CORBA Lecture 23, page 1 Distributed Objects Figure 10-1. Common organization of a remote object with client-side proxy.
More informationTowards Reusable Heterogeneous Data-Centric Disentangled Parts
Towards Reusable Heterogeneous Data-Centric Disentangled Parts Michael Reinsch and Takuo Watanabe Department of Computer Science, Graduate School of Information Science and Technology, Tokyo Institute
More informationThe Impact of SOA Policy-Based Computing on C2 Interoperation and Computing. R. Paul, W. T. Tsai, Jay Bayne
The Impact of SOA Policy-Based Computing on C2 Interoperation and Computing R. Paul, W. T. Tsai, Jay Bayne 1 Table of Content Introduction Service-Oriented Computing Acceptance of SOA within DOD Policy-based
More informationFrom cradle to grave: An architecture substrate for software lifecycles
From cradle to grave: An architecture substrate for software lifecycles Nicolas Rouquette Principal Member of Technical Staff Jet Propulsion Laboratory California Institute of Technology The waterflow
More informationTowards a Unified Component & Deployment Model for Distributed Real Time Systems
Your systems. Working as one. Towards a Unified Component & Deployment Model for Distributed Real Time Systems Gerardo Pardo Castellote, Ph.D. CTO, Real Time Innovations Co Chair OMG DDS SIG Sumant Tambe,
More informationMaster of Science Thesis. Modeling deployment and allocation in the Progress IDE
Master of Science Thesis (D-level) Akademin för innovation, design och teknik David Šenkeřík Modeling deployment and allocation in the Progress IDE Mälardalen Research and Technology Centre Thesis supervisors:
More informationSoberIT Software Business and Engineering Institute. SoberIT Software Business and Engineering Institute. Contents
Architecture Description Languages (ADLs): Introduction, Koala, UML as an ADL T-76.150 Software Architecture Timo Asikainen Contents Brief motivation for ADLs General features of ADLs Koala UML as an ADL
More informationDescribing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms?
Describing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms? CIS 8690 Enterprise Architectures Duane Truex, 2013 Cognitive Map of 8090
More informationA Grid-Enabled Component Container for CORBA Lightweight Components
A Grid-Enabled Component Container for CORBA Lightweight Components Diego Sevilla 1, José M. García 1, Antonio F. Gómez 2 1 Department of Computer Engineering 2 Department of Information and Communications
More informationDistributed Middleware. Distributed Objects
Distributed Middleware Distributed objects DCOM CORBA EJBs Jini Lecture 25, page 1 Distributed Objects Figure 10-1. Common organization of a remote object with client-side proxy. Lecture 25, page 2 Distributed
More informationThe Koala Component Model for Consumer Electronics Software by: Ommering, Linden, Kramer, Magee. Presented by: Bridget Flaherty.
The Koala Component Model for Consumer Electronics Software by: Ommering, Linden, Kramer, Magee Presented by: Bridget Flaherty Koala Overview Motivation The Koala Model Handling Diversity Coping with Evolution
More informationArchitecture. Readings and References. Software Architecture. View. References. CSE 403, Spring 2003 Software Engineering
Readings and References Architecture CSE 403, Spring 2003 Software Engineering http://www.cs.washington.edu/education/courses/403/03sp/ References» Software Architecture, David Garlan, CMU, 2001 http://www-2.cs.cmu.edu/~able/publications/encycse2001/»
More informationWeb Services. Lecture I. Valdas Rapševičius. Vilnius University Faculty of Mathematics and Informatics
Web Services Lecture I Valdas Rapševičius Vilnius University Faculty of Mathematics and Informatics 2014.02.28 2014.02.28 Valdas Rapševičius. Java Technologies 1 Outline Introduction to SOA SOA Concepts:
More informationWhat is Software Architecture
What is Software Architecture Is this diagram an architecture? (ATM Software) Control Card Interface Cash Dispenser Keyboard Interface What are ambiguities in the previous diagram? Nature of the elements
More informationThe Problems and Promise of UML 2.0 Structures for SCA
The Problems and Promise of UML 2.0 Structures for SCA John Hogg CTO, Zeligsoft 2004-09-15 Version 1.4 Scalability Through Hierarchical Decomposition Many large systems have flat deployments However, virtually
More informationSelf-Managed Systems: an Architectural Challenge
Self-Managed Systems: an Architectural Challenge Kramer, Jeff and Magee, Jeff FOSE 07: 2007 Future of Software Engineering Summarized by Jason Porter Introduction A self-managed system is a system which
More informationArchitecture. CSE 403, Winter 2003 Software Engineering.
Architecture CSE 403, Winter 2003 Software Engineering http://www.cs.washington.edu/education/courses/403/03wi/ 21-February-2003 cse403-14-architecture 2003 University of Washington 1 References Readings
More informationHCI in the software process
chapter 6 HCI in the software process HCI in the software process Software engineering and the process for interactive systems Usability engineering Iterative and prototyping Design rationale the software
More informationHCI in the software. chapter 6. HCI in the software process. The waterfall model. the software lifecycle
HCI in the software process chapter 6 HCI in the software process Software engineering and the process for interactive systems Usability engineering Iterative and prototyping Design rationale the software
More informationHuman Computer Interaction Lecture 14. HCI in Software Process. HCI in the software process
Human Computer Interaction Lecture 14 HCI in Software Process HCI in the software process Software engineering and the design process for interactive systems Usability engineering Iterative design and
More informationSocket attaches to a Ratchet. 2) Bridge Decouple an abstraction from its implementation so that the two can vary independently.
Gang of Four Software Design Patterns with examples STRUCTURAL 1) Adapter Convert the interface of a class into another interface clients expect. It lets the classes work together that couldn't otherwise
More informationIntroduction to Dependable Systems: Meta-modeling and modeldriven
Introduction to Dependable Systems: Meta-modeling and modeldriven development http://d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics 3 Software development Automated software
More informationCurrent Issues and Future Trends. Architectural Interchange
Current Issues and Future Trends 1 Current Issues and Future Trends Architectural interchange Architectural toolkit Architectural refinement Architectural view integration Bringing architectures to the
More informationINRIA ADT galaxy An open agile SOA platform
1 INRIA ADT galaxy An open agile SOA platform Alain Boulze Tuvalu team & galaxy lead Séminaire IN Tech INRIA Montbonnot - 12-nov-2009 galaxy, an open SOA R&D platform enabling agility 2 Open An open internal
More informationHuman Computer Interaction Lecture 06 [ HCI in Software Process ] HCI in the software process
Human Computer Interaction Lecture 06 [ HCI in Software Process ] Imran Ihsan Assistant Professor www.imranihsan.com aucs.imranihsan.com HCI06 - HCI in Software Process 1 HCI in the software process Software
More informationComponent-based software engineering. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 19 Slide 1
Component-based software engineering Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 19 Slide 1 Objectives To explain that CBSE is concerned with developing standardised components and
More informationDeveloping Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach
Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach Ninat Wanapan and Somnuk Keretho Department of Computer Engineering, Kasetsart
More informationApplying Componentbased. Engineering in On-board Software
Applying Componentbased Software Engineering in On-board Software 22.10.2008 SciSys Bristol, UK Aleš Plšek, ales.plsek@inria.fr Frédéric Loiret Michal Malohlava Lionel Seinturier Philippe Merle 1 INRIA
More informationInterface-based enterprise and software architecture mapping
Interface-based enterprise and software architecture mapping Aziz Ahmad Rais Department of Information Technologies University of Economics, Prague Prague, Czech Republic aziz.rais@vse.cz aziz.ahmad.rais@gmail.com
More information6/20/2018 CS5386 SOFTWARE DESIGN & ARCHITECTURE LECTURE 5: ARCHITECTURAL VIEWS C&C STYLES. Outline for Today. Architecture views C&C Views
1 CS5386 SOFTWARE DESIGN & ARCHITECTURE LECTURE 5: ARCHITECTURAL VIEWS C&C STYLES Outline for Today 2 Architecture views C&C Views 1 Components and Connectors (C&C) Styles 3 Elements Relations Properties
More informationICSA 2017 Tutorial Runtime Modeling and Visualization -- Introduction to Palladio
DFG Priority Programme 1593 Design For Future - Managed Software Evolution ICSA 2017 Tutorial Runtime Modeling and Visualization -- Introduction to Palladio R. Heinrich ICSA 2017 Tutorial Introduction
More informationDynamic Adaptability of Services in Enterprise JavaBeans Architecture
1. Introduction Dynamic Adaptability of Services in Enterprise JavaBeans Architecture Zahi Jarir *, Pierre-Charles David **, Thomas Ledoux ** zahijarir@ucam.ac.ma, {pcdavid, ledoux}@emn.fr (*) Faculté
More information1 From Distributed Objects to Distributed Components
From Distributed Objects to Distributed : the Olan Approach Luc Bellissard, Michel Riveill BP 53, F 38041 Grenoble Cedex 9, FRANCE Phone: (33) 76 61 52 78 Fax: (33) 76 61 52 52 Email: Luc.Bellissard@imag.fr
More informationCompositional Model Based Software Development
Compositional Model Based Software Development Prof. Dr. Bernhard Rumpe http://www.se-rwth.de/ Seite 2 Our Working Groups and Topics Automotive / Robotics Autonomous driving Functional architecture Variability
More informationModel Driven Development of Component Centric Applications
Model Driven Development of Component Centric Applications Andreas Heberle (entory AG), Rainer Neumann (PTV AG) Abstract. The development of applications has to be as efficient as possible. The Model Driven
More informationConfiguration Management for Component-based Systems
Configuration Management for Component-based Systems Magnus Larsson Ivica Crnkovic Development and Research Department of Computer Science ABB Automation Products AB Mälardalen University 721 59 Västerås,
More informationInformation Quality & Service Oriented Architecture
Information Quality & Oriented Architecture Presentation for the MIT IQ Industry Symposium July 17, 2007 Dave Becker The MITRE Corporation Approved for Public Release; Distribution Unlimited. (070837)
More informationCharles University in Prague Faculty of Mathematics and Physics DOCTORAL THESIS. Viliam Holub
Charles University in Prague Faculty of Mathematics and Physics DOCTORAL THESIS Viliam Holub Fighting the State Explosion Problem in Component Protocols Department of Software Engineering Advisor: Prof.
More informationObject oriented programming. Encapsulation. Polymorphism. Inheritance OOP
OOP Object oriented programming Polymorphism Encapsulation Inheritance OOP Class concepts Classes can contain: Constants Delegates Events Fields Constructors Destructors Properties Methods Nested classes
More information5/9/2014. Recall the design process. Lecture 1. Establishing the overall structureof a software system. Topics covered
Topics covered Chapter 6 Architectural Design Architectural design decisions Architectural views Architectural patterns Application architectures Lecture 1 1 2 Software architecture The design process
More informationChapter 6 Enterprise Java Beans
Chapter 6 Enterprise Java Beans Overview of the EJB Architecture and J2EE platform The new specification of Java EJB 2.1 was released by Sun Microsystems Inc. in 2002. The EJB technology is widely used
More informationOrthographic Software Modeling A Practical Approach to View Based Development
Orthographic Software Modeling A Practical Approach to View Based Development Colin Atkinson University of Mannheim Germany MSI 2009 7 th October 2009 Oldenburg Outline Modern software engineering paradigms
More information10.1 Big Objects, Business Objects, and UML Components
II Black-Box Composition Systems 10. Finding Business s in a -Based Development Process Literature J. Cheesman, J. Daniels. UML s. Addison-Wesley. 1. The UML component model 2. Business component model
More informationWeb Services. Lecture I. Valdas Rapševičius Vilnius University Faculty of Mathematics and Informatics
Web Services Lecture I Valdas Rapševičius Vilnius University Faculty of Mathematics and Informatics 2015.02.19 Outline Introduction to SOA SOA Concepts: Services Loose Coupling Infrastructure SOA Layers
More informationMiddleware: Challenges and Evolution from Procedural to Service Orientation
Middleware: Challenges and Evolution from Procedural to Service Orientation Bruno Traverson (bruno.traverson@edf.fr) IWAISE 2008 APRIL 2008 1-1 Middleware [Meeting in the Middle, Ruth Palmer] Contraction
More informationJava/A Taking Components into Java
Java/A Taking Components into Java Florian Hacklinger Institut für Informatik Ludwig-Maximilians-Universität München Oettingenstraße 67, 80538 München, Germany florian.hacklinger@pst.ifi.lmu.de Abstract
More informationComplexity. Object Orientated Analysis and Design. Benjamin Kenwright
Complexity Object Orientated Analysis and Design Benjamin Kenwright Outline Review Object Orientated Programming Concepts (e.g., encapsulation, data abstraction,..) What do we mean by Complexity? How do
More informationGSAW Software Architectures: What are we Building? March 1999
GSAW 1999 Software Architectures: What are we Building? March 1999 Roger J. Dziegiel, Jr AFRL/IFTD 525 Brooks Rd Rome, NY 13441-4505 (315)330-2185 dziegielr@rl.af.mil Arch1 Architecture & Generation Parameterized
More informationChapter 8: Class and Method Design
Chapter 8: Class and Method Design Objectives Become familiar with coupling, cohesion, and connascence. Be able to specify, restructure, and optimize object designs. Be able to identify the reuse of predefined
More informationUniversity of Groningen. Architectural design decisions Jansen, Antonius Gradus Johannes
University of Groningen Architectural design decisions Jansen, Antonius Gradus Johannes IMPORTANT NOTE: You are advised to consult the publisher's version (publisher's PDF) if you wish to cite from it.
More informationSemantic SOA - Realization of the Adaptive Services Grid
Semantic SOA - Realization of the Adaptive Services Grid results of the final year bachelor project Outline review of midterm results engineering methodology service development build-up of ASG software
More informationComponent-based Development Process and Component Lifecycle
Journal of Computing and Information Technology - CIT 13, 2005, 4, 321-327 321 Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2 and Michel Chaudron 3 1 Mälardalen
More informationCover Page. The handle holds various files of this Leiden University dissertation
Cover Page The handle http://hdl.handle.net/1887/22891 holds various files of this Leiden University dissertation Author: Gouw, Stijn de Title: Combining monitoring with run-time assertion checking Issue
More informationSoftware Design Patterns. Background 1. Background 2. Jonathan I. Maletic, Ph.D.
Software Design Patterns Jonathan I. Maletic, Ph.D. Department of Computer Science Kent State University J. Maletic 1 Background 1 Search for recurring successful designs emergent designs from practice
More informationModel Driven, Component Based Development for CBDDS. IDL to C++11. Johnny Willemsen
Model Driven, Component Based Development for CBDDS IDL to C++11 Johnny Willemsen jwillemsen@remedy.nl This presentation is based on material from Northrop Grumman Component Based DDS (CBDDS) CBDDS is
More informationADVANCED SOFTWARE DESIGN LECTURE 4 SOFTWARE ARCHITECTURE
ADVANCED SOFTWARE DESIGN LECTURE 4 SOFTWARE ARCHITECTURE Dave Clarke 1 THIS LECTURE At the end of this lecture you will know notations for expressing software architecture the design principles of cohesion
More informationSoftware Architectures. Lecture 8
Software Architectures Lecture 8 Roadmap of the course What is software architecture? Designing Software Architecture Requirements: quality attributes or qualities How to achieve requirements : tactics
More informationCHALLENGES IN ADAPTIVE WEB INFORMATION SYSTEMS: DO NOT FORGET THE LINK!
CHALLENGES IN ADAPTIVE WEB INFORMATION SYSTEMS: DO NOT FORGET THE LINK! GEERT-JAN HOUBEN Technische Universiteit Eindhoven PO Box 513, NL-5600 MB Eindhoven, The Netherlands E-mail: g.j.houben@tue.nl In
More informationStudy of Component Based Software Engineering
Study of Based Software Ishita Verma House No.4, Village Dayalpur Karawal Nagar Road Delhi-110094, India ish.v.16@gmail.com Abstract based engineering is an approach of development that emphasizes the
More informationMashups for Composite Enterprise Applications
Mashups for Composite Enterprise Applications SYSTEMATIC THOUGHT LEADERSHIP FOR INNOVATIVE BUSINESS Shel Finkelstein and Ümit Yalcinalp SAP Research, Palo Alto shel.finkelstein@sap.com umit.yalcinalp@sap.com
More informationAN INTEGRATED COMPONENT-BASED APPROACH TO ENTERPRISE SYSTEM SPECIFICATION AND DEVELOPMENT
AN INTEGRATED COMPONENT-BASED APPROACH TO ENTERPRISE SYSTEM SPECIFICATION AND DEVELOPMENT Zoran Stojanovic, Ajantha Dahanayake Faculty of Information Technology and Systems, Delft University of Technology,
More informationSoftware Design COSC 4353/6353 D R. R A J S I N G H
Software Design COSC 4353/6353 D R. R A J S I N G H Design Patterns What are design patterns? Why design patterns? Example DP Types Toolkit, Framework, and Design Pattern A toolkit is a library of reusable
More informationArchitectural Blueprint
IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion Architectural Blueprint
More informationContainer Services for High Confidence Software
Container Services for High Confidence Software Gary J. Vecellio, William M. Thomas, and Robert M. Sanders The MITRE Corporation 7515 Colshire Drive McLean, VA 22102-7508 {vecellio,bthomas,rsanders}@mitre.org
More informationJ2EEML: Applying Model Driven Development to Autonomic Enterprise Java Bean Systems
J2EEML: Applying Model Driven Development to Autonomic Enterprise Java Bean Systems Jules White jules@dre.vanderbilt.edu Institute for Software Integrated Systems (ISIS) Vanderbilt University Nashville,
More informationFormal Foundations of Software Engineering
Formal Foundations of Software Engineering http://d3s.mff.cuni.cz Martin Nečaský Pavel Parízek CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics Goals of the course Show methods and tools
More informationSOFTWARE CONNECTORS AND THEIR ROLE IN COMPONENT DEPLOYMENT
. SOFTWARE CONNECTORS AND THEIR ROLE IN COMPONENT DEPLOYMENT Dušan Bálek 1, František Plášil 1,2 1 Charles University, Faculty of Mathematics and Physics, Department of Software Engineering, Malostranské
More informationIntroduction to Web Services & SOA
References: Web Services, A Technical Introduction, Deitel & Deitel Building Scalable and High Performance Java Web Applications, Barish Service-Oriented Programming (SOP) SOP A programming paradigm that
More information