Linking Object-Oriented Conceptual Modeling with Object-Oriented Implementation in Java

Size: px
Start display at page:

Download "Linking Object-Oriented Conceptual Modeling with Object-Oriented Implementation in Java"

Transcription

1 Linking Object-Oriented Conceptual Modeling with Object-Oriented Implementation in Java Oscar Pastor, Emilio Insfrán, Vicente Pelechano, Susana Ramírez Departament de Sistemes Informàtics i Computació Universitat Politècnica de València Camí de Vera s/n Valencia (Spain) {opastor einsfran pele}@dsic.upv.es Abstract Nowadays, if we want to obtain a sound and correct final software product it is very important to be able to properly join modern OO programming environments, which are built for the new Internet architectures, with the OO methodologies produced over the last few years in order to deal properly with the Conceptual Modeling process. Our contribution to this objective is the OO-Method [Pas96] proposal. OO- Method is an OO Methodology that allows analysts to introduce the relevant system information by means of a set of graphical models to obtain the conceptual model through a requirement collection phase, so that an OO formal specification in OASIS [Pas95] can be generated at any given moment. This formal specification acts as a high-level system repository. Furthermore, a Java software prototype, which is functionally equivalent to the OASIS specification, is also generated in an automated way. This is achieved by defining an execution model that gives the pattern to obtain a concrete implementation in the selected target software development environment. A CASE workbench [Pas97] supports the methodology. 1. Introduction Software technology has undergone, over the last few years, considerable transformation. One of the main reasons for this transformation is the emergence of the object-oriented (OO) model as a software production paradigm that covers all the traditional analysis, design and implementation steps. We have OO methodologies [Boo94, Col94, Jac92, Rum95], OO databases, OO programming languages, etc. However, we consider that there is still not a clear understanding of what an object is. Or, better explained, everyone understands perfectly what his/her objects are. The problems come from the fact that often objects in conceptual modeling are not the same as in programming or database environments. Consequently, ambiguities appear everywhere. The OO approach is still a loosely defined term, even if some salient

2 features constitute a minimum basis (complex objects, object identity, methods, encapsulation, inheritance) The source of this confusion can be found in the lack of a standard and universal formal approach for the OO model. Many attempts have been made in the OO logic area [Jun91, Kif96] and research continues. OO logic attempts to provide a unified logical formalism for modeling objects and other aspects of the OO paradigm [Dub94, Har94]. However, the situation reached with the relational model, from the formal point of view, has not yet been reached in the OO model. In this context, Inter/Intranet architectures and web environments are starting to be widely used, and this has been announced as a software computing revolution. The common software development environment for such an environment is claimed to be a Java-based one. Of course, Java [Arn96,Gos95,Kra95,Lem96,Tit95] is presented as an OO programming language. At the same time, continuous efforts are being made in the area of OO conceptual modeling, especially in terms of OO methodologies that have their corresponding CASE workbench [Boo97,Pas97] in order to provide reliable and productive software production environments. The lack of a precise connection between the conceptual modeling world and the software development tools in web environments is, in our opinion, one of the most interesting problems. We have to close this gap to be able to properly design and implement organizational systems [Fri90] using three-tiered architectures based on simple and easy-to-use client stations, web servers and database servers. Our contribution to this state of the art is presented in this paper. With our OO- Method proposal, we provide an OO methodology that covers the phases of Analysis

3 and Design, obtaining a formal specification in a formal and OO specification language called OASIS. It acts as a high-level data dictionary, where all the relevant system information is captured. A Java prototype, including both static and dynamic properties, is obtained in an automated way starting from the OASIS specification. The static properties are represented in a relational database schema and the dynamic properties are represented by generating Java applets and web interfaces that include the dynamic behaviour of the component system classes. The main features of this approach are the following: 1. The formal system specification is obtained in an automated way from the graphical information introduced during the OO-Method analysis process. 2. The Java implementation is also obtained in an automated way from the formal system specification. This is done implementing a precise mapping between formal specification concepts and Java components. We have divided the paper into the following sections: after the introduction, in section 2, we present the most important OO-Method features. In section 3, we give a quick overview on the actual proposals related to Java development environments. Next, in section 4, we explain how the OO-Method analysis models are translated to a Java environment. This is done by determining the exact architecture of the concrete execution model implementation, developed in Java, which is attached to the conceptual model (built in the OO-Method analysis step). We finish this paper with conclusions and a list of references. 2. The OO-Method Proposal

4 OO-Method is an Object-Oriented Software Production Methodology based on two essential models: the conceptual model and the execution model. The software production process in OO-Method starts with the conceptual modeling step where we have to determine the relevant system properties without being worried about any implementation details. Once we have an appropriate system description, a well-defined execution model determines all the implementation-dependent properties of the final software product in terms of user interface, access control, service activation, etc. The conceptual model describes the Information System within a well-defined OO framework using three complementary point of views: Object Model: is a graphical model where system classes including attributes, services and relationships (aggregation and inheritance) are defined. Additionally, agent relationships are introduced to specify who can activate each class service. Dynamic Model: is another graphical model to specify valid object life cycles and interobjectual interaction. We use: State Transition Diagrams to describe correct behaviour by establishing valid object life cycles. By valid life, we mean a right sequence of states that characterizes the correct behaviour of the objects for every class. Object Interaction Diagram: represents interobjectual interactions. We define two basic interactions: Triggers, which are object services that are activated in an automated way when a condition is satisfied.

5 Global interactions, which are transactions involving services of different objects. Interobjectual transactions can be defined with these global interactions. Functional Model: is used to capture semantics attached to any change of an object state as a consequence of an event occurrence. We specify declaratively how every event changes the object state depending on the involved event arguments (if any) and object s current state. We give a clear and simple strategy (classification of attributes [Pas96]) for dealing with the introduction of the necessary information. This is a contribution of this method that let us to be able to generate a complete OASIS specification in an automated way. From these three models, a corresponding formal and OO OASIS [Pas95] specification is obtained using a well-defined translation strategy. The resultant OASIS specification acts as a complete system repository where all the relevant properties of the component classes are included. Once all the relevant system information has been collected, the execution model accurately states a pattern used to implement object properties in any target software development environment. The phases of the methodology can be seen in Figure 1. At this point, we give an abstract view of an execution model for dealing with the task of implementing the conceptual model. According to the execution model, a prototype, which is functionally equivalent to the OASIS specification, is built in an automated way. The code generation strategy is independent of any concrete target development environment.

6 A CASE Tool [Pas97] that provides an operational environment that simplifies the analysis, design and implementation of Information Systems from an object-oriented perspective supports OO-Method. The contribution of this CASE environment is its ability to generate code in well-known industrial software development environments (Java, Visual C++, Delphi, Visual Basic and PowerBuilder) from the system specification. It constitutes an operational approach to the ideas of the automated programming paradigm [Bal83]: collection of system information properties, automated generation of a formal OO system specification, and a complete (including static and dynamics) software prototype which is functionally equivalent to the quoted system specification. OO-Method Conceptual Model Dynamic Model Object Model Functional Model Automated Translation Execution Model OASIS Automated Translation PowerBuilder RDB Java RDB Visual C++ RDB Delphi RDB Figure 1. Phases of OO-Method. 3. Java as a Software Development Environment Nowadays the Internet and Web have become the new frontier for application developers. In this context, Java is playing an important role due to its promising features: architecture independence, portability, multithreading, soundness, security and so on. That means that new needs arise: Java tools, methodologies, CASE tools supporting Java code generation, etc.

7 Most of the products developed in this area are RAD-oriented, visual development tools (Symantec s Café, Borland s Latté, Visual J++, IBM s Visual Age for Java, etc.). In the methodology field there are some well-known analysis/design CASE tools for example Rational s ROSE/Java, Platinum s Paradigm Plus, and Forté that provide the developers with limited support to fully implement Internet/Intranet applications. These proposals share a common weakness: when the development step is reached, the conceptual modeling efforts are unclear, mainly because it is not possible to produce an accurate code that is functionally equivalent to the specification of the system requirements. We should be able to produce code which includes statics and dynamics in an interactive way from the very beginning of the requirement specification step, and not generate only static templates for the component system classes as most OO CASE tools do. OO-Method solves these problems allowing analysts and designers to build conceptual models of information systems following a methodology that is oriented to generating Internet/Intranet applications based on Java in an automated way. 4. Implementing an OO Conceptual Model in a Java Environment In this section, we explain how to implement an OO Conceptual Model in an Internet/Intranet development environment. We use Java as a programming language and a relational database [Pas97-2] as a persistent object repository as illustrated in Figure 2. For this purpose OO-Method uses an abstract execution model based on the conceptual model. This execution model is used to generate a sound and robust implementation of a system specification in any target environment. The generation process is carried out binding the execution model and the specific features of the selected programming environment, in this case Java. First, we present the basic

8 features of the OO-Method execution model and then we explain the actual Java implementation of this execution model by showing the set of Java classes that make up the prototype. User Browser enabled for Java (Hot Java, Comunicator, Explorer, Mosaic,...) World Wide Web IBM Compatible Web Server Relational Database HTML Documents & Applet element Applets Relational DataBase Server JDBC CASE Tool Generates Java Applets HTML Documents Relational Tables Figure 2.Global Architecture of the proposed Internet/Intranet prototype in Java. 4.1 The OO-Method Abstract Execution Model The OO-Method execution model explains a pattern to be used to implement all the system properties collected during the analysis phase, in any target software development environment. The code generation process will use this execution model as a guide in order to implement the conceptual model in the selected target environment. This execution model has three main steps:

9 1. access control: first, as users are also objects, the object logging in the system has to be identified as a member of the corresponding object society. 2. object system view: once an object is connected, it must have a clear representation of which classes it can access. In other words, its object society view must be clearly stated, exactly determining the set of object attributes and services that it can see or activate. 3. service activation: finally, after being connected and having a clear object system view, an object will be able to activate any available service in its worldview. Among these services, we will have event or transaction served by other objects or system observations (object queries). Any service execution is characterized as the following sequence of actions: 1. object identification: as a first step, the object acting as server has to be identified. This object existence is an implicit condition for executing any service unless if we are dealing with a new 1 event. At this point, the object attribute values (those that characterize its current state) are retrieved. 2. introduction of event arguments: the rest of the arguments of the event being activated must be introduced. 3. state transition correctness: we have to verify in the object State Transition Diagram (STD) that a valid state transition exists for the selected service in the current object state. 4. precondition satisfaction: the precondition associated to the service that is going to be executed must hold. If not, an exception will arise, informing that the service cannot be activated because its precondition has been violated.

10 5. valuation fulfilment: once the precondition has been verified, the induced event modifications are effective in the selected persistent object system. 6. integrity constraint checking in the new state: to assure that the service activation leads the object to a valid state, we must verify that the (static and dynamic) integrity constraints hold in this final resulting state. 7. trigger relationships test: after a valid change of state, and as a final action, the set of rules condition-action that represent the internal system activity have to be verified. If any of them hold, the corresponding service activation will be triggered. It is the analyst s responsibility to assure the termination and confluence of such triggers. The previous steps guide the implementation of any program to assure the functional equivalence between the object system description collected in the conceptual model and its reification in a software-programming environment according to the execution model. 4.2 An Architecture for implementing the Execution Model in Java The strategy adopted in our work is based on the development of Java applets that implement the full functionality of the system modeled. The architecture of an OO implementation in Java that corresponds to an OO Conceptual Model is shown in Figure 3. The components are the following classes: System class Menu_Page class Parameter_Request class

11 set of Analysis classes that corresponds to the classes detected in the analysis phase Database class System Menu_Page Param_Req DataBase Analysis Clases Figure 3. Class Diagram of the Java Prototype The System class is the main class of the architecture. This class is composed of the Menu_Page, the Parameter_request, the set of Analysis classes and the Database class. The System class implements the three main steps of the execution model: control user access to the system looking for the existence of an authorized object in the database. This way of accessing control allows any system object to be an active user of the object society and is only restricted by the agent relationships defined in the conceptual model (client/server relationship). create a new Menu_Page instance (this page will show a typical web menu page in the client browser) with as many options as classes are visible to the connected user. When the user selects one class, the services that the user is able to activate are shown.

12 facilitate the activation of services requested by the user. For this purpose the System instance creates a new Parameter_Request object to capture all the required argument values for the quoted service activation. We have as many Analysis classes in the Java prototype as system component classes are in our source Conceptual Model. The Database class acts as a bridge between the relational database storage of the Analysis class objects and their corresponding Java objects managed by the user s web browser. The main features of this object class include services to retrieve and update the database according to the object changes of state during the prototype execution. All the classes described above have attributes and methods (services) that support the whole execution model. In this paper, we are not going to show every complete class specification (methods and attributes). 4.3 Linking an OO Conceptual Model to an implementation in Java In order to better understand the architecture and behaviour of the previous component classes of the Java Execution Model, we introduce a Rent-a-Car case study as a brief example: A company is involved in the rented of vehicles without drivers as a principal activity. The vehicles are bought at the beginning of the season and are usually sold when the season is over. When a customer rents a car, a contract is generated and it remains open until the customer returns the vehicle. At that time, the total amount to be pay or refunded to the customer (in the case of surety) is calculated. After this step, the car is ready to be rented again.

13 First, we construct the Conceptual Model (object, dynamic and functional models) identifying the classes and specifying their relationships and all the static and dynamic properties. The classes identified in this problem domain are the following: Contract, Customer, Vehicle and Company. Based on the Execution Model proposed above, the architecture of the Java applet attached to the conceptual model is shown in Figure 4. In this figure, we are representing a particular Class Diagram for the Rent-a-car case study where the System class has every analysis class as components. System Menu_Page Param_Req DataBase Analysis Classes Company Contract Customer Vehicle Figure 4. Class diagram for the Java prototype of the Rent-a-car case of study. Next, we are going to describe an illustrative scenario for the Rent-a-Car prototype generated. This scenario will show the interaction between Java objects and their behaviour when a user enters into the object system. When a client loads the main HTML page that calls the Java applet, an instance

14 of the System class is created and User identification is required (see Figure 5). Figure 5. A User Access Control Page. After a User connects to the Rent-a-Car system, a menu page with an option for every class will appear (see Figure 6). If the user clicks in a class option, a new menu page associated with the selected class will be generated (including one option for every class event or transaction). Figure 6. Rent a Car System option page. In our example, when the user selects the Car class, the service list offered by this class is shown, as can be seen in Figure 7.

15 Figure 7. Car Class Services Menu Page. Every service option activation will generate a new request parameter page, as can be seen Figure 8. This page will ask the user for the parameters needed to execute the event/transaction. The Ok control button has a code associated to it that will call to a class method that implements the effect of the event on the object state. This method will check the state transition correctness and method preconditions. If this checking process succeeds, the object change of state is carried out according to the functional model specification. We finish the method execution by verifying integrity constraints and trigger condition satisfaction in the new state. Object state updates in the selected persistent object system became valid through the services offered by the Database object. Figure 8. Parameter Request Page for the Create Service of the Car Class. This execution model assures the functional equivalence between the conceptual model and its reification in a Java-programming environment. This feature opens up the

16 possibility of creating a CASE tool which could generate a Java prototype implementation, starting from a set of graphical OO models obtained during the conceptual modeling step (according to OO-Method), in an easy and unambiguous way. 5. Conclusions and future work In the next few years, advanced web applications will depend on object technology to make them feasible, reliable and secure. To achieve this goal, welldefined methodological frameworks must be introduced, properly connecting OO conceptual modeling and OO software development environments, including programming languages and databases. Our contribution is to provide just such an environment to obtain a functionally equivalent Java prototype in an automated way starting from a conceptual model that captures all the relevant system properties. The most relevant features are the following: it provides an operational implementation of an automated programming paradigm, where a concrete execution model is obtained from a process of conceptual model translation it uses a precise object-oriented model, where the use of a formal specification language as a high-level data dictionary is a basic characteristic This is done within the next-generation web development environments, making use of the Inter/Intranet architectures by using Java as software development environment. Research work is still being undertaken to improve the quality of the final software product that is generated, and to include advanced features such a schema evolution or optimized data base access mechanisms.

17 References [Arn96] Arnold K., Gosling J. The Java Programming Language. Sun MicroSystems. Addison-Wesley, [Bal83] Balzer R. et al. Software Technology in the 1990s: Using a New Paradigm. IEEE Computer, Nov [Boo94] Booch G. OO Analysis and Design with Applications. Addison-Wesley, [Boo97] Booch G., Rumbaugh J., Jacobson I. Unified Modeling Language. Version 1. Rational Software Co., [Col94] Coleman D., Arnold P., Bodoff S., Dollin S., Gilchrist H., Hayes F., Jeremes P. Object-Oriented Development. The Fusion Method. Prentice-Hall, [Dub94] Dubois E., Du Bois Ph., Petit M., Wu S. ALBERT: A Formal Agent-Oriented Requirements Language for Distributed Composite Systems. Proc. CAiSE 94. Workshop on Formal Methods for Information System Dynamics, pags: 25-39, University of Twente, Technical Report [Fri90] Lindgreen P. ed. A Framework of Information System Concepts. FRISCO Interim Report. IFIP WG8.TG.90, [Gos95] Goshling J., McGilton H. The Java Language Environment. A White Paper. Sun MicroSystems [Har94] Hartmann T., Saake G., Jungclaus R., Hartel P., Kusch J. Revised Version of the Modelling Language Troll (Troll version 2.0). Technische Universitat Braunschweig, Informatik-Berichte, [Jac92] Jacobson I., Christerson M., Jonsson P., Overgaard G. Object Oriented Software Engineering. A Use Case Driven Approach. Reading, Massachusetts. Addison-Wesley [Jun91] Jungclaus R., Saake G., Sernadas C. Formal Specification of Object Systems. Eds. S. Abramsky and T. Mibaum Proceedings of the TapSoft s 91, Brighton. Lncs. 494, pags , Springer- Verlag [Kif96] Kifer M. Deductive and Object Data Languages: A Quest for Integration. DOOD96. pags: [Kra95] Kramer D. The Java Platform. Sun MicroSystems. Addison-Wesley [Lem96] Lemay L., Perkins C., Cadenhead R. SunSoft Java Workshop. Sams.Net Publishing [Pas95] Pastor O., Ramos I., Canós J. Oasis v2: A Class Definition Language. Proc. DEXA95, Springer- Verlag [Pas96] Pastor O., Pelechano V., Bonet B., Ramos I. An OO Methodological Approach for Making Automated Prototyping Feasible. Proc. DEXA96. Springer-Verlag. September [Pas97-1] Pastor O., Insfrán E., Pelechano V., Romero J., Merseguer J. OO-METHOD: An OO Software Production Environment Combining Conventional and Formal Methods.CAiSE97. June Accepted for presentation. [Pas97-2] Pastor O., Insfrán E., Quiles G., Barberá J. Object-Oriented Conceptual Modeling Techniques to Design and Implement a Sound and Robust Oracle Environment. EOUG Accepted for presentation. [Rum91] Rumbaugh J., Blaha M., Permerlani W., Eddy F., Lorensen W. Object Oriented Modeling and Design. Englewood Cliffs, Nj. Prentice-Hall [Tit95] Tittel E., Gaither M. 60 Minute Guide to Java. IDG Books WorldWide, Inc

From Object Oriented Conceptual Modeling to Automated Programming in Java

From Object Oriented Conceptual Modeling to Automated Programming in Java From Object Oriented Conceptual Modeling to Automated Programming in Java Oscar Pastor, Vicente Pelechano, Emilio Insfrán, Jaime Gómez Department of Information Systems and Computation Valencia University

More information

Building E-Commerce Applications from Object-Oriented Conceptual Models

Building E-Commerce Applications from Object-Oriented Conceptual Models Building E-Commerce Applications from Object-Oriented Conceptual Models Oscar Pastor* and Silvia Abrahão* and Joan Fons* This paper introduces an extension to UML that takes care of web page navigation

More information

Software development life cycle. Software Engineering - II ITNP92 - Object Oriented Software Design. Requirements. Requirements. Dr Andrea Bracciali

Software development life cycle. Software Engineering - II ITNP92 - Object Oriented Software Design. Requirements. Requirements. Dr Andrea Bracciali Software development life cycle Software life cycle: Software Engineering - II ITNP92 - Object Oriented Software Design Dr Andrea Bracciali Module Co-ordinator 4B86 abb@cs.stir.ac.uk Spring 2014 (elicitation)

More information

Modeling the User Interface of Web Applications with UML

Modeling the User Interface of Web Applications with UML Modeling the User Interface of Web Applications with UML Rolf Hennicker,Nora Koch,2 Institute of Computer Science Ludwig-Maximilians-University Munich Oettingenstr. 67 80538 München, Germany {kochn,hennicke}@informatik.uni-muenchen.de

More information

How To Design Software

How To Design Software The Software Development Life Cycle: An Overview Presented by Maxwell Drew and Dan Kaiser Southwest State University Computer Science Program Last Time The design process and design methods Design strategies

More information

Generating Aspect Code from UML Models

Generating Aspect Code from UML Models Generating Aspect Code from UML Models Iris Groher Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich, Germany Iris.Groher@fh-hagenberg.at Stefan Schulze Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich,

More information

The Road in Software Engineering Education from Structured Programming to Object- Oriented Modelling

The Road in Software Engineering Education from Structured Programming to Object- Oriented Modelling The Road in Software Engineering Education from Structured Programming to Object- Oriented Modelling Dr. József Tick Budapest Polytechnic, Hungary, tick@bmf.hu Abstract: Higher level software engineering

More information

Foundations of Model-Driven Software Engineering

Foundations of Model-Driven Software Engineering Model-Driven Software Engineering Foundations of Model-Driven Software Engineering Dr. Jochen Küster (jku@zurich.ibm.com) Contents Introduction to Models and Modeling Concepts of Model-Driven Software

More information

zen Platform technical white paper

zen Platform technical white paper zen Platform technical white paper The zen Platform as Strategic Business Platform The increasing use of application servers as standard paradigm for the development of business critical applications meant

More information

Run-time Variability Issues in Software Product Lines

Run-time Variability Issues in Software Product Lines Run-time Variability Issues in Software Product Lines Alexandre Bragança 1 and Ricardo J. Machado 2 1 Dep. I&D, I2S Informática Sistemas e Serviços SA, Porto, Portugal, alexandre.braganca@i2s.pt 2 Dep.

More information

DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES

DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES Robert M. Bruckner Vienna University of Technology bruckner@ifs.tuwien.ac.at Beate List Vienna University of Technology list@ifs.tuwien.ac.at

More information

Information systems modelling UML and service description languages

Information systems modelling UML and service description languages Internet Engineering Tomasz Babczyński, Zofia Kruczkiewicz Tomasz Kubik Information systems modelling UML and service description languages Student Contact Hours: 25.02.2015- Location: 325 C3 room 25.03.2015:

More information

Enterprise Integration: operational models of business processes and workflow systems *

Enterprise Integration: operational models of business processes and workflow systems * Enterprise Integration: operational models of business processes and workflow systems. 1 Enterprise Integration: operational models of business processes and workflow systems * G.Bruno 1, C.Reyneri 2 and

More information

What Is the Java TM 2 Platform, Enterprise Edition?

What Is the Java TM 2 Platform, Enterprise Edition? Page 1 de 9 What Is the Java TM 2 Platform, Enterprise Edition? This document provides an introduction to the features and benefits of the Java 2 platform, Enterprise Edition. Overview Enterprises today

More information

A Rapid Development Process with UML

A Rapid Development Process with UML A Rapid Development Process with UML Giuliano Armano DIEE, Dipartimento di Ingegneria Elettrica ed Elettronica, University of Cagliari Piazza d Armi I-09123, Cagliari (Italy) Tel. +39-70-675.5878 armano@diee.unica.it

More information

Source Code Translation

Source Code Translation Source Code Translation Everyone who writes computer software eventually faces the requirement of converting a large code base from one programming language to another. That requirement is sometimes driven

More information

Web. Studio. Visual Studio. iseries. Studio. The universal development platform applied to corporate strategy. Adelia. www.hardis.

Web. Studio. Visual Studio. iseries. Studio. The universal development platform applied to corporate strategy. Adelia. www.hardis. Web Studio Visual Studio iseries Studio The universal development platform applied to corporate strategy Adelia www.hardis.com The choice of a CASE tool does not only depend on the quality of the offer

More information

Ontological Representations of Software Patterns

Ontological Representations of Software Patterns Ontological Representations of Software Patterns Jean-Marc Rosengard and Marian F. Ursu University of London http://w2.syronex.com/jmr/ Abstract. This paper 1 is based on and advocates the trend in software

More information

Towards a CMMI-compliant Goal-Oriented Software Process through Model-Driven Development

Towards a CMMI-compliant Goal-Oriented Software Process through Model-Driven Development The 4th IFIP WG8.1 Working Conference on the Practice of Enterprise Modelling PoEM 2011 Universidade Federal de Pernambuco Towards a CMMI-compliant Goal-Oriented Software Process through Model-Driven Development

More information

Web Application Development for the SOA Age Thinking in XML

Web Application Development for the SOA Age Thinking in XML Web Application Development for the SOA Age Thinking in XML Enterprise Web 2.0 >>> FAST White Paper August 2007 Abstract Whether you are building a complete SOA architecture or seeking to use SOA services

More information

Software Engineering. System Models. Based on Software Engineering, 7 th Edition by Ian Sommerville

Software Engineering. System Models. Based on Software Engineering, 7 th Edition by Ian Sommerville Software Engineering System Models Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain why the context of a system should be modeled as part of the RE process To describe

More information

SERENITY Pattern-based Software Development Life-Cycle

SERENITY Pattern-based Software Development Life-Cycle SERENITY Pattern-based Software Development Life-Cycle Francisco Sanchez-Cid, Antonio Maña Computer Science Department University of Malaga. Spain {cid, amg}@lcc.uma.es Abstract Most of current methodologies

More information

Information Systems Analysis and Design CSC340. 2004 John Mylopoulos. Software Architectures -- 1. Information Systems Analysis and Design CSC340

Information Systems Analysis and Design CSC340. 2004 John Mylopoulos. Software Architectures -- 1. Information Systems Analysis and Design CSC340 XIX. Software Architectures Software Architectures UML Packages Client- vs Peer-to-Peer Horizontal Layers and Vertical Partitions 3-Tier and 4-Tier Architectures The Model-View-Controller Architecture

More information

Tool Support for Software Variability Management and Product Derivation in Software Product Lines

Tool Support for Software Variability Management and Product Derivation in Software Product Lines Tool Support for Software Variability Management and Product Derivation in Software s Hassan Gomaa 1, Michael E. Shin 2 1 Dept. of Information and Software Engineering, George Mason University, Fairfax,

More information

Concepts of Database Management Seventh Edition. Chapter 9 Database Management Approaches

Concepts of Database Management Seventh Edition. Chapter 9 Database Management Approaches Concepts of Database Management Seventh Edition Chapter 9 Database Management Approaches Objectives Describe distributed database management systems (DDBMSs) Discuss client/server systems Examine the ways

More information

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53 Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software

More information

Chapter 10 Practical Database Design Methodology and Use of UML Diagrams

Chapter 10 Practical Database Design Methodology and Use of UML Diagrams Chapter 10 Practical Database Design Methodology and Use of UML Diagrams Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 10 Outline The Role of Information Systems in

More information

Training Management System for Aircraft Engineering: indexing and retrieval of Corporate Learning Object

Training Management System for Aircraft Engineering: indexing and retrieval of Corporate Learning Object Training Management System for Aircraft Engineering: indexing and retrieval of Corporate Learning Object Anne Monceaux 1, Joanna Guss 1 1 EADS-CCR, Centreda 1, 4 Avenue Didier Daurat 31700 Blagnac France

More information

Representing XML Schema in UML A Comparison of Approaches

Representing XML Schema in UML A Comparison of Approaches Representing XML Schema in UML A Comparison of Approaches Martin Bernauer, Gerti Kappel, Gerhard Kramler Business Informatics Group, Vienna University of Technology, Austria {lastname}@big.tuwien.ac.at

More information

Heterogeneous Tools for Heterogeneous Network Management with WBEM

Heterogeneous Tools for Heterogeneous Network Management with WBEM Heterogeneous Tools for Heterogeneous Network Management with WBEM Kenneth Carey & Fergus O Reilly Adaptive Wireless Systems Group Department of Electronic Engineering Cork Institute of Technology, Cork,

More information

The Role of Requirement Engineering in Software Development Life Cycle 1

The Role of Requirement Engineering in Software Development Life Cycle 1 The Role of Engineering in Software Development Life Cycle 1 Abhijit Chakraborty, 2 Mrinal Kanti Baowaly, 3 Ashraful Arefin, 4 Ali Newaz Bahar 1, 2 Department of Computer Science and Telecommunication

More information

Swirl. Multiplayer Gaming Simplified. CS4512 Systems Analysis and Design. Assignment 1 2010. Marque Browne 0814547. Manuel Honegger - 0837997

Swirl. Multiplayer Gaming Simplified. CS4512 Systems Analysis and Design. Assignment 1 2010. Marque Browne 0814547. Manuel Honegger - 0837997 1 Swirl Multiplayer Gaming Simplified CS4512 Systems Analysis and Design Assignment 1 2010 Marque Browne 0814547 Manuel Honegger - 0837997 Kieran O' Brien 0866946 2 BLANK MARKING SCHEME 3 TABLE OF CONTENTS

More information

Enterprise Architecture: Practical Guide to Logical Architecture

Enterprise Architecture: Practical Guide to Logical Architecture Objecteering Practical Guides Enterprise Architecture: Practical Guide to Logical Architecture Author: Version: 1.0 Copyright: Softeam Softeam Consulting Team Supervised by Philippe Desfray Softeam 21

More information

MERGING ONTOLOGIES AND OBJECT-ORIENTED TECHNOLOGIES FOR SOFTWARE DEVELOPMENT

MERGING ONTOLOGIES AND OBJECT-ORIENTED TECHNOLOGIES FOR SOFTWARE DEVELOPMENT 23-24 September, 2006, BULGARIA 1 MERGING ONTOLOGIES AND OBJECT-ORIENTED TECHNOLOGIES FOR SOFTWARE DEVELOPMENT Dencho N. Batanov Frederick Institute of Technology Computer Science Department Nicosia, Cyprus

More information

Extending a Conceptual Modelling Approach to Web Application Design

Extending a Conceptual Modelling Approach to Web Application Design Extending a Conceptual Modelling Approach to Web Application Design Jaime Gómez 1, Cristina Cachero 1, and Oscar Pastor 2 1 Departamento de Lenguajes y Sistemas Informáticos Universidad de Alicante. SPAIN

More information

Chapter 2 Database System Concepts and Architecture

Chapter 2 Database System Concepts and Architecture Chapter 2 Database System Concepts and Architecture Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Outline Data Models, Schemas, and Instances Three-Schema Architecture

More information

What is a life cycle model?

What is a life cycle model? What is a life cycle model? Framework under which a software product is going to be developed. Defines the phases that the product under development will go through. Identifies activities involved in each

More information

Introduction to Database Systems

Introduction to Database Systems Introduction to Database Systems A database is a collection of related data. It is a collection of information that exists over a long period of time, often many years. The common use of the term database

More information

Building Java Servlets with Oracle JDeveloper

Building Java Servlets with Oracle JDeveloper Building Java Servlets with Oracle JDeveloper Chris Schalk Oracle Corporation Introduction Developers today face a formidable task. They need to create large, distributed business applications. The actual

More information

Evaluating OO-CASE tools: OO research meets practice

Evaluating OO-CASE tools: OO research meets practice Evaluating OO-CASE tools: OO research meets practice Danny Greefhorst, Matthijs Maat, Rob Maijers {greefhorst, maat, maijers}@serc.nl Software Engineering Research Centre - SERC PO Box 424 3500 AK Utrecht

More information

Business-Driven Software Engineering Lecture 3 Foundations of Processes

Business-Driven Software Engineering Lecture 3 Foundations of Processes Business-Driven Software Engineering Lecture 3 Foundations of Processes Jochen Küster jku@zurich.ibm.com Agenda Introduction and Background Process Modeling Foundations Activities and Process Models Summary

More information

Software Visualization Tools for Component Reuse

Software Visualization Tools for Component Reuse Software Visualization Tools for Component Reuse Craig Anslow Stuart Marshall James Noble Robert Biddle 1 School of Mathematics, Statistics and Computer Science, Victoria University of Wellington, New

More information

OOWS: A Method to Develop Web Applications from Web-Oriented Conceptual Models

OOWS: A Method to Develop Web Applications from Web-Oriented Conceptual Models OOWS: A Method to Develop Web Applications from Web-Oriented Conceptual Models Oscar Pastor, Joan Fons and Vicente Pelechano Department of Information Systems and Computation Technical University of Valencia

More information

An Object-Oriented Analysis Method for Customer Relationship Management Information Systems. Abstract

An Object-Oriented Analysis Method for Customer Relationship Management Information Systems. Abstract 75 Electronic Commerce Studies Vol. 2, No.1, Spring 2004 Page 75-94 An Object-Oriented Analysis Method for Customer Relationship Management Information Systems Jyh-Jong Lin Chaoyang University of Technology

More information

Enterprise Architecture Modeling PowerDesigner 16.1

Enterprise Architecture Modeling PowerDesigner 16.1 Enterprise Architecture Modeling PowerDesigner 16.1 Windows DOCUMENT ID: DC00816-01-1610-01 LAST REVISED: November 2011 Copyright 2011 by Sybase, Inc. All rights reserved. This publication pertains to

More information

Agile Business Suite: a 4GL environment for.net developers DEVELOPMENT, MAINTENANCE AND DEPLOYMENT OF LARGE, COMPLEX BACK-OFFICE APPLICATIONS

Agile Business Suite: a 4GL environment for.net developers DEVELOPMENT, MAINTENANCE AND DEPLOYMENT OF LARGE, COMPLEX BACK-OFFICE APPLICATIONS Agile Business Suite: a 4GL environment for.net developers DEVELOPMENT, MAINTENANCE AND DEPLOYMENT OF LARGE, COMPLEX BACK-OFFICE APPLICATIONS In order to ease the burden of application lifecycle management,

More information

Chap 1. Introduction to Software Architecture

Chap 1. Introduction to Software Architecture Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)

More information

1 File Processing Systems

1 File Processing Systems COMP 378 Database Systems Notes for Chapter 1 of Database System Concepts Introduction A database management system (DBMS) is a collection of data and an integrated set of programs that access that data.

More information

Winery A Modeling Tool for TOSCA-based Cloud Applications

Winery A Modeling Tool for TOSCA-based Cloud Applications Institute of Architecture of Application Systems Winery A Modeling Tool for TOSCA-based Cloud Applications Oliver Kopp 1,2, Tobias Binz 2, Uwe Breitenbücher 2, and Frank Leymann 2 1 IPVS, 2 IAAS, University

More information

INNOVATOR. The integrated tool suite for business process and software engineering

INNOVATOR. The integrated tool suite for business process and software engineering The integrated tool suite for business process and software engineering Use the synergy: The integrated tool suite for business process and software engineering is the only integrated tool suite for business

More information

THE DEVELOPMENT OF A WEB BASED MULTIMEDIA INFORMATION SYSTEM FOR BUILDING APPRAISAL

THE DEVELOPMENT OF A WEB BASED MULTIMEDIA INFORMATION SYSTEM FOR BUILDING APPRAISAL THE DEVELOPMENT OF A WEB BASED MULTIMEDIA INFORMATION SYSTEM FOR BUILDING APPRAISAL Dominic O' Sullivan Department of Civil & Environmental Engineering National University of Ireland, Cork. Dr. Marcus

More information

Generating Enterprise Applications from Models

Generating Enterprise Applications from Models Generating Enterprise Applications from Models Vinay Kulkarni, R Venkatesh, Sreedhar Reddy Tata Research Development and Design Centre, 54, Industrial estate, Hadapsar, Pune, 411 013, INDIA { vinayk, rvenky,

More information

CSE 452: Programming Languages. Acknowledgements. Contents. Java and its Evolution

CSE 452: Programming Languages. Acknowledgements. Contents. Java and its Evolution CSE 452: Programming Languages Java and its Evolution Acknowledgements Rajkumar Buyya 2 Contents Java Introduction Java Features How Java Differs from other OO languages Java and the World Wide Web Java

More information

An Automated Workflow System Geared Towards Consumer Goods and Services Companies

An Automated Workflow System Geared Towards Consumer Goods and Services Companies Proceedings of the 2014 International Conference on Industrial Engineering and Operations Management Bali, Indonesia, January 7 9, 2014 An Automated Workflow System Geared Towards Consumer Goods and Services

More information

3C05: Unified Software Development Process

3C05: Unified Software Development Process 3C05: Unified Software Development Process 1 Unit 5: Unified Software Development Process Objectives: Introduce the main concepts of iterative and incremental development Discuss the main USDP phases 2

More information

1. Introduction 1.1 Methodology

1. Introduction 1.1 Methodology Table of Contents 1. Introduction 1.1 Methodology 3 1.2 Purpose 4 1.3 Scope 4 1.4 Definitions, Acronyms and Abbreviations 5 1.5 Tools Used 6 1.6 References 7 1.7 Technologies to be used 7 1.8 Overview

More information

Apache Web Server Execution Tracing Using Third Eye

Apache Web Server Execution Tracing Using Third Eye Apache Web Server Execution Tracing Using Third Eye Raimondas Lencevicius Alexander Ran Rahav Yairi Nokia Research Center, 5 Wayside Road, Burlington, MA 01803, USA Raimondas.Lencevicius@nokia.com Alexander.Ran@nokia.com

More information

Quantitative and qualitative methods in process improvement and product quality assessment.

Quantitative and qualitative methods in process improvement and product quality assessment. Quantitative and qualitative methods in process improvement and product quality assessment. Anna Bobkowska Abstract Successful improvement of the development process and product quality assurance should

More information

Requirements Definition and Management Processes

Requirements Definition and Management Processes Software Engineering G22.2440-001 Session 1 Sub-Topic 1 Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute

More information

Oracle Data Integrator: Administration and Development

Oracle Data Integrator: Administration and Development Oracle Data Integrator: Administration and Development What you will learn: In this course you will get an overview of the Active Integration Platform Architecture, and a complete-walk through of the steps

More information

Object-Oriented Modeling and Design

Object-Oriented Modeling and Design Object-Oriented Modeling and Design James Rumbaugh Michael Blaha William Premerlani Frederick Eddy William Lorensen General Electric Research and Development Center Schenectady, New York Tschnische Hochschule

More information

Defining and Checking Model Smells: A Quality Assurance Task for Models based on the Eclipse Modeling Framework

Defining and Checking Model Smells: A Quality Assurance Task for Models based on the Eclipse Modeling Framework Defining and Checking Model Smells: A Quality Assurance Task for Models based on the Eclipse Modeling Framework Thorsten Arendt a, Matthias Burhenne a, Gabriele Taentzer a a Philipps-Universität Marburg,

More information

Keywords Aspect-Oriented Modeling, Rule-based graph transformations, Aspect, pointcuts, crosscutting concerns.

Keywords Aspect-Oriented Modeling, Rule-based graph transformations, Aspect, pointcuts, crosscutting concerns. Volume 4, Issue 5, May 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Functional and Non-Functional

More information

II. PREVIOUS RELATED WORK

II. PREVIOUS RELATED WORK An extended rule framework for web forms: adding to metadata with custom rules to control appearance Atia M. Albhbah and Mick J. Ridley Abstract This paper proposes the use of rules that involve code to

More information

Integration of DB oriented CAD systems with Product Lifecycle Management

Integration of DB oriented CAD systems with Product Lifecycle Management Integration of DB oriented CAD systems with Product Lifecycle Management Roberto Penas, SENER Ingeniería y Sistemas S.A., Tres Cantos/Spain, roberto.penas@sener.es Carlos González, SENER Ingeniería y Sistemas

More information

A Case Study in the Design of a Restaurant Management System

A Case Study in the Design of a Restaurant Management System A Case Study in the Design of a Restaurant Management System Wesley Williams, Devon M. Simmonds Department of Computer Science University of North Carolina Wilmington {waw5709, simmondsd}@uncw.edu Abstract

More information

An Intelligent Approach for Integrity of Heterogeneous and Distributed Databases Systems based on Mobile Agents

An Intelligent Approach for Integrity of Heterogeneous and Distributed Databases Systems based on Mobile Agents An Intelligent Approach for Integrity of Heterogeneous and Distributed Databases Systems based on Mobile Agents M. Anber and O. Badawy Department of Computer Engineering, Arab Academy for Science and Technology

More information

Business Process Modeling with Structured Scenarios

Business Process Modeling with Structured Scenarios Business Process Modeling with Structured Scenarios Doug Rosenberg ICONIX Software Engineering, Inc. In 2008, based on our experience with a number of business process engineering projects over the last

More information

Aspects of a REA Ontology Based Business Service Concept in Value Models

Aspects of a REA Ontology Based Business Service Concept in Value Models Aspects of a REA Ontology Based Business Service Concept in Value Models (short version of CAiSE 2009 paper) Hans Weigand 1, Paul Johannesson 2, Birger Andersson 2, Maria Bergholtz 2 1 Tilburg University,

More information

Web-Based Information Systems

Web-Based Information Systems Web-Based Information Systems Prof. dr. Paul De Bra Eindhoven Univ. of Technology Topics Motivation Web Technology Design of Web-Based Information Systems Automatic Generation of Web-Based Interfaces 1

More information

Development models. 1 Introduction. 2 Analyzing development models. R. Kuiper and E.J. Luit

Development models. 1 Introduction. 2 Analyzing development models. R. Kuiper and E.J. Luit Development models R. Kuiper and E.J. Luit 1 Introduction We reconsider the classical development models: the Waterfall Model [Bo76], the V-Model [Ro86], the Spiral Model [Bo88], together with the further

More information

Contents. Java - An Introduction. Java Milestones. Java and its Evolution

Contents. Java - An Introduction. Java Milestones. Java and its Evolution Contents Java and its Evolution Rajkumar Buyya Grid Computing and Distributed Systems Lab Dept. of Computer Science and Software Engineering The University of Melbourne http:// www.buyya.com Java Introduction

More information

The Design of an Agent-Based Production Scheduling Software Framework for Improving Planning-Scheduling Collaboration

The Design of an Agent-Based Production Scheduling Software Framework for Improving Planning-Scheduling Collaboration The Design of an Agent-Based Production Scheduling Software Framework for Improving Planning-Scheduling Collaboration Pedro Gomez-Gasquet, Francisco Cruz Lario Esteban, Ruben Dario Franco Pereyra, and

More information

Object-Oriented Systems Analysis and Design

Object-Oriented Systems Analysis and Design Object-Oriented Systems Analysis and Design Noushin Ashrafi Professor of Information System University of Massachusetts-Boston Hessam Ashrafi Software Architect Pearson Education International CONTENTS

More information

Evaluation of a Use-Case-Driven Requirements Analysis Tool Employing Web UI Prototype Generation

Evaluation of a Use-Case-Driven Requirements Analysis Tool Employing Web UI Prototype Generation Evaluation of a Use-Case-Driven Requirements Analysis Tool Employing Web UI Prototype Generation SHINPEI OGATA Course of Functional Control Systems, Graduate School of Engineering Shibaura Institute of

More information

Menouer Boubekeur, Gregory Provan

Menouer Boubekeur, Gregory Provan Software Requirements Menouer Boubekeur, Gregory Provan Lectures Introduction to UML Introduction to Requirements Analysis Advanced techniques for Requirement Analysis M. Boubekeur, CSL, University College

More information

ARCHITECTURAL DESIGN OF MODERN WEB APPLICATIONS

ARCHITECTURAL DESIGN OF MODERN WEB APPLICATIONS ARCHITECTURAL DESIGN OF MODERN WEB APPLICATIONS Lech MADEYSKI *, Michał STOCHMIAŁEK Abstract. Architectural design is about decisions which influence characteristics of arising system e.g. maintainability

More information

A Proposal for Constructing Relational Database from Class Diagram

A Proposal for Constructing Relational Database from Class Diagram A Proposal for Constructing Relational Database from Class Diagram Mohd Zainuri Saringat Faculty of Information Technology and Multimedia Universiti Tun Hussein Onn Malaysia Parit Raja, Batu Pahat, 86400,

More information

Developing a Framework for Building Open Distance Learning Websites in the Literature and Culture Domain

Developing a Framework for Building Open Distance Learning Websites in the Literature and Culture Domain Developing a Framework for Building Open Distance Learning Websites in the Literature and Culture Domain Alexander Schatten, A Min Tjoa Insitute for Software Technology, Vienna University of Technology

More information

Scenario-based Requirements Engineering and User-Interface Design

Scenario-based Requirements Engineering and User-Interface Design Scenario-based Requirements Engineering and User-Interface Institut für Computertechnik ICT Institute of Computer Technology Hermann Kaindl Vienna University of Technology, ICT Austria kaindl@ict.tuwien.ac.at

More information

Service Oriented Architectures

Service Oriented Architectures 8 Service Oriented Architectures Gustavo Alonso Computer Science Department Swiss Federal Institute of Technology (ETHZ) alonso@inf.ethz.ch http://www.iks.inf.ethz.ch/ The context for SOA A bit of history

More information

II. Conceptual Modeling

II. Conceptual Modeling II. Conceptual Modeling Engineering Software Models in Software Engineering What is Conceptual Modeling? Origins 2003 John Mylopoulos and Steve Easterbrook Conceptual Modeling -- 1 Engineering Software

More information

What is a database? COSC 304 Introduction to Database Systems. Database Introduction. Example Problem. Databases in the Real-World

What is a database? COSC 304 Introduction to Database Systems. Database Introduction. Example Problem. Databases in the Real-World COSC 304 Introduction to Systems Introduction Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca What is a database? A database is a collection of logically related data for

More information

Application Of Business Intelligence In Agriculture 2020 System to Improve Efficiency And Support Decision Making in Investments.

Application Of Business Intelligence In Agriculture 2020 System to Improve Efficiency And Support Decision Making in Investments. Application Of Business Intelligence In Agriculture 2020 System to Improve Efficiency And Support Decision Making in Investments Anuraj Gupta Department of Electronics and Communication Oriental Institute

More information

Tool-Based Business Process Modeling using the SOM Approach

Tool-Based Business Process Modeling using the SOM Approach 1 Ferstl, Sinz, et.al. : Tool-Based Business Process Modeling... Tool-Based Business Process Modeling using the SOM Approach Abstract Business processes play an important role in analyzing and designing

More information

How to make a good Software Requirement Specification(SRS)

How to make a good Software Requirement Specification(SRS) Information Management Software Information Management Software How to make a good Software Requirement Specification(SRS) Click to add text TGMC 2011 Phases Registration SRS Submission Project Submission

More information

Analyze and Design of Information Systems Using OODPM for Small Scale Businesses

Analyze and Design of Information Systems Using OODPM for Small Scale Businesses Analyze and Design of Information Systems Using OODPM for Small Scale Businesses Pavel Petkun Offer Drori The Hebrew University of Jerusalem E-mail: pashka, offerd {@cs.huji.ac.il} Abstract In the modern

More information

Software Engineering. Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti

Software Engineering. Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti Software Engineering Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical

More information

Functional Requirements Document -Use Cases-

Functional Requirements Document -Use Cases- EUROPEAN COMMISSION DIRECTORATE GENERAL JRC JOINT RESEARCH CENTRE Cyber-security & New Technologies for Combating Fraud (CSCF) Institute for the Protection and Security of the Citizen (IPSC) EYE IN THE

More information

Service-Oriented Architecture and Software Engineering

Service-Oriented Architecture and Software Engineering -Oriented Architecture and Software Engineering T-86.5165 Seminar on Enterprise Information Systems (2008) 1.4.2008 Characteristics of SOA The software resources in a SOA are represented as services based

More information

Software Requirements

Software Requirements Software Engineering Software Requirements Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce the concepts of user and system requirements To describe functional and

More information

Model Driven Interoperability through Semantic Annotations using SoaML and ODM

Model Driven Interoperability through Semantic Annotations using SoaML and ODM Model Driven Interoperability through Semantic Annotations using SoaML and ODM JiuCheng Xu*, ZhaoYang Bai*, Arne J.Berre*, Odd Christer Brovig** *SINTEF, Pb. 124 Blindern, NO-0314 Oslo, Norway (e-mail:

More information

White Paper Cybercom & Axiomatics Joint Identity & Access Management (R)evolution

White Paper Cybercom & Axiomatics Joint Identity & Access Management (R)evolution White Paper Cybercom & Axiomatics Joint Identity & Access Management (R)evolution Federation and Attribute Based Access Control Page 2 Realization of the IAM (R)evolution Executive Summary Many organizations

More information

Using ESB and BPEL for evolving healthcare systems towards SOA

Using ESB and BPEL for evolving healthcare systems towards SOA ehealth Beyond the Horizon Get IT There S.K. Andersen et al. (Eds.) IOS Press, 2008 2008 Organizing Committee of MIE 2008. All rights reserved. 747 Using ESB and BPEL for evolving healthcare systems towards

More information

Automating Service Negotiation Process for Service Architecture on the cloud by using Semantic Methodology

Automating Service Negotiation Process for Service Architecture on the cloud by using Semantic Methodology Automating Process for Architecture on the cloud by using Semantic Methodology Bhavana Jayant.Adgaonkar Department of Information Technology Amarutvahini College of Engineering Sangamner, India adgaonkarbhavana@yahoo.in

More information

Skills for Employment Investment Project (SEIP)

Skills for Employment Investment Project (SEIP) Skills for Employment Investment Project (SEIP) Standards/ Curriculum Format for Web Application Development Using DOT Net Course Duration: Three Months 1 Course Structure and Requirements Course Title:

More information

Object-oriented design methodologies

Object-oriented design methodologies Object-oriented design methodologies An object-oriented methodology is defined as the system of principles and procedures applied to object-oriented software development. Five years ago, there was no standard

More information

DESIGN AND DEVELOPING ONLINE IRAQI BUS RESERVATION SYSTEM BY USING UNIFIED MODELING LANGUAGE

DESIGN AND DEVELOPING ONLINE IRAQI BUS RESERVATION SYSTEM BY USING UNIFIED MODELING LANGUAGE DESIGN AND DEVELOPING ONLINE IRAQI BUS RESERVATION SYSTEM BY USING UNIFIED MODELING LANGUAGE Asaad Abdul-Kareem Al-Hijaj 1, Ayad Mohammed Jabbar 2, Hayder Naser Kh 3 Basra University, Iraq 1 Shatt Al-Arab

More information

From Business Process Modeling to the Specification of Distributed Business Application Systems - An Object-Oriented Approach -

From Business Process Modeling to the Specification of Distributed Business Application Systems - An Object-Oriented Approach - From Business Process Modeling to the Specification of Distributed Business Application Systems - An Object-Oriented Approach - Otto K. Ferstl, Elmar J. Sinz 1 Abstract A business application system is

More information