A Model Driven Component Framework for Mobile Computing

Size: px
Start display at page:

Download "A Model Driven Component Framework for Mobile Computing"

Transcription

1 Model Driven Framework for Mobile Computing Egon Teiniker, Stefan Mitterdorfer, Leif Morgan Johnson, Christian Kreiner, Zsolt Kovács Institute for Technical Informatics Graz University of Technology, ustria Salomon utomation GmbH Friesach bei Graz, ustria bstract Shorter product cycles and increasing system and software complexity, especially with respect to mobile computing, require changes in software construction and the utilization of leading-edge technologies. We present an abstract, platform-independent component model as a basis for component-oriented development, leading to better software reuse and reduction of architectural complexity. For this component model we have defined mappings to various combinations of programming language, middleware and operating system. ccording to these mappings, and with the support of tools, concrete component logic for a certain platform can be generated from an abstract component description. Keywords: mobile computing, MD, CCM; I. INTRODUCTION Mobile devices are increasingly common in multi-tier information systems, which opens up another dimension of complexity in terms of development for heterogeneous platforms and communication links. In addition, marketplaces are exerting pressure to increase software development efficiency. In order to succeed, software reuse has to be boosted, and complexity has to be tamed in some manner. In both respects Based Development (CBD), and the software product line approach in particular, seem to be promising [2]. We propose a component framework which offers a defined common component model based on the CORB Model (CCM), serving as an abstract basis for CBD. This allows us to build a CBD process upon the framework, with clearly defined roles of component designers, developers, and application assemblers. The component model can be mapped to various programming languages. Tools generate the component logic from the component definition for a variety of language, OS and communication platform combinations. II. RELTED WORK. Middleware in heterogeneous environments The improved performance in mobile computing allows the use of middleware technologies coming primarily from enterprise computing. Meanwhile, the specifications of middleware are more and more adapted to the requirements of mobile and real time environments. The Object Management Group (OMG) specified the Common Object Request Broker rchitecture (CORB) [13] as a middleware standard in enterprise computing. CORB is designed to work especially in heterogeneous systems with different programming languages. With the last version there came extensions to the CORB standard that address the requirements in mobile environments where resources are limited: Minimum CORB [15] is a subset of CORB designed for systems with limited resources. It omits dynamic aspects of CORB but is fully interoperable with standard CORB. Real Time CORB [16] is an optional set of extensions to CORB that provides standard policies and mechanisms to support quality of service requirements. Thus, the Object Request Broker (ORB) can to be used as a component in Real Time systems. Wireless ccess and Terminal Mobility in CORB [11] specifies an architecture and interfaces to support wireless access and terminal mobility in CORB. Transparency of the mobility mechanism to non mobile ORBs has been the primary design constraint. stationary ORB does not have to implement this specification in order to interoperate with CORB objects and clients running on mobile terminals. With these specifications, along with its increasing industry use, CORB seems to be a suitable middleware standard for the next generation of mobile computing. B. based development The main challenge for software developers is to handle complexity and to adapt quickly to change. These problems are addressed by a rapidly emerging approach called Based Development (CBD) [2]. In its simplest form, a software component contains some code and an interface that provides access to the component. From outside components should be looked at as black boxes; their interface alone provides all of the information needed by users. In CBD we distinguish development of components from development of systems using components. While the component development process is focused on building reusable units, the system development process concentrates on the

2 reuse of components and their evaluation and integration. These tasks can be performed independently of each other. The system architecture in CBD will be the result of the choice of a component model that defines the overall structure and communication mechanisms of software components. based real time systems must take care of timing constraints, reliability and robustness. Unfortunately general purpose component models often do not provide real time support. C. Model driven architecture The OMG has proposed a modeling language called the Unified Modeling Language (UML) [12] for describing all kinds of object oriented software artifacts. In the upcoming UML 2.0 standard [17, 18] there are some extensions for real time modeling (Timing Diagrams) and formal methods (executable models). The OMG also defines a notation to express meta-models called Meta Object Facility (MOF) [14]. For example, MOF has been used to define the UML meta-model. To simplify modeling, design and implementation, the OMG defined the Model Driven rchitecture (MD) [10, 6, 1]. Using MD, an application is completely defined at the model level, expressed in UML. n MD application s base model specifies every detail of its business functionality and behavior in a technology neutral way - the Platform Independent Model (PIM). MD tools follow an OMG standard mapping to generate a Platform Specific Model (PSM). In the final development step, working from the PSM, MD tools generate interface definitions, application code, makefiles, and configuration files for the PSM s middleware platform. Because the PIM is middleware neutral and conversion to PSM and then to the implementation is mostly automatic, it is practical to produce equivalent implementations of MD based applications on multiple target platforms. The MD supports applications over their full lifecycle starting with design and moving on to coding, testing, development, and maintenance. III. CORB COMPONENT MODEL The CORB component model (CCM) [19] defines a component architecture and a container framework in which the component life cycle takes place. CCM Equivalent Facets Receptacles ttributes Figure 1: CCM component Event Sinks Event Sources (Fig. 1) provides a variety of surface features that support ways to connect components together to form assemblies: Facets are named interfaces that provide access to specific component methods; Receptacles are named connection points that describe the ability to use a facet; Event sources are named connection points that emit events of specified type to one or more interested consumers or to an event channel; Event sinks are named connection points into which events of a specified type may be pushed; and finally ttributes are named values exposed through accessor and mutator operations. Container ORB Callback Internal PO CORB External Figure 2: CCM component container s run in a CCM Container (Fig. 2) that provides the runtime environment for CORB components. Containers are built on the Object Request Broker (ORB), the Portable Object dapter (PO) and CORB services. Connecting components by their ports leads to component ssemblies that are described by assembly descriptors. IV. MODEL DRIVEN COMPONENT DEVELOPMENT. logic vs. business logic The CCM specification hides most of the CORB programming details from the application developer, but it still forces the developer to deal with CORB references, data types and memory management. While the OMG Java mapping [9] is acceptable in this regard, the C++ mapping [8] does not use the advantages of standard C++ like strings, vectors and lists. To improve the usability of CCM, we have proposed a new approach that provides an easy way to implement business logic without having to pay attention to CORB details [21]. We separate the application code from the implementation of the CORB component logic (Fig. 3). For every IDL definition of a CORB interface or component, we define a corresponding interface in the implementation language.

3 Equivalent Facets ttributes CCM Receptacles Figure 3: Local component adapter concept dapters (labeled with in Fig. 3) provide CORB mappings, and link the implementation of business logic to the CCM component. It is important to keep in mind that these adapters do not change the client view of a component, so our approach still conforms to the CCM standard. B. model vs. component realization The CCM component model,, is defined by two meta-models, namely the BaseIDL and the IDL. The BaseIDL meta-model defines the classic CORB interface repository while the IDL meta-model expresses the component model extensions. Dividing component models from component realizations leads to more flexibility in component development as shown in Fig. 4. IDL3 File UML Model g1 p1 p2 Metamodel Library CCM Model M CCM Figure 4: Mapping to and from the CCM model g2 g3 g4 g5 remote C++ remote Java C++ definition: component is defined by its interfaces, which are written in IDL [13]. There is a mapping from the IDL syntax to a component model in respect to the component meta-model. The component model can also be mapped to an IDL syntax! "!#. Beyond the IDL description there can be other mappings, e.g. a UML model. UML model would describe a component only if there is a valid mapping to the component model %$&!(')&*+,. Java implementation: To implement component logic means to define a mapping from the component model to a particular realization using programming languages and middleware technologies:.-!/ ;:;9 4=<><>< Note that the component model is mapped directly to a realization in a programming language. This generated code is the inside view of the component logic for the component developers. The component developer writes the business logic in respect to the implementation of in a particular programming language without having to worry about or remote invocation. The generated component logic includes all of the adapters need for transparently substituting middleware technologies and component collocation. Thus, there must be a set of code generating tools that realize the mappings between and different device and communication platforms. Especially in mobile computing, where communication mechanisms are heterogeneous, the model driven component development concept leads to a more general programming model, and the written business logic is portable between different platforms because of the additional component model abstraction layer. C. Remote components The CCM specification describes a mapping from the component model to remote components in different programming languages, where all ports are accessible from CORB clients. Each remote component is accessible from any point in the network, but communication between components in the same address space is very expensive because method calls still have to go through the CORB ORB. There are some techniques for transparently optimizing communication overhead (e.g. CORB collocation [20, 22, 23]). To separate the business logic from the CORB component logic we define adapter classes as explained above. Then deploying a component remotely or ly is just a matter of using the appropriate adaptors. D. Local components One of the important issues in Based Software Engineering (CBSE) [5] is the granularity of components. Fat components increase runtime performance, but their reuse is limited. On the other hand, thin components lead to significant communication overhead but are easy to reuse. To implement thin components in the same address space we need a specific component model that defines components and their interconnections. In Java there already exists such a thin component model (JavaBeans [3]),

4 but in other languages like C++ and Python there are no such specifications. There is a need for a language independent component model with mappings to many different programming languages. Instead of inventing another new component model, we use the CORB Model in a manner. We defined a mapping from the component model / to realizations in C++ and Java without using middleware. We can also leave some ports while some other ports are made remotely accessible by using a remote adapter. Note that the decision between using the or remote adapters does not affect the implementation of the business logic; in other words we can scale the remote accessibility of a component port by port. E. ssemblies of and remote components Local components increase runtime performance, but they are not accessible from other devices in a network. To overcome this problem, we build assemblies of and remote components using the Session Facade pattern [7]. Fig. 5 shows an example of two assemblies running on different devices. IDL parser The IDL parser reads the IDL source code, checks the syntax and creates the component model in memory. Model driven code generator The different mappings between the component model and the implementations of component logic / are realized by a model driven code generator tool that uses template sets to be flexible and extensible. The generator considers the as a graph in memory and follows a general design paradigm known as the visitor pattern [4]. There are three parts of a generator: The graph traverser is responsible for traversing a given graph in memory; the node handler receives traversal events from the traverser and performs the code generation; and a template set is essentially a collection of plain text files. These files are written in the target code language. This model driven component development framework offers us the ability to generate software component logic for different mobile devices using different communication structures. We can also implement business logic in various programming languages. VI. CONCLUSION ND FUTURE WORK Device Device B Figure 5: assembly n assembly can be described as a directed graph where the nodes are component instances and the edges are receptacle to facet connections. From the client s point of view, the session facade component looks like a fat remote component. In fact, this fat component is an assembly instance graph consisting of thin remote and components that ensure easy reuse of business code. V. COMPONENT DEVELOPMENT FRMEWORK To use the model driven component development concept, we support tools that result in a component development framework. CCM meta-model library We have implemented a meta-model library of the CCM Repository (IR) that supports navigation between the different parts of the model as well as access methods to their attributes. We have presented a component model based on the CORB Model (CCM) that is usable for location and middleware independent development of software components. It serves as a common abstraction for heterogeneous OS platforms, programming languages, and communication infrastructure from middleware to collocation. Thus it is equally applicable to information system servers, clients, and mobile clients. In this way it serves not only as a common basis for component based development, but also gives additional freedom when choosing deployment nodes for components. Generators produce component logic from the component interface definition for a certain language, middleware and OS combination. t the time of writing, generators for C++ components, remote (CCM) C++ components and complementary IDL are available. The latter is used for regression testing logic at the component level. Currently, development takes place primarily on Linux with the focus on stabilizing the component model and generators. Future work will concentrate on additional generator variants for Java and Python, and both and remote and migration to wirelessly coupled PD devices with limited resources. The presented approach is part of a comprehensive framework for multi-tier information and control systems in the area of logistics. Other topics covered in this framework are (G)UI technology and database access. REFERENCES [1] Jean Bézivin. From Object Composition to Model Transformation with the MD. Proceedings of TOOLS, 2001.

5 [2] Ivica Crnkovic and Magnus Larsson. Building Reliable -based Software Systems. rtech House Publishers, [3] Robert Englander. Developing Java Beans. The Java Series. O REILLY, [4] Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns. ddison-wesley, Reading, M, [5] George T. Heineman and William T. Councill. -Based Software Engineering - Putting the Pieces Together. ddison Wesley, [6] Jon Siegel. Using OMG s Model Driven rchitecture (MD) to Integrate Web Services. Technical report, Object Management Group, [7] Floyd Marinescu. EJB Design Patterns: dvanced Patterns, Processes and Idioms. Wiley Computer Publishing, [20] Douglas C. Schmidt, Nanbor Wang, and Steve Vinoski. Object Interconnections: Collocation Optimization for CORB. SIGS C++ Report, [21] Egon Teiniker, Stefan Mitterdorfer, Christian Kreiner, Zsolt Kovács, and Reinhold Weiss. Local s and Reuse of Legacy Code in the CORB Model. In Ivica Crnkovic and Gerhard Fohler, editors, EUROMICRO 2002, -Based Software Engineering Track, Dortmund, Germany, Sept. 4-6, 2002, pages 4 9, Los lamitos, C, IEEE Computer Society. [22] N. Wang, D. Schmidt, and D. Levine. Optimizing the CORB Model for High-performance and Real-time pplications, [23] Nanbor Wang, Michael Kircher, and Douglas C. Schmidt. pplying Reflective Middleware Techniques to Optimize a QoS-enabled CORB Model Implementation [8] OMG. C++ Language Mapping Specification. Technical Report , Object Management Group, [9] OMG. IDL to Java Language Mapping Specification. Technical Report , Object Management Group, [10] OMG. Model Driven rchitecture (MD). Technical Report , Object Management Group, [11] OMG. Telecom Wireless CORB. Technical Report , Object Management Group, [12] OMG. Unified Modeling Language (UML), Version 1.4. Technical Report , Object Management Group, [13] OMG. Common Object Request Broker rchitecture (CORB/IIOP), Version 3.0. Technical Report , Object Management Group, [14] OMG. Meta-Object Facility (MOF), Version 1.4. Technical Report , Object Management Group, [15] OMG. Minimum CORB, Version 1.0. Technical Report , Object Management Group, [16] OMG. Real-Time CORB, Version 1.1. Technical Report , Object Management Group, [17] OMG. UML Infrastructure, Version 2.0. Technical Report , Object Management Group, [18] OMG. UML Superstructure, Version 2.0. Technical Report , Object Management Group, [19] OMG. CORB s. Technical Report , Object Management Group, June, 2002.

A Grid-Enabled Component Container for CORBA Lightweight Components

A 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 information

Developing 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 Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach Ninat Wanapan and Somnuk Keretho Department of Computer Engineering, Kasetsart

More information

Object Security. Model Driven Security. Ulrich Lang, Rudolf Schreiner. Protection of Resources in Complex Distributed Systems

Object Security. Model Driven Security. Ulrich Lang, Rudolf Schreiner. Protection of Resources in Complex Distributed Systems Object Security TM The Security Policy Company Protection of Resources in Complex Distributed Systems Ulrich Lang, Rudolf Schreiner ObjectSecurity Ltd. University of Cambridge Agenda COACH Project Model

More information

ISO/IEC INTERNATIONAL STANDARD

ISO/IEC INTERNATIONAL STANDARD INTERNATIONAL STANDARD This is a preview - click here to buy the full publication ISO/IEC 19500-3 First edition 2012-04-15 Information technology Object Management Group Common Object Request Broker Architecture

More information

Model-Driven QoS Provisioning Techniques for CCM DRE Systems

Model-Driven QoS Provisioning Techniques for CCM DRE Systems Model-Driven QoS Provisioning Techniques for CCM DRE Systems Stoyan Paunov, Gan Deng, Douglas C. Schmidt, and Anirudha Gokhale ISIS, Vanderbilt University Motivation for QoS-enabled Middleware Trends!

More information

Concern-based Composition and Reuse of Distributed Systems

Concern-based Composition and Reuse of Distributed Systems Concern-based Composition and Reuse of Distributed Systems Andrey Nechypurenko andrey.nechypurenko@siem ens.com Siemens AG, Germany Douglas Schmidt, Tao Lu, Gan Deng, Emre Turkay, Aniruddha Gokhale Vanderbilt

More information

CHARLES 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 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 information

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM):

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM): viii Preface The software industry has evolved to tackle new approaches aligned with the Internet, object-orientation, distributed components and new platforms. However, the majority of the large information

More information

COMPARATIVE STUDY OF TECHNOLOGIES RELATED TO COMPONENT-BASED APPLICATIONS BASED ON THEIR RESPONSE TIME PERFORMANCE

COMPARATIVE STUDY OF TECHNOLOGIES RELATED TO COMPONENT-BASED APPLICATIONS BASED ON THEIR RESPONSE TIME PERFORMANCE 102 COMPARATIVE STUDY OF TECHNOLOGIES RELATED TO COMPONENT-BASED APPLICATIONS BASED ON THEIR RESPONSE TIME PERFORMANCE Richa Balauria 1, Arvind Kalia 2 Department of Computer Science, H.P University, Shimla

More information

X-S Framework Leveraging XML on Servlet Technology

X-S Framework Leveraging XML on Servlet Technology X-S Framework Leveraging XML on Servlet Technology Rajesh Kumar R Abstract This paper talks about a XML based web application framework that is based on Java Servlet Technology. This framework leverages

More information

An Introduction to Model Driven Engineering (MDE) Bahman Zamani, Ph.D. bahmanzamani.com

An Introduction to Model Driven Engineering (MDE) Bahman Zamani, Ph.D. bahmanzamani.com An Introduction to Model Driven Engineering (MDE) Bahman Zamani, Ph.D. bahmanzamani.com Department of Software Systems Engineering University of Isfahan Fall 2013 Overview Model & Modeling UML & UML Profile

More information

Application Servers in E-Commerce Applications

Application Servers in E-Commerce Applications Application Servers in E-Commerce Applications Péter Mileff 1, Károly Nehéz 2 1 PhD student, 2 PhD, Department of Information Engineering, University of Miskolc Abstract Nowadays there is a growing demand

More information

Model Driven Architecture - The Vision

Model Driven Architecture - The Vision Model Driven Architecture - The Vision Marko Fabiunke Fraunhofer Institut für Rechnerarchitektur und Softwaretechnik marko.fabiunke@first.fraunhofer.de The Fraunhofer FIRST Institut Your partner We support

More information

Model Driven Architecture and Rhapsody

Model Driven Architecture and Rhapsody Model Driven Architecture and Rhapsody Dr. Bruce Powel Douglass Chief Evangelist Telelogic Model Driven Architecture and Rhapsody Abstract MDA, short for Model Driven Architecture, is a unification by

More information

Automatic Code Generation for Non-Functional Aspects in the CORBALC Component Model

Automatic 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 information

Model Driven Architecture Targets Middleware Interoperability Challenges

Model Driven Architecture Targets Middleware Interoperability Challenges Model Driven Architecture Targets Middleware Interoperability Challenges by Richard Soley Chairman and Chief Executive Officer Object Management Group and the OMG Staff Strategy Group "CORBA was a powerful

More information

Component models. Page 1

Component 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 information

Tools & Techniques for Deployment & Configuration of QoS- enabled Component Applications

Tools & Techniques for Deployment & Configuration of QoS- enabled Component Applications Tools & Techniques for Deployment & Configuration of QoS- enabled Applications jai@dre.vanderbilt.edu www.dre.vanderbilt.edu/~jai Gan Deng dengg@dre.vanderbilt.edu www.dre.vanderbilt.edu/~dengg Dr. Aniruddha

More information

Synthesizing Communication Middleware from Explicit Connectors in Component Based Distributed Architectures

Synthesizing Communication Middleware from Explicit Connectors in Component Based Distributed Architectures Synthesizing Communication Middleware from Explicit Connectors in Component Based Distributed Architectures Dietmar Schreiner 1,2 and Karl M. Göschka 1 1 Vienna University of Technology Institute of Information

More information

Model Driven Architecture

Model Driven Architecture Model Driven Architecture Vision VS Reality EDOC 2001 September 4-7, Seattle, USA Sridhar Iyengar Unisys Fellow Member, OMG Architecture Board sridhar.iyengar2@unisys.com Slide 1 Model Driven Architecture

More information

Software Components and Distributed Systems

Software 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 information

Component-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 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 information

C-QM: A PRACTICAL QUALITY MODEL FOR EVALUATING COTS COMPONENTS

C-QM: A PRACTICAL QUALITY MODEL FOR EVALUATING COTS COMPONENTS C-QM: A PRACTICAL QUALITY MODEL FOR EVALUATING COTS COMPONENTS Soo Dong Kim, Ji Hwan Park Department of Computer Science Soongsil University 1-1 Sangdo-5-Dong, Dongjak-Ku, Seoul South Korea, 156-743 want

More information

Second OMG Workshop on Web Services Modeling. Easy Development of Scalable Web Services Based on Model-Driven Process Management

Second OMG Workshop on Web Services Modeling. Easy Development of Scalable Web Services Based on Model-Driven Process Management Second OMG Workshop on Web Services Modeling Easy Development of Scalable Web Services Based on Model-Driven Process Management 88 solutions Chief Technology Officer 2003 Outline! Introduction to Web Services!

More information

Developing in OMG s Model-Driven Architecture

Developing in OMG s Model-Driven Architecture Developing in OMG s Model-Driven Architecture Jon Siegel and the OMG Staff Strategy Group Object Management Group White Paper November, 2001 Revision 2.6 In an accompanying white paper 1, the Object Management

More information

METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE

METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE UDC:681.324 Review paper METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE Alma Butkovi Tomac Nagravision Kudelski group, Cheseaux / Lausanne alma.butkovictomac@nagra.com Dražen Tomac Cambridge Technology

More information

Model-Driven Optimizations of Component Systems

Model-Driven Optimizations of Component Systems Model-Driven Optimizations of omponent Systems OMG Real-time Workshop July 12, 2006 Krishnakumar Balasubramanian Dr. Douglas. Schmidt {kitty,schmidt}@dre.vanderbilt.edu Institute for Software Integrated

More information

DRAFT. Consolidation of the Generator Infrastructure MDGEN Model Driven Generation

DRAFT. Consolidation of the Generator Infrastructure MDGEN Model Driven Generation Consolidation of the Generator Infrastructure MDGEN Model Driven Generation Date: October 16 th, 2012 Produced by: Mario Lovisi / Serano Colameo Version: 1.0 DRAFT Agenda Initial Situation / Goal of the

More information

02291: System Integration

02291: System Integration 02291: System Integration Week 10 Hubert Baumeister huba@dtu.dk DTU Compute Technical University of Denmark Spring 2018 Last Week Principles of good design: layered architecture Software Development Processes

More information

EuroPLoP 2003 Focus Group: Patterns for Component Composition and Adaptation

EuroPLoP 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 information

Configuration Management for Component-based Systems

Configuration 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 information

Model Driven Development Unified Modeling Language (UML)

Model Driven Development Unified Modeling Language (UML) Model Driven Development Unified Modeling Language (UML) An Overview UML UML is a modeling notation standardized by OMG (proposal 1997, ver.1.1 in 1998, ver. 2.0 in 2004) now in 2.4.1 mature based on notations

More information

Minsoo Ryu. College of Information and Communications Hanyang University.

Minsoo 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 information

Patterns for polymorphic operations

Patterns for polymorphic operations Patterns for polymorphic operations Three small object structural patterns for dealing with polymorphism Alexander A. Horoshilov hor@epsylontech.com Abstract Polymorphism is one of the main elements of

More information

GUI framework communication via the WWW

GUI framework communication via the WWW GUI framework communication via the WWW Thomas Tilley, School of Information Technology, Griffith University, Australia 4215, T.Tilley@gu.edu.au Peter Eklund, School of Information Technology, Griffith

More information

Model-Based Social Networking Over Femtocell Environments

Model-Based Social Networking Over Femtocell Environments Proc. of World Cong. on Multimedia and Computer Science Model-Based Social Networking Over Femtocell Environments 1 Hajer Berhouma, 2 Kaouthar Sethom Ben Reguiga 1 ESPRIT, Institute of Engineering, Tunis,

More information

Towards a Unified Component & Deployment Model for Distributed Real Time Systems

Towards 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 information

From Models to Components. Rapid Service Creation with

From Models to Components. Rapid Service Creation with From Models to Components Rapid Service Creation with Marc Born, Olaf Kath {born kath}@ikv.de Evolutions in Software Construction C O M P L E X I T Y Model Driven Architectures Meta Object Facility and

More information

Object-Oriented Software Development Goal and Scope

Object-Oriented Software Development Goal and Scope Object-Oriented Software Development Goal and Scope Koichiro Ochimizu Japan Advanced Institute of Science and Technologies School of Information Science Scope and Goal Goal enable you to understand basic

More information

A Systematic Approach to Composing Heterogeneous Components

A Systematic Approach to Composing Heterogeneous Components A Systematic Approach to Composing Heterogeneous Components HUANG Gang, MEI Hong, WANG Qian-xiang, YANG Fu-qing Dept of Computer Science & Technology, Peking University, Beijing 100871 {huanggang, meih,

More information

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Layers of an information system. Design strategies.

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Layers of an information system. Design strategies. Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 2 Distributed Information Systems Architecture Chapter Outline

More information

ΗΜΥ 317 Τεχνολογία Υπολογισμού

ΗΜΥ 317 Τεχνολογία Υπολογισμού ΗΜΥ 317 Τεχνολογία Υπολογισμού Εαρινό Εξάμηνο 2008 ΙΑΛΕΞΕΙΣ 16-17: Component-Based Software Engineering ΧΑΡΗΣ ΘΕΟΧΑΡΙ ΗΣ Λέκτορας ΗΜΜΥ (ttheocharides@ucy.ac.cy) [Προσαρμογή από Ian Sommerville, Software

More information

POAD 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 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 information

6. The Document Engineering Approach

6. The Document Engineering Approach 6. The Document Engineering Approach DE + IA (INFO 243) - 11 February 2008 Bob Glushko 1 of 40 Plan for Today's Class Modeling Methodologies The Document Engineering Approach 2 of 40 What Modeling Methodologies

More information

* Corresponding Author

* Corresponding Author A Model Driven Architecture for REA based systems Signe Ellegaard Borch, Jacob Winther Jespersen, Jesper Linvald, Kasper Østerbye* IT University of Copenhagen, Denmark * Corresponding Author (kasper@it-c.dk)

More information

Today: Distributed Objects. Distributed Objects

Today: 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 information

JAYARAM. COLLEGE OF ENGINEERING AND TECHNOLOGY Pagalavadi, Tiruchirappalli (An approved by AICTE and Affiliated to Anna University)

JAYARAM. COLLEGE OF ENGINEERING AND TECHNOLOGY Pagalavadi, Tiruchirappalli (An approved by AICTE and Affiliated to Anna University) Estd: 1994 Department of Computer Science and Engineering Subject code : IT1402 Year/Sem: IV/VII Subject Name JAYARAM COLLEGE OF ENGINEERING AND TECHNOLOGY Pagalavadi, Tiruchirappalli - 621014 (An approved

More information

09. Component-Level Design

09. Component-Level Design 09. Component-Level Design Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 What is Component OMG UML Specification defines a component as OO view a

More information

Universal Communication Component on Symbian Series60 Platform

Universal Communication Component on Symbian Series60 Platform Universal Communication Component on Symbian Series60 Platform Róbert Kereskényi, Bertalan Forstner, Hassan Charaf Department of Automation and Applied Informatics Budapest University of Technology and

More information

Model 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 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 information

DESIGN PATTERN - INTERVIEW QUESTIONS

DESIGN PATTERN - INTERVIEW QUESTIONS DESIGN PATTERN - INTERVIEW QUESTIONS http://www.tutorialspoint.com/design_pattern/design_pattern_interview_questions.htm Copyright tutorialspoint.com Dear readers, these Design Pattern Interview Questions

More information

innoq Deutschland GmbH innoq Schweiz GmbH D Ratingen CH-6330 Cham Tel Tel

innoq Deutschland GmbH innoq Schweiz GmbH D Ratingen CH-6330 Cham Tel Tel innoq Deutschland GmbH innoq Schweiz GmbH D-40880 Ratingen CH-6330 Cham Tel +49 2102 77 1620 Tel +41 41 743 01 11 www.innoq.com Stefan Tilkov, stefan.tilkov@innoq.com 1 Goals Introduce MDE, MDA, MDD, MDSD,...

More information

Advanced Object Oriented PHP

Advanced Object Oriented PHP CNM STEMulus Center Web Development with PHP November 11, 2015 1/17 Outline 1 2 Diamond Problem Composing vs Inheriting Case Study: Strategy Design Pattern 2/17 Definition is when a class is based on another

More information

Index. business modeling syntax 181 business process modeling 57 business rule 40

Index. business modeling syntax 181 business process modeling 57 business rule 40 OCL.book Page 203 Tuesday, July 22, 2003 9:48 PM Index Symbols OclAny, of 167 = OclAny, of 167 @pre 34, 86, 155 ^ 34, 156 ^^ 157 A abstract syntax 93 accumulator 153 action in statechart 56 activity

More information

APPLYING DESIGN PATTERNS TO SCA IMPLEMENTATIONS

APPLYING DESIGN PATTERNS TO SCA IMPLEMENTATIONS APPLYING DESIGN PATTERNS TO SCA IMPLEMENTATIONS Adem Zumbul (TUBITAK-UEKAE, Kocaeli, Turkey, ademz@uekae.tubitak.gov.tr); Tuna Tugcu (Bogazici University, Istanbul, Turkey, tugcu@boun.edu.tr) ABSTRACT

More information

A Metric of the Relative Abstraction Level of Software Patterns

A Metric of the Relative Abstraction Level of Software Patterns A Metric of the Relative Abstraction Level of Software Patterns Atsuto Kubo 1, Hironori Washizaki 2, and Yoshiaki Fukazawa 1 1 Department of Computer Science, Waseda University, 3-4-1 Okubo, Shinjuku-ku,

More information

JDBC Today C HAPTER 1 INTRODUCTION

JDBC Today C HAPTER 1 INTRODUCTION C HAPTER 1 JDBC Today INTRODUCTION Since its inception in 1995 the Java language has continued to grow in popularity. Originally intended as a language for embedded systems, the Java language has moved

More information

Model-based Middleware for Embedded Systems

Model-based Middleware for Embedded Systems Model-based Middleware for Embedded Systems Christian Salzmann, Martin Thiede BMW Car IT GmbH München, Germany christian.salzmann@bmw-carit.de martin.thiede@bmw-carit.de Markus Völter voelter ingenieurbüro

More information

Implementing a Web Service p. 110 Implementing a Web Service Client p. 114 Summary p. 117 Introduction to Entity Beans p. 119 Persistence Concepts p.

Implementing a Web Service p. 110 Implementing a Web Service Client p. 114 Summary p. 117 Introduction to Entity Beans p. 119 Persistence Concepts p. Acknowledgments p. xvi Introduction p. xvii Overview p. 1 Overview p. 3 The Motivation for Enterprise JavaBeans p. 4 Component Architectures p. 7 Divide and Conquer to the Extreme with Reusable Services

More information

ADT: Eclipse development tools for ATL

ADT: Eclipse development tools for ATL ADT: Eclipse development tools for ATL Freddy Allilaire (freddy.allilaire@laposte.net) Tarik Idrissi (tarik.idrissi@laposte.net) Université de Nantes Faculté de Sciences et Techniques LINA (Laboratoire

More information

Model Driven Architecture

Model Driven Architecture Name: Anish Mehta Year: 3 Lecturer: Dr. Wolfgang Emmerich Supervisor: Dr. Graham Roberts Model Driven Architecture For many years architects have been designing buildings by looking at other architects

More information

Techniques for Dynamic Swapping in the Lightweight CORBA Component Model

Techniques for Dynamic Swapping in the Lightweight CORBA Component Model in the Lightweight CORBA Component Model jai@dre.vanderbilt.edu www.dre.vanderbilt.edu/~jai Dr. Aniruddha Gokhale gokhale@dre.vanderbilt.edu www.dre.vanderbilt.edu/~gokhale Dr. Douglas C. Schmidt schmidt@dre.vanderbilt.edu

More information

OCL Support in MOF Repositories

OCL Support in MOF Repositories OCL Support in MOF Repositories Joachim Hoessler, Michael Soden Department of Computer Science Technical University Berlin hoessler@cs.tu-berlin.de, soden@cs.tu-berlin.de Abstract From metamodels that

More information

CAS 703 Software Design

CAS 703 Software Design Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction

More information

Architectures of Distributed Systems 2011/2012

Architectures of Distributed Systems 2011/2012 Architectures of Distributed Systems 2011/2012 Component Based Systems Johan Lukkien TU/e Computer TU/e Informatica, Science, System Architecture and Networking 1 Goals Students have an overview of motivation

More information

Software Reuse and Component-Based Software Engineering

Software 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 information

Appendix A - Glossary(of OO software term s)

Appendix A - Glossary(of OO software term s) Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component

More information

Towards Integrating Java EE into ProtoCom

Towards Integrating Java EE into ProtoCom Towards Integrating Java EE into ProtoCom Daria Giacinto, Sebastian Lehrig University of Paderborn Zukunftsmeile 1 33102 Paderborn giacinto@mail.upb.de sebastian.lehrig@upb.de Abstract: A key concept of

More information

Object Oriented Methods with UML. Introduction to Design Patterns- Lecture 8

Object Oriented Methods with UML. Introduction to Design Patterns- Lecture 8 Object Oriented Methods with UML Introduction to Design Patterns- Lecture 8 Topics(03/05/16) Design Patterns Design Pattern In software engineering, a design pattern is a general repeatable solution to

More information

Component-based Architecture Buy, don t build Fred Broks

Component-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 information

TABLE OF CONTENT CHAPTER TITLE PAGE DECLARATION OF THESIS STATUS SUPERVISOR DECLARATION TITLE PAGE STUDENT DECLARATION ACKNOWLEDGEMENT ABSTRACT

TABLE OF CONTENT CHAPTER TITLE PAGE DECLARATION OF THESIS STATUS SUPERVISOR DECLARATION TITLE PAGE STUDENT DECLARATION ACKNOWLEDGEMENT ABSTRACT TABLE OF CONTENTS CHAPTER TITLE PAGE DECLARATION OF THESIS STATUS SUPERVISOR DECLARATION TITLE PAGE STUDENT DECLARATION ACKNOWLEDGEMENT ABSTRACT TABLE OF CONTENT LIST OF TABLE LIST OF FIGURE LIST OF ABBREVATION

More information

Work groups meeting 3

Work groups meeting 3 Work groups meeting 3 INF5040 (Open Distributed Systems) Sabita Maharjan sabita@simula.no Department of Informatics University of Oslo September 07, 2009 Design Patterns J2EE Design Patterns Outline EIS

More information

A Metric for Measuring the Abstraction Level of Design Patterns

A Metric for Measuring the Abstraction Level of Design Patterns A Metric for Measuring the Abstraction Level of Design Patterns Atsuto Kubo 1, Hironori Washizaki 2, and Yoshiaki Fukazawa 1 1 Department of Computer Science, Waseda University, 3-4-1 Okubo, Shinjuku-ku,

More information

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Distributed transactions (quick refresh) Layers of an information system

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Distributed transactions (quick refresh) Layers of an information system Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 2 Distributed Information Systems Architecture Chapter Outline

More information

Model driven Engineering & Model driven Architecture

Model driven Engineering & Model driven Architecture Model driven Engineering & Model driven Architecture Prof. Dr. Mark van den Brand Software Engineering and Technology Faculteit Wiskunde en Informatica Technische Universiteit Eindhoven Model driven software

More information

Chapter 17 - Component-based software engineering. Chapter 17 So-ware reuse

Chapter 17 - Component-based software engineering. Chapter 17 So-ware reuse Chapter 17 - Component-based software engineering 1 Topics covered ² Components and component models ² CBSE processes ² Component composition 2 Component-based development ² Component-based software engineering

More information

Spemmet - A Tool for Modeling Software Processes with SPEM

Spemmet - A Tool for Modeling Software Processes with SPEM Spemmet - A Tool for Modeling Software Processes with SPEM Tuomas Mäkilä tuomas.makila@it.utu.fi Antero Järvi antero.jarvi@it.utu.fi Abstract: The software development process has many unique attributes

More information

AN INTEGRATED COMPONENT-BASED APPROACH TO ENTERPRISE SYSTEM SPECIFICATION AND DEVELOPMENT

AN 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 information

Model-Based Techniques in the Development of Net-Centric Applications. Timothy A. Anderson Basil C. Krikeles. June 20, 2007

Model-Based Techniques in the Development of Net-Centric Applications. Timothy A. Anderson Basil C. Krikeles. June 20, 2007 Model-Based Techniques in the Development of Net-Centric Applications June 20, 2007 Timothy A. Anderson Basil C. Krikeles BAE-Systems Advanced Information Technologies 6 New England Executive Park Burlington,

More information

The Unified Modelling Language. Example Diagrams. Notation vs. Methodology. UML and Meta Modelling

The Unified Modelling Language. Example Diagrams. Notation vs. Methodology. UML and Meta Modelling UML and Meta ling Topics: UML as an example visual notation The UML meta model and the concept of meta modelling Driven Architecture and model engineering The AndroMDA open source project Applying cognitive

More information

Challenges in component based programming. Lena Buffoni

Challenges in component based programming. Lena Buffoni Challenges in component based programming Lena Buffoni Challenge: Size & complexity Software is everywhere and increasingly complex (embedded systems, internet of things ) Single products have become product

More information

Distributed Xbean Applications DOA 2000

Distributed Xbean Applications DOA 2000 Distributed Xbean Applications DOA 2000 Antwerp, Belgium Bruce Martin jguru Bruce Martin 1 Outline XML and distributed applications Xbeans defined Xbean channels Xbeans as Java Beans Example Xbeans XML

More information

From Object Composition to Model Transformation with the MDA

From Object Composition to Model Transformation with the MDA From Object Composition to Transformation with the MDA Jean Bézivin University of Nantes 2, rue de la Houssinière, BP 92208 44322 Nantes cedex 3, France Jean.Bezivin@sciences.univ-nantes.fr Abstract The

More information

CSCD01 Engineering Large Software Systems. Design Patterns. Joe Bettridge. Winter With thanks to Anya Tafliovich

CSCD01 Engineering Large Software Systems. Design Patterns. Joe Bettridge. Winter With thanks to Anya Tafliovich CSCD01 Engineering Large Software Systems Design Patterns Joe Bettridge Winter 2018 With thanks to Anya Tafliovich Design Patterns Design patterns take the problems consistently found in software, and

More information

Improving the Interoperability between Web Services and CORBA Using Pontifex A Generic Bridge Generator

Improving the Interoperability between Web Services and CORBA Using Pontifex A Generic Bridge Generator Improving the Interoperability between Web Services and CORBA Using Pontifex A Generic Bridge Generator Markus Aleksy, Jan Czeranski, Martin Schader University of Mannheim, Germany {aleksy czeranski mscha}@wifo3.uni-mannheim.de

More information

SECURITY THREATS IN SOFTWARE DEVELOPMENT LIFE CYCLE

SECURITY THREATS IN SOFTWARE DEVELOPMENT LIFE CYCLE Online Journal, www.ijcea.com SECURITY THREATS IN SOFTWARE DEVELOPMENT LIFE CYCLE Vimal Gupta 1 and Sanjeev Singh 2 1,2 Sanjay Institute of Engineering and Technology, Delhi, India ABSTRACT This proposed

More information

The Entity Container an Object Oriented and Model Driven Persistency Cache

The Entity Container an Object Oriented and Model Driven Persistency Cache The Entity Container an Object Oriented and Model Driven Persistency Cache Gernot Schmoelzer 1,2, Stefan Mitterdorfer 2, Christian Kreiner 1,2, Joerg Faschingbauer 2, Zsolt Kovács 2, Egon Teiniker 2, Reinhold

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecture 18 Department of Computer Engineering Implementation Workflow 1 Implementation Workflow Implementation is primarily about creating code. However, the OO analyst/designer

More information

CSCD01 Engineering Large Software Systems. Design Patterns. Joe Bettridge. Winter With thanks to Anya Tafliovich

CSCD01 Engineering Large Software Systems. Design Patterns. Joe Bettridge. Winter With thanks to Anya Tafliovich CSCD01 Engineering Large Software Systems Design Patterns Joe Bettridge Winter 2018 With thanks to Anya Tafliovich Design Patterns Design patterns take the problems consistently found in software, and

More information

Key Ideas. OO Analysis and Design Foundation. Objectives. Adapted from slides 2005 John Wiley & Sons, Inc.

Key Ideas. OO Analysis and Design Foundation. Objectives. Adapted from slides 2005 John Wiley & Sons, Inc. Slide 1 Information Systems Development COMM005 (CSM03) Autumn Semester 2009 Dr. Jonathan Y. Clark Email: j.y.clark@surrey.ac.uk Course Website: www.computing.surrey.ac.uk/courses/csm03/isdmain.htm Course

More information

Executive Summary. Round Trip Engineering of Space Systems. Change Log. Executive Summary. Visas

Executive Summary. Round Trip Engineering of Space Systems. Change Log. Executive Summary. Visas Reference: egos-stu-rts-rp-1002 Page 1/7 Authors: Andrey Sadovykh (SOFTEAM) Contributors: Tom Ritter, Andreas Hoffmann, Jürgen Großmann (FHG), Alexander Vankov, Oleg Estekhin (GTI6) Visas Surname - Name

More information

Introduction to Dependable Systems: Meta-modeling and modeldriven

Introduction 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 information

XML-based Event Notification System for Large Scale. Distributed Virtual Environment

XML-based Event Notification System for Large Scale. Distributed Virtual Environment XML-based Notification System for Large Scale Distributed Virtual Environment JinHyun Tak *, Seihoon Lee **, Changjong Wang* *Dept. of Computer Science & Engineering, Inha University, KOREA **Dept. of

More information

be used for more than one use case (for instance, for use cases Create User and Delete User, one can have one UserController, instead of two separate

be used for more than one use case (for instance, for use cases Create User and Delete User, one can have one UserController, instead of two separate UNIT 4 GRASP GRASP: Designing objects with responsibilities Creator Information expert Low Coupling Controller High Cohesion Designing for visibility - Applying GoF design patterns adapter, singleton,

More information

Component-Based and Service-Oriented Software Engineering: Key Concepts and Principles

Component-Based and Service-Oriented Software Engineering: Key Concepts and Principles Component-Based and Service-Oriented Software Engineering: Key Concepts and Principles Hongyu Pei Breivold, Magnus Larsson ABB AB, Corporate Research, 721 78 Västerås, Sweden {hongyu.pei-breivold, magnus.larsson}@se.abb.com

More information

MDSE PRINCIPLES. Chapter #2

MDSE PRINCIPLES. Chapter #2 Chapter #2 MDSE PRINCIPLES Teaching material for the book Model-Driven Software Engineering in Practice by Morgan & Claypool, USA, 2012. www.mdse-book.com MDSE Principles Contents Concepts Approaches Adoption

More information

Using Design Patterns in Java Application Development

Using Design Patterns in Java Application Development Using Design Patterns in Java Application Development ExxonMobil Research & Engineering Co. Clinton, New Jersey Michael P. Redlich (908) 730-3416 michael.p.redlich@exxonmobil.com About Myself Degree B.S.

More information

The Model Driven (R)evolution. Richard Mark Soley, Ph.D. Chairman and CEO Object Management Group, Inc.

The Model Driven (R)evolution. Richard Mark Soley, Ph.D. Chairman and CEO Object Management Group, Inc. The Model Driven (R)evolution Richard Mark Soley, Ph.D. Chairman and CEO Object Management Group, Inc. Modeling Changes Everything! Throw out those pesky objects! Toss away your silly compilers! No more

More information

Introduction. Enterprise Java Instructor: Please introduce yourself Name Experience in Java Enterprise Edition Goals you hope to achieve

Introduction. Enterprise Java Instructor: Please introduce yourself Name Experience in Java Enterprise Edition Goals you hope to achieve Enterprise Java Introduction Enterprise Java Instructor: Please introduce yourself Name Experience in Java Enterprise Edition Goals you hope to achieve Course Description This course focuses on developing

More information

Middleware: Challenges and Evolution from Procedural to Service Orientation

Middleware: 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 information