ARCHITECTURAL TRANSFORMATION AND RE- ENGINEERING FOR WEB SERVICE-BASED SYSTEMS

Size: px
Start display at page:

Download "ARCHITECTURAL TRANSFORMATION AND RE- ENGINEERING FOR WEB SERVICE-BASED SYSTEMS"

Transcription

1 IADIS International Conference on WWW/Internet 2005 ARCHITECTURAL TRANSFORMATION AND RE- ENGINEERING FOR WEB SERVICE-BASED SYSTEMS Claus Pahl and Ronan Barrett Dublin City University, School of Computing Dublin 9, Ireland ABSTRACT Software systems based on the Web Services Framework are examples of service-oriented architectures. The ubiquity of the Web will make this framework an important platform for future software systems. We investigate a re-engineering approach to enable the migration of existing systems to the new platform. Capturing and transforming the static and dynamic aspects of the system architecture are the central activities, which is supported by a layered architecture model and a calculus focusing on service processes in the architecture. Architectural and process patterns provide central elements of the re-engineering framework. We will present an architectural transformation calculus that forms the core of such an approach. KEYWORDS Web Services, Service-oriented Architecture, Architectural Transformation, Software Re-engineering, Architectural Transformation Calculus, Re-engineering Methodology. 1. INTRODUCTION Service-oriented architectures (SOA) play an increasingly important role as an architectural organisation form for software systems. The Web Services Framework (WSF) with the WSDL description language and the SOAP service interaction protocol is a specific form of an SOA [1]. Due to the ubiquity of the Web platform, the WSF can be expected to play a major role as a software development and deployment platform in the future. Often, service-orientation is a business goal or stakeholder objective. Providing and charging for the use of services in an SOA such as the Web Services Framework can be a new revenue model. Other reasons to migrate to service technology include increased competitiveness, interoperability that is required to enable enterprise systems integration, or the reuse of software artefacts. The consequence the potential that SOAs and service provision offers in terms of technical and commercial benefits is that software developers and provider will consider the migration to an SOA. A substantial number of existing software systems will have to be re-engineered to satisfy the constraints imposed by SOAs. Simple adaptations, such as code wrappers, are often not sufficient to achieve the stakeholder goals. Provided services are reusable artefacts that need to be coherent, reliable, and clearly described in their functional and non-functional properties. Thus, the need to re-engineer these software systems and in particular their architecture arises [2]. We will focus our attention here on object technology software systems that have to be re-engineered and the problems that arise in the context of migrating towards an SOA. In the recent past, the migration of software to object technology has been in the focus [3]. Legacy systems that predate this era and how to re-engineer small-scale code is extensively dealt with in the literature [4, 5]. We therefore focus on the migration from object to service technology. Our solution is based on a layered architecture model that is embedded into a process model capturing the central re-engineering activities and which is made available to developers through a description notation and associated re-engineering techniques. As composition is a central activity in software development, we will focus in particular on composition and architecture issues in SOAs. Processes will turn out to be the essential form of composition in these types of architectures. At the core of our approach will be a calculus to support 299

2 ISBN: X 2005 IADIS the migration of legacy systems to service-based architectures through architectural description and transformation. The Web Service Framework will be the platform we will focus on. 2. SERVICE-ORIENTED ARCHITECTURES AND WEB SERVICES A central aim of software architecture [2] is the separation of communication from computation. Architectures are about components (the loci of computation) and connectors (the loci of communication). This allows a developer to focus on structural architectures and the dynamics between components separately. In [6], a basic notional architectural model is presented that captures common concepts found in a variety of architectural description languages: components provide computation, interfaces provide access to blackbox components, and connectors provide connections between components. Behaviour is an essential part of modelling and understanding software system architectures [2]. Interaction processes are central for the understanding of a software system. For instance, [7] use scenarios descriptions of interactions of a user with a system to operationalise requirements and map these to a system architecture. We follow this approach here. We extend the notion of interaction and also consider system-internal interactions and allow interaction processes to be composite. Interaction process descriptions will help us to analyse existing systems and to formulate the target architecture. A service is made up of a coherent set of operations provided at a certain location. The service provider makes an abstract service interface description available that can be used by potential service users to locate and invoke the service. Services are often used as is in single request-response interactions [8], but more and more the composition of services to processes is important the recent discussion about orchestration and choreography of Web services highlights this development [9]. Existing services can be reused to form business or workflow processes. The principle of architectural composition here is process assembly. During the 1980s and 1990s, object technology was the favoured implementation paradigm. In more recent years, open distributed middleware and service-oriented architectures have become more important. Consequently, a need to migrate from object to service technology arises. Object technology systems are similar to service-oriented architecture in that they are formed by components that interact through operation activation [5]. Middleware platforms such as CORBA certainly encompass a notion of services. The main difference is that the principle of distribution and the clear separation of user and provider is not part of object-orientation. Often, existing systems have evolved in undocumented steps, making it necessary to reconstruct their architecture explicitly before software migration can take place. Architectural reconstruction is a part of the re-engineering of a software system. It is usually not an automatic process [2]. Pattern recognition and their explicit description are central activities. Architectural re-engineering is the core task of a migration from object to service technology. 3. ARCHITECTURAL RE-ENGINEERING AND TRANSFORMATION Our architectural re-engineering framework is based on three elements (Fig. 1): a process model capturing reengineering activities, a description notation and re-engineering techniques, and a layered architecture model. 3.1 Layered Architecture Model More than connections and interactions along the connections of a software architecture have to be considered for SOAs: flow patterns and interaction processes need to be modelled, design and architectural patterns defining structural and interaction constraints need to be identified, and domain-specific reference architectures need to be employed. These aspects form the layers of abstraction of our architectural model (Figure 1). This model forms the basis for re-engineering activities for the migration process. The activities are complemented by a repository of workflow and architectural design patterns. 300

3 IADIS International Conference on WWW/Internet 2005 Re-engineering Activities architecture reconstruction re-engineering service pattern-preserving identification transformation annotation and implementation Notation and Techniques Architectural Layers of Abstraction flow patterns modelling and analysis techniques architectural description notation architectural design patterns support activities provide notation reference architectures Figure 1. An Architectural Re-engineering Framework. 3.2 Re-engineering Activities The following activities define a process model for architectural re-engineering for service-oriented architectures (Figure 1). The first step is the capture of current architectural properties through a semiformal description. Reconstructing the system architecture is usually necessary since most software systems will have evolved since their initial design. Re-engineering of the system architecture is the second step. This involves two activities: firstly, a remodelling as a service-oriented architecture, and, secondly, an adaptation or transformation of the serviceoriented architecture. The following aspects need to be addressed in the first activity: Reference architectures should be used to remodel the system architecture and to identify services. Architectural design patterns need to be identified these will act as invariants for further transformations. Workflow patterns need to be identified to structure interaction processes within the architecture. This step might lead to architectural changes. The transformation step needs to consider architectural invariants expressed in terms of patterns. The remodelling step is usually done by hand, whereas the transformation step can be (semi-)automatic. Annotation and implementation is the final step. Abstract specification and annotation of services supports re-engineering for reuse. Two aspects need to be specified: abstract computation, e.g. pre- and postconditions for individual operations, and interface processes and workflows for services as a whole. Implementation of the converted architecture is the last activity. This includes WSF notations such as the interface description format WSDL (Web Service Description Language) and choreography and orchestration languages such as WS-BPEL (Business Process Execution Language or Web Services). 3.3 An Architectural Description and Transformation Calculus We introduce a calculus for architectural description and transformation that has features of an abstract architectural description language at its core. We do not use a full-scale ADL here; our objective is to identify features of an architectural re-engineering language using the calculus. Two elements define our calculus. Firstly, a description notation is needed to capture architectural properties of a software system. Secondly, the notation is complemented by modelling and analysis techniques for transformation. The calculus is defined in terms of the π-calculus [10] for two reasons a simulation notion allows us to capture transformation and mobility is similar to changes in context. We follow here other process calculus-based approaches [16,17,19]. However, we add a richer set of combinators to express workflow and design 301

4 ISBN: X 2005 IADIS patterns. A more foundational framework allows us to develop a basic calculus [19]. A simulation notion captures the idea of permitted structure and behaviour variations during transformation. The ultimate objective is, however, to map this calculus to a widely used standardised notation [18]. The Notation The basic element describing process activity is an action. Actions are combined to process expressions. Given a service x and data item a, actions can be divided into invocations inv x (a) of other services and activations receive rcv x (a) and reply rep x (b) through other services. The process combinators are: Sequences are represented by the ; -notation a;p, meaning that action a is executed and the system transfers to the remainder of the process P, where the next action of P is executed. Choice means that one a i from choice a i ;P i is chosen. Multichoice mchoice a i ;P i allows any number of the processes a i ;P i to be chosen and executed in parallel. Iteration repeat P executes process P an arbitrary number of times. Parallel composition par (P1,P2) executes processes P1 and P2 concurrently. Additionally, process abstractions shall be introduced. We cover the three layers of the conceptual architecture with our notation. Workflow operators are directly integrated as operators. An architectural design pattern can be formulated as an expression of a number of concurrently executing processes. Reference architectures can be modelled on the level of abstractions. Techniques The description notation is complemented by modelling and analysis techniques that suit the architectural reengineering needs. A notion of satisfaction is needed to capture equivalence and refinement an essential element of the modelling aspect. A simulation definition, adopted from the π-calculus, satisfies this requirement for the processes. A simulation needs to match all actions of the original process in the same ordering. Architectural transformation is one of the re-engineering activities. Simulation is the criterion that formalises the notion of property-preserving transformations. Interaction processes should not change and structural patterns should be preserved. A repository of patterns is part of the support. We distinguish workflow patterns [11] and architectural design patterns [12]. Workflow patterns relate to connector types that are used in the composition of services or components they are actually provided as built-in operators of the calculus. An example is the Unix-style pipe, which resembles our sequence workflow pattern. Architectural design patterns are structural and behavioural constraints formulated on a number of components with particular roles. We join here design patterns [12] and architectural patterns [2] into one architectural design pattern concept. 4. CASE STUDY Our case study is a teaching and learning system called IDLE (Interactive Database Learning Environment). It is based on object technology with a Web-based interface. IDLE is architecturally characterised as follows: It is a multimedia system that uses different mechanisms to provide access to learning content, e.g. Web server and a (synchronised) audio server, It is an interactive system that integrates components of a database development environment (a design editor, a programming interface, and an analysis tool) into a teaching and learning context, It is a constructive environment in which learners can develop their database applications, supported by shared storage and workspace. Most of the business logic is coded in Java and standard Web technologies. While IDLE is not a large system in comparison with some industrial applications, it is a real-world system that is in use since the late 1990s and has been used by thousands of students since then. In particular the development history makes this system a good case study. The system has been developed over a period of eight years in several stages. The consequence of this growth is a system without a designed architecture an architecture that is even not explicitly captured and documented. We will illustrate the re-engineering of IDLE to a service-oriented architecture in this case the WSF based on the process model activities. 302

5 IADIS International Conference on WWW/Internet 2005 Multimedia Learner Entity Behaviour Delivery Learning Locator Content Catalog Info Learning Resources Query Interaction Context Locator Learning Preferences Assessment Coach Learner Info Evaluation Learner Info Learner Records Figure 2. Reconstruction: an overview of the LTSA Reference Architecture the reconstruction basis. 4.1 Reconstruction Reference architectures, if they exist, can play an essential role in the architectural definition of a software system. Reference architectures often emerge in an abstracted and standardised form from successful architectures. Reference architectures define accepted structures and processes that help to build maintainable and interoperable systems. In the context of educational software systems, the Learning Technology Standard Architecture LTSA provides a service-oriented reference architecture [13]. It captures common structural and behavioural features of learning technology systems. We can describe IDLE s architectural characteristics using the LTSA. An abstract representation of the LTSA can be found in Fig. 2. The following is an LTSAbased specification of some IDLE adaptive delivery behaviour: LearnerEntity = prefinfo = inv getpref (); inv setpref (alter(prefinfo)); learres = inv multimedia () Coach = repeat ( choice ( rcv getpref (); rep getpref (prefinfo), rcv setpref (prefinfo), uri = inv locator (resource) ) ) Delivery = rcv locator (uri); learnres = inv retrvres (uri); rep multimedia (learnres) LearningResources = rcv retrvres (uri); rep retrvres (retrieve(uri)) Design patterns are recognised as important building blocks in the development of software systems [12]. Their purpose is the identification of common structural and behavioural patterns in these systems. A rich set of design pattern has been described, which can be used to structure a software design at an intermediate level of abstraction. Design patterns in Web services architectures are discussed in [14]. Usually, architectural patterns (such as client-server or model-view-controller) are distinguished from design patterns (such as factory, composite, or iterator). We see both forms of patterns as constraints on a system architecture, i.e. on services and on their patterns of interaction. An example of an architectural design pattern is the client-dispatcher-server pattern, see Fig. 3. In IDLE, a learner requests content from a resources server. This involves the learner (client), a coach (dispatcher), and the resources and delivery subsystem (server). The pattern is not identical to the structure found in the IDLE system. However, the client-dispatcher-server pattern is simulated by the composite process par (LearnerEntity,Coach,Delivery) of the IDLE reformulation in LTSA terminology, i.e. the pattern is a good abstraction of IDLE functionality that needs to be preserved during transformation. Abstracted pattern definitions such as client-dispatcher-server can act as building blocks in higher-level architectural specifications. Patterns are defined as process expressions and made available as process abstractions. These macro-style building blocks also form the pattern repository. Workflow patterns are small-scale process patterns. These are small compositions of basic activities. The multichoice pattern is an example: mchoice(lecture, Tutorial, Lab) expresses that a selection of IDLE services Lecture, Tutorial, and Lab can be used concurrently. Workflow patterns and the problems they cause when implemented in Web services infrastructures are described in [15]. To identify these patterns is important since often not all of them are supported by the implementation languages. In this case, workarounds based on architectural transformations have to be found. 303

6 ISBN: X 2005 IADIS 4.2 Service Identification A main goal of using a (service-oriented) reference architecture in our context is the identification of services in the original IDLE system: some of the components are already services an SQL execution element, which is part of the lab resources and delivery subsystem, is an example, some components (implemented as Java objects) are not services a feedback system is not encapsulated as a service; another example is the workspace function. We have decided to realise the workspace function, which could have been integrated into either learning resources or learner records, as a separate service in the converted system. The IDLE storage/workspace feature can be integrated as a service: WorkSpace = choice ( repeat ( rcv retrieve (resid); inv provide (res) ); repeat ( rcv store (resid, res) ) ) This explicit storage/workspace service would require for instance the services LearnerEntity and Delivery to be modified in their interaction patterns. Client dotask sendrequest requestservice return Server acceptconnection runservice receiverequest requestconnection register acceptconnection Dispatcher locatemap registerservice unregisterservice locateserver establishchannel getchannel Figure3. Transformation: The Client-Dispatcher-Server design pattern acts as an invariant. 4.3 Transformation In our method, design patterns that can be identified in an existing system act as invariants of the architectural transformation. Previous investigations in this direction [16] have shown that design patterns that were identified for object-based systems will also occur in service-oriented architectures. Consequently, identified patterns in the original system should be preserved in the new, service-based system. In order to identify workflow patterns that need to be preserved, these can easily be identified due to their implementation as operators in the notation. The specification of architectural Client-Dispatcher-Server design pattern in Fig. 3 is based on workflow patterns. Learner = repeat ( reqeducserv = inv reqcon ();res = inv reqeducserv (resid) ) Delivery = inv rgsteducserv (id); repeat ( rcv acceptcon (c); rcv reqeducserv (s); rep reqeducserv (run(s)) ) Coach = choice ( choice ( rcv rgsteducserv (id); rcv unrgsteducserv (id) ) repeat ( rcv reqcon (); let c = getchannel () in par ( inv acceptcon (c); rep reqcon (c) ) ) ) 304

7 IADIS International Conference on WWW/Internet 2005 with client Learner, server Delivery, and dispatcher Coach describes the educational service registration and provision based on Client-Dispatcher-Server pattern. The client is based on a sequence of activities. The dispatcher is based on choice in the first part, and a concurrent split and merge in the second part. The reconstructed architecture is the transformation basis. The integration of specifications of the identified existing or created services forms the transformed architecture. 4.4 Implementation for the Web Services Platform Implementation languages are accepted and tool-supported WSF-specific languages such as WSDL or BPEL4WS. Another architectural transformation of workflow patterns can take place when the final represenation is generated and the system is implemented on the target platform. For instance, choice ( A, B, C, par (A,B), par (A,C), par (B,C), par (A,B,C) ) is an equivalent workaround that is needed if the implementation language does not support the multichoice pattern mchoice(a,b,c). The multichoice pattern is typical, but is not supported by all BPEL4WS implementations [15]. The workaround simulates the multichoice pattern. Annotation, is as already pointed out, important in the context of re-engineering for SOAs, but is, however, beyond the scope of this paper. 5. CONCLUSIONS AND FUTURE WORK Migrating software to a new platform or paradigm is often desirable (e.g. for competitiveness reasons) or necessary (e.g. for interoperability reasons). The recent success of the Web the Web Services Framework in particular will see a large number of systems being re-engineered for service-oriented architectures. Our architectural re-engineering framework addresses the conversion from object technology to service technology. A layered architecture model that captures architectural structures at different levels of abstraction is at the core. A calculus a notation with supporting techniques based on the architecture model allows the behaviour in architectures to be captured. This is embedded into a process model of reengineering activities such as architectural reconstruction, service identification, architectural transformation, and implementation for a concrete platform. Interaction behaviour and composite processes within the architecture have turned out to be an essential aspect. Re-engineering for service-oriented architectures is, however, different from other re-engineering domains. The subject of re-engineering techniques are architectures. Re-engineering for reuse is an aim. The identification and implementation of services has often the purpose of making these services available to other users. Re-engineering for discovery is an important aspect in this context. In this paper, we have focussed on the technical process of migrating existing software systems to the new Web Services platform based on transforming the underlying system architecture. Re-engineering for discovery although not covered here explains one of the central motivations to migrate. It is also a major reason for our specific framework, since re-engineering for discovery has not been sufficiently addressed by other work on re-engineering. Making software available in form of services of broadens the applicability of reusable components and allows software providers to use software service provision as a new source of revenue. With our framework we have identified the core elements of a re-engineering methodology. A number of aspects remain to be addressed. Architectural (or component) mismatch is a problem that arises if components are assembled in an architecture. In particular if off-the-shelf components are used in the target system, this can be a problem. By using a process calculus notation instead of an architectural description language, the integration of these aspects is easier to address. The objective of this paper was to address the technical foundations of architectural transformation a complete methodology will be accompanied by a description language based on standardised and widely used notations. We aim here at mapping our calculus a message sequence charts (MSC) notation. We have focussed on activities related to the architectural transformation by providing a notation for architectural description and calculus-based notions of invariants that implement a correctness criterion 305

8 ISBN: X 2005 IADIS for the transformation. Other formal correctness aspects in addition transformation and assembly/mismatch address the correctness between architecture descriptions and their implementations. The consideration of specific issues such as security or maintainability in the re-engineering process has been neglected in our framework. Patterns and reference architectures are already a first step towards maintainability, but software change can entail further problems. REFERENCES [1] World Wide Web Consortium, Web Services Architecture Definition Document. Web site [2] L. Bass, P. Clements, and R. Kazman, Software Architecture in Practice (2 nd Edition). SEI Series in Software Engineering. Addison-Wesley. [3] Graham, Migrating to Object Technology. Addison-Wesley, [4] R.S. Arnold, editor, Software Re-engineering. IEEE Tutorial. IEEE Press. [5] Sommerville, Software Engineering - 6th Edition. Addison Wesley. [6] R. Roshandel, A. van der Hoek, M. Mikic-Rakic, and N. Medvidovic, Mae A System Model and Environment for Managing Architectural Evolution. ACM Transactions of Software Engineering and Methodology, 13(2): [7] R. Kazman, S.J. Carriere, and S.G. Woods, Toward a Discipline of Scenario-based Architectural Evolution. Annals of Software Engineering, 9(1-4):5 33. [8] J. Williams and J. Baty, Building a Loosely Coupled Infrastructure for Web Services. In Proc. International Conference on Web Services ICWS [9] C. Peltz, Web Service orchestration and choreography: a look at WSCI and BPEL4WS. Web Services Journal, 3(7). [10] R. Milner, Communicating and Mobile Systems: the π-calculus. Cambridge University Press. [11] W.M.P. van der Aalst, B. Kiepuszewski A.H.M. ter Hofstede, and A.P. Barros, Workflow Patterns. Distributed and Parallel Databases, 14:5 5. [12] E. Gamma, R. Helm, R. Johnson, and J. Vlissides, Design Patterns: Elements of Reusable Design. Addison Wesley. [13] IEEE Learning Technology Standards Committee LTSC, IEEE P1484.1/D8. Draft Standard for Learning Technology - Learning Technology Systems Architecture LTSA. IEEE Computer Society. [14] N.Y. Topaloglu and R. Capilla, Modeling the Variability of Web Services from a Pattern Point of View. In L.J. Zhang and M. Jeckle, editors, Proc. European Conference on Web Services ECOWS 2004, pages Springer- Verlag, LNCS [15] M. Vasko and S. Duskar, An Analysis of Web Services Flow Patterns in Collaxa. In L.J. Zhang and M. Jeckle, editors, Proc. European Conference on Web Services ECOWS 2004, pages Springer-Verlag, LNCS [16] C. Pahl and R. Barrett, Towards a Re-engineering Method for Web Services Architectures. In Proc. 3rd Nordic Conference on Web Services NCWS 04. [17] F. Plasil and S. Visnovsky, Behavior Protocols for Software Components. IEEE Transactions on Software Engineering, vol. 28, no. 11. [18] S.J. Woodman, D.J. Palmer, S.K. Shrivastava, and S.M. Wheater, Notations for the specification and verification of Composite Web Services. In Proceedings 8th International Enterprise Distributed Object Computing Conference EDOC 2004, Monterey, CA. [19] A. Brogi, C. Canal, E. Pimentel, A. Vallecillo, Formalizing Web Service Choreographies. In Proc. of First International Workshop on Web Services and Formal Methods, Pisa, Italy. ENTCS. 306

Layered Patterns in Modelling and Transformation of Service-based Software Architectures

Layered Patterns in Modelling and Transformation of Service-based Software Architectures Layered Patterns in Modelling and Transformation of Service-based Software Architectures Claus Pahl and Ronan Barrett Dublin City University School of Computing Dublin 9, Ireland [cpahl rbarrett]@computing.dcu.ie

More information

Pattern-based Software Architecture for Service-oriented Software Systems

Pattern-based Software Architecture for Service-oriented Software Systems Pattern-based Software Architecture for Service-oriented Software Systems 1 Pattern-based Software Architecture for Service-oriented Software Systems Claus Pahl, Ronan Barrett *School of Computing, Dublin

More information

Pattern-Based Software Architecture for Service-Oriented Software Systems

Pattern-Based Software Architecture for Service-Oriented Software Systems e-informatica Software Engineering Journal, Volume 4, Issue 1, 2010 Pattern-Based Software Architecture for Service-Oriented Software Systems Claus Pahl, Ronan Barrett School of Computing, Dublin City

More information

Ontology Transformation and Reasoning for Model-Driven Architecture

Ontology Transformation and Reasoning for Model-Driven Architecture Ontology Transformation and Reasoning for Model-Driven Architecture Claus Pahl Dublin City University School of Computing Dublin 9, Ireland cpahl@computing.dcu.ie Abstract. Model-driven Architecture (MDA)

More information

Security in the Web Services Framework

Security in the Web Services Framework Security in the Web Services Framework Chen Li and Claus Pahl Dublin City University School of Computing Dublin 9 Ireland Abstract The Web Services Framework provides techniques to enable the application-toapplication

More information

A Conceptual Architecture for Semantic Web Services Development and Deployment

A Conceptual Architecture for Semantic Web Services Development and Deployment Int. J., Vol. x, No. x, xxxx 1 A Conceptual Architecture for Semantic Web Services Development and Deployment Claus Pahl Dublin City University School of Computing Dublin 9 Ireland Abstract. Several extensions

More information

An Approach to Software Component Specification

An Approach to Software Component Specification Page 1 of 5 An Approach to Software Component Specification Jun Han Peninsula School of Computing and Information Technology Monash University, Melbourne, Australia Abstract. Current models for software

More information

Topics on Web Services COMP6017

Topics on Web Services COMP6017 Topics on Web Services COMP6017 Dr Nicholas Gibbins nmg@ecs.soton.ac.uk 2013-2014 Module Aims Introduce you to service oriented architectures Introduce you to both traditional and RESTful Web Services

More information

Towards a Task-Oriented, Policy-Driven Business Requirements Specification for Web Services

Towards a Task-Oriented, Policy-Driven Business Requirements Specification for Web Services Towards a Task-Oriented, Policy-Driven Business Requirements Specification for Web Services Stephen Gorton and Stephan Reiff-Marganiec Department of Computer Science, University of Leicester University

More information

A Messaging-Based Integration Architecture for Print Production Workflow Systems

A Messaging-Based Integration Architecture for Print Production Workflow Systems A Messaging-Based Integration Architecture for Print Production Workflow Systems Claes Buckwalter Digital Media, ITN, Linköping University, Sweden Abstract A print production workflow consists of a number

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

Incorporating applications to a Service Oriented Architecture

Incorporating applications to a Service Oriented Architecture Proceedings of the 5th WSEAS Int. Conf. on System Science and Simulation in Engineering, Tenerife, Canary Islands, Spain, December 16-18, 2006 401 Incorporating applications to a Service Oriented Architecture

More information

Supporting Documentation and Evolution of Crosscutting Concerns in Business Processes

Supporting Documentation and Evolution of Crosscutting Concerns in Business Processes Supporting Documentation and Evolution of Crosscutting Concerns in Business Processes Chiara Di Francescomarino supervised by Paolo Tonella dfmchiara@fbk.eu - Fondazione Bruno Kessler, Trento, Italy Abstract.

More information

Why Consider Implementation-Level Decisions in Software Architectures?

Why Consider Implementation-Level Decisions in Software Architectures? 1. Abstract Why Consider Implementation-Level Decisions in Software Architectures? Nikunj Mehta Nenad Medvidović Marija Rakić {mehta, neno, marija}@sunset.usc.edu Department of Computer Science University

More information

Business Process Design based on Web Services: The C.O.S.M.O.S. Environment

Business Process Design based on Web Services: The C.O.S.M.O.S. Environment Business Process Design based on Web Services: The C.O.S.M.O.S. Environment LOUKAS GEORGIOU School of Informatics University of Wales-Bangor Dean Street Bangor Gwynedd, LL571UT UNITED KINGDOM ODYSSEAS

More information

Style-specific techniques to design product-line architectures

Style-specific techniques to design product-line architectures Style-specific techniques to design product-line architectures Philippe Lalanda Thomson-CSF Corporate Research Laboratory Phone: 33 1 69 33 92 90 Email: lalanda@thomson-lcr.fr Domaine de Corbeville 91404

More information

Experiences with OWL-S, Directions for Service Composition:

Experiences with OWL-S, Directions for Service Composition: Experiences with OWL-S, Directions for Service Composition: The Cashew Position Barry Norton 1 Knowledge Media Institute, Open University, Milton Keynes, UK b.j.norton@open.ac.uk Abstract. Having used

More information

Modularizing Web Services Management with AOP

Modularizing Web Services Management with AOP Modularizing Web Services Management with AOP María Agustina Cibrán, Bart Verheecke { Maria.Cibran, Bart.Verheecke@vub.ac.be System and Software Engineering Lab Vrije Universiteit Brussel 1. Introduction

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

Service-Based Realization of Business Processes Driven by Control-Flow Patterns

Service-Based Realization of Business Processes Driven by Control-Flow Patterns Service-Based Realization of Business Processes Driven by Control-Flow Patterns Petr Weiss Department of Information Systems, Faculty of Information Technology, Brno University of Technology, Bozetechova

More information

Web Services Annotation and Reasoning

Web Services Annotation and Reasoning Web Services Annotation and Reasoning, W3C Workshop on Frameworks for Semantics in Web Services Web Services Annotation and Reasoning Peter Graubmann, Evelyn Pfeuffer, Mikhail Roshchin Siemens AG, Corporate

More information

Software Language Engineering of Architectural Viewpoints

Software Language Engineering of Architectural Viewpoints Software Language Engineering of Architectural Viewpoints Elif Demirli and Bedir Tekinerdogan Department of Computer Engineering, Bilkent University, Ankara 06800, Turkey {demirli,bedir}@cs.bilkent.edu.tr

More information

Pattern-Based Architectural Design Process Model

Pattern-Based Architectural Design Process Model Pattern-Based Architectural Design Process Model N. Lévy, F. Losavio Abstract: The identification of quality requirements is crucial to develop modern software systems, especially when their underlying

More information

AN ONTOLOGICAL FRAMEWORK FOR WEB SERVICE PROCESSES

AN ONTOLOGICAL FRAMEWORK FOR WEB SERVICE PROCESSES AN ONTOLOGICAL FRAMEWORK FOR WEB SERVICE PROCESSES CLAUS PAHL and RONAN BARRETT Dublin City University, School of Computing Dublin 9, Ireland [cpahl rbarrett]@computing.dcu.ie http://www.computing.dcu.ie/

More information

SOA Architect. Certification

SOA Architect. Certification SOA Architect Certification SOA Architect The new generation SOACP program from Arcitura is dedicated to excellence in the fields of contemporary service-oriented architecture, microservices, service APIs

More information

A Lightweight Language for Software Product Lines Architecture Description

A Lightweight Language for Software Product Lines Architecture Description A Lightweight Language for Software Product Lines Architecture Description Eduardo Silva, Ana Luisa Medeiros, Everton Cavalcante, Thais Batista DIMAp Department of Informatics and Applied Mathematics UFRN

More information

Arguments for Open Structure Execution Services

Arguments for Open Structure Execution Services Arguments for Open Structure Execution Services Jessica Rubart 1, Weigang Wang 1, Jörg M. Haake 2 1 Fraunhofer Institute for Integrated Publication and Information Systems (IPSI) Dolivostrasse 15 64293

More information

Ontology-based Composition and Transformation for Model-Driven Service Architecture

Ontology-based Composition and Transformation for Model-Driven Service Architecture Ontology-based Composition and Transformation for Model-Driven Service Architecture Claus Pahl Dublin City University School of Computing Dublin 9, Ireland cpahl@computing.dcu.ie Abstract. Building service-based

More information

The onprom Toolchain for Extracting Business Process Logs using Ontology-based Data Access

The onprom Toolchain for Extracting Business Process Logs using Ontology-based Data Access The onprom Toolchain for Extracting Business Process Logs using Ontology-based Data Access Diego Calvanese, Tahir Emre Kalayci, Marco Montali, and Ario Santoso KRDB Research Centre for Knowledge and Data

More information

Reference: Java Web Services Architecture James McGovern, Sameer Tyagi, Michael Stevens, and Sunil Mathew, 2003

Reference: Java Web Services Architecture James McGovern, Sameer Tyagi, Michael Stevens, and Sunil Mathew, 2003 CS551: Advanced Software Engineering Service-Oriented Architecture Reference: Java Web Services Architecture James McGovern, Sameer Tyagi, Michael Stevens, and Sunil Mathew, 2003 Yugi Lee STB #560D (816)

More information

6/20/2018 CS5386 SOFTWARE DESIGN & ARCHITECTURE LECTURE 5: ARCHITECTURAL VIEWS C&C STYLES. Outline for Today. Architecture views C&C Views

6/20/2018 CS5386 SOFTWARE DESIGN & ARCHITECTURE LECTURE 5: ARCHITECTURAL VIEWS C&C STYLES. Outline for Today. Architecture views C&C Views 1 CS5386 SOFTWARE DESIGN & ARCHITECTURE LECTURE 5: ARCHITECTURAL VIEWS C&C STYLES Outline for Today 2 Architecture views C&C Views 1 Components and Connectors (C&C) Styles 3 Elements Relations Properties

More information

CS560 Lecture: Software Architecture Includes slides by I. Sommerville

CS560 Lecture: Software Architecture Includes slides by I. Sommerville CS560 Lecture: Software Architecture 2009 Includes slides by I. Sommerville Architectural Design Design process for identifying the sub-systems making up a system and the framework for sub-system control

More information

Introduction to software architecture Revision : 732

Introduction to software architecture Revision : 732 Introduction to software architecture Revision : 732 Denis Conan Septembre 2018 Foreword The content of these slides is extracted from the following references: L. Bass, P. Clements, and R. Kazman. Software

More information

Modeling Choreographies: BPMN 2.0 versus BPEL-based Approaches

Modeling Choreographies: BPMN 2.0 versus BPEL-based Approaches Institute of Architecture of Application Systems Modeling Choreographies: BPMN 2.0 versus BPEL-based Approaches Oliver Kopp, Frank Leymann, Sebastian Wagner Institute of Architecture of Application Systems,

More information

QoS-aware model-driven SOA using SoaML

QoS-aware model-driven SOA using SoaML QoS-aware model-driven SOA using SoaML Niels Schot A thesis submitted for the degree of MSc Computer Science University of Twente EEMCS - TRESE: Software Engineering Group Examination committee: Luís Ferreira

More information

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 Web-Based Applications Using Model Driven Architecture and Domain Specific Languages

Developing Web-Based Applications Using Model Driven Architecture and Domain Specific Languages Proceedings of the 8 th International Conference on Applied Informatics Eger, Hungary, January 27 30, 2010. Vol. 2. pp. 287 293. Developing Web-Based Applications Using Model Driven Architecture and Domain

More information

Distributed systems. Distributed Systems Architectures. System types. Objectives. Distributed system characteristics.

Distributed systems. Distributed Systems Architectures. System types. Objectives. Distributed system characteristics. Distributed systems Distributed Systems Architectures Virtually all large computer-based systems are now distributed systems. Information processing is distributed over several computers rather than confined

More information

1 Software Architecture

1 Software Architecture Some buzzwords and acronyms for today Software architecture Design pattern Separation of concerns Single responsibility principle Keep it simple, stupid (KISS) Don t repeat yourself (DRY) Don t talk to

More information

Supporting the Workflow Management System Development Process with YAWL

Supporting the Workflow Management System Development Process with YAWL Supporting the Workflow Management System Development Process with YAWL R.S. Mans 1, W.M.P. van der Aalst 1 Department of Mathematics and Computer Science, Eindhoven University of Technology, P.O. ox 513,

More information

Software Architecture Recovery based on Dynamic Analysis

Software Architecture Recovery based on Dynamic Analysis Software Architecture Recovery based on Dynamic Analysis Aline Vasconcelos 1,2, Cláudia Werner 1 1 COPPE/UFRJ System Engineering and Computer Science Program P.O. Box 68511 ZIP 21945-970 Rio de Janeiro

More information

A Technical Comparison of XPDL, BPML and BPEL4WS

A Technical Comparison of XPDL, BPML and BPEL4WS A Technical Comparison of XPDL, BPML and BPEL4WS Robert Shapiro 1 Introduction XML-based business process languages represent a new approach to expressing abstract and executable processes that address

More information

Service Oriented Architectures Visions Concepts Reality

Service Oriented Architectures Visions Concepts Reality Service Oriented Architectures Visions Concepts Reality CSC March 2006 Alexander Schatten Vienna University of Technology Vervest und Heck, 2005 A Service Oriented Architecture enhanced by semantics, would

More information

Transformation of analysis model to design model

Transformation of analysis model to design model 2010 International Conference on E-business, Management and Economics IPEDR vol.3 (2011) (2011) IACSIT Press, Hong Kong Transformation of analysis model to design model Lalji Prasad Truba College of Engineering

More information

Goals of the BPEL4WS Specification

Goals of the BPEL4WS Specification Goals of the BPEL4WS Specification Frank Leymann, Dieter Roller, and Satish Thatte This note aims to set forward the goals and principals that formed the basis for the work of the original authors of the

More information

Geoffrey Fox Community Grids Laboratory Indiana University

Geoffrey Fox Community Grids Laboratory Indiana University s of s of Simple Geoffrey Fox Community s Laboratory Indiana University gcf@indiana.edu s Here we propose a way of describing systems built from Service oriented s in a way that allows one to build new

More information

Linking ITSM and SOA a synergetic fusion

Linking ITSM and SOA a synergetic fusion Linking ITSM and SOA a synergetic fusion Dimitris Dranidis dranidis@city.academic.gr CITY College, Computer Science Department South East European Research Centre (SEERC) CITY College CITY College Founded

More information

Quality-Driven Architecture Design Method

Quality-Driven Architecture Design Method Quality-Driven Architecture Design Method Matinlassi Mari, Niemelä Eila P.O. Box 1100, 90571 Oulu Tel. +358 8 551 2111 Fax +358 8 551 2320 {Mari.Matinlassi, Eila.Niemela}@vtt.fi Abstract: In this paper

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

Design Patterns for Description-Driven Systems

Design Patterns for Description-Driven Systems Design Patterns for Description-Driven Systems N. Baker 3, A. Bazan 1, G. Chevenier 2, Z. Kovacs 3, T Le Flour 1, J-M Le Goff 4, R. McClatchey 3 & S Murray 1 1 LAPP, IN2P3, Annecy-le-Vieux, France 2 HEP

More information

An Introduction to Software Architecture

An Introduction to Software Architecture An Introduction to Software Architecture Software Engineering Design Lecture 11 Motivation for studying SW architecture As the size of SW systems increases, the algorithms and data structures of the computation

More information

INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2

INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2 INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2 1 Faculty of Sciences, Lebanese University 2 LINA Laboratory, University of Nantes ABSTRACT:

More information

Wang Jian, He Keqing, SKLSE, Wuhan University, China

Wang Jian, He Keqing, SKLSE, Wuhan University, China Discussion about MFI-7: Metamodel for Service Registration i Wang Jian, He Keqing, He Yangfan, Wang Chong SKLSE, Wuhan University, China 2009.8.21 21 Background Content of MFI-7 Future Work Outline Background

More information

A Taxonomy of Variability in Web Service Flows

A Taxonomy of Variability in Web Service Flows A Taxonomy of Variability in Web Service Flows Sergio Segura, David Benavides, Antonio Ruiz-Cortés and Pablo Trinidad Department of Computer Languages and Systems University of Seville email:{segura, benavides,

More information

Distributed Systems Architectures. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 1

Distributed Systems Architectures. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 1 Objectives To explain the advantages and disadvantages of different distributed systems architectures

More information

Application Architectures, Design Patterns

Application Architectures, Design Patterns Application Architectures, Design Patterns Martin Ledvinka martin.ledvinka@fel.cvut.cz Winter Term 2017 Martin Ledvinka (martin.ledvinka@fel.cvut.cz) Application Architectures, Design Patterns Winter Term

More information

Service Referrals in BPEL-based Choreographies

Service Referrals in BPEL-based Choreographies Service Referrals in BPEL-based Choreographies Gero Decker 1, Oliver Kopp 2, Frank Puhlmann 1 1 Hasso Plattner Institut, University of Potsdam, Germany {gero.decker,frank.puhlmann}@hpi.uni-potsdam.de 2

More information

An Introduction to Software Architecture

An Introduction to Software Architecture An Introduction to Software Architecture Software Requirements and Design CITS 4401 Lecture 11 Motivation for studying SW architecture As the size of SW systems increase, the algorithms and data structures

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecturer: Raman Ramsin Lecture 20: GoF Design Patterns Creational 1 Software Patterns Software Patterns support reuse of software architecture and design. Patterns capture the static

More information

Concurrent Object-Oriented Development with Behavioral Design Patterns

Concurrent Object-Oriented Development with Behavioral Design Patterns Concurrent Object-Oriented Development with Behavioral Design Patterns Benjamin Morandi 1, Scott West 1, Sebastian Nanz 1, and Hassan Gomaa 2 1 ETH Zurich, Switzerland 2 George Mason University, USA firstname.lastname@inf.ethz.ch

More information

Design Patterns. Observations. Electrical Engineering Patterns. Mechanical Engineering Patterns

Design Patterns. Observations. Electrical Engineering Patterns. Mechanical Engineering Patterns Introduction o to Patterns and Design Patterns Dept. of Computer Science Baylor University Some slides adapted from slides by R. France and B. Tekinerdogan Observations Engineering=Problem Solving Many

More information

Guarded Operations, Refinement and Simulation

Guarded Operations, Refinement and Simulation Guarded Operations, Refinement and Simulation Steve Reeves and David Streader Department of Computer Science University of Waikato Hamilton, New Zealand stever,dstr@cs.waikato.ac.nz Abstract Simulation

More information

Executing Evaluations over Semantic Technologies using the SEALS Platform

Executing Evaluations over Semantic Technologies using the SEALS Platform Executing Evaluations over Semantic Technologies using the SEALS Platform Miguel Esteban-Gutiérrez, Raúl García-Castro, Asunción Gómez-Pérez Ontology Engineering Group, Departamento de Inteligencia Artificial.

More information

Australian Journal of Basic and Applied Sciences

Australian Journal of Basic and Applied Sciences ISSN:1991-8178 Australian Journal of Basic and Applied Sciences Journal home page: www.ajbasweb.com Service Computing 1 Dr. M. Thiyagarajan, 2 Chaitanya Krishnakumar, 3 Dr. V. Thiagarasu 1 Professor Emeritus

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

Software Design COSC 4353/6353 DR. RAJ SINGH

Software Design COSC 4353/6353 DR. RAJ SINGH Software Design COSC 4353/6353 DR. RAJ SINGH Outline What is SOA? Why SOA? SOA and Java Different layers of SOA REST Microservices What is SOA? SOA is an architectural style of building software applications

More information

RM-ODP: The ISO Reference Model for Open Distributed Processing

RM-ODP: The ISO Reference Model for Open Distributed Processing RM-ODP: The ISO Reference Model for Open Distributed Processing Antonio Vallecillo ETSI Informática. Universidad de Málaga av@lcc.uma.es 1. Introduction As software technology becomes a core part of business

More information

1 Version management tools as a basis for integrating Product Derivation and Software Product Families

1 Version management tools as a basis for integrating Product Derivation and Software Product Families 1 Version management tools as a basis for integrating Product Derivation and Software Product Families Jilles van Gurp, Christian Prehofer Nokia Research Center, Software and Application Technology Lab

More information

The Open Group SOA Ontology Technical Standard. Clive Hatton

The Open Group SOA Ontology Technical Standard. Clive Hatton The Open Group SOA Ontology Technical Standard Clive Hatton The Open Group Releases SOA Ontology Standard To Increase SOA Adoption and Success Rates Ontology Fosters Common Understanding of SOA Concepts

More information

Towards Software Architecture at Runtime

Towards Software Architecture at Runtime Towards Software Architecture at Runtime Authors Names Department of Computer Science and Technology Peking University, Beijing, PRC, 100871 +86 10 62757801-1 { @ cs.pku.edu.cn 1. Introduction Abstract

More information

Part II Black-Box Composition Systems 10. Business Components in a Component-Based Development Process

Part II Black-Box Composition Systems 10. Business Components in a Component-Based Development Process Part II Black-Box Composition Systems 10. Business Components in a Component-Based Development Process 1. Business component model of the Cheesman/ Daniels process 2. Identifying business components Prof.

More information

A Framework for Reliability Assessment of Software Components

A Framework for Reliability Assessment of Software Components A Framework for Reliability Assessment of Software Components Rakesh Shukla, Paul Strooper, and David Carrington School of Information Technology and Electrical Engineering, The University of Queensland,

More information

Issues on Decentralized Consistency Checking of Multi-lateral Collaborations

Issues on Decentralized Consistency Checking of Multi-lateral Collaborations Issues on Decentralized Consistency Checking of Multi-lateral Collaborations Andreas Wombacher University of Twente Enschede The Netherlands a.wombacher@utwente.nl Abstract Decentralized consistency checking

More information

SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A

SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A 1. What is an object? An object is a combination of data and logic; the representation of some realworld

More information

A Comparison of Service-oriented, Resource-oriented, and Object-oriented Architecture Styles

A Comparison of Service-oriented, Resource-oriented, and Object-oriented Architecture Styles A Comparison of Service-oriented, Resource-oriented, and Object-oriented Architecture Styles Jørgen Thelin Chief Scientist Cape Clear Software Inc. Abstract The three common software architecture styles

More information

ISO/IEC/ IEEE INTERNATIONAL STANDARD. Systems and software engineering Architecture description

ISO/IEC/ IEEE INTERNATIONAL STANDARD. Systems and software engineering Architecture description INTERNATIONAL STANDARD ISO/IEC/ IEEE 42010 First edition 2011-12-01 Systems and software engineering Architecture description Ingénierie des systèmes et des logiciels Description de l'architecture Reference

More information

Semantic Web Services for Satisfying SOA Requirements

Semantic Web Services for Satisfying SOA Requirements Semantic Web Services for Satisfying SOA Requirements Sami Bhiri 1, Walid Gaaloul 1, Mohsen Rouached 2, and Manfred Hauswirth 1 1 Digital Enterprise Research Institute (DERI), National University of Ireland,

More information

BPEL Research. Tuomas Piispanen Comarch

BPEL Research. Tuomas Piispanen Comarch BPEL Research Tuomas Piispanen 8.8.2006 Comarch Presentation Outline SOA and Web Services Web Services Composition BPEL as WS Composition Language Best BPEL products and demo What is a service? A unit

More information

JOURNAL OF OBJECT TECHNOLOGY

JOURNAL OF OBJECT TECHNOLOGY JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2002 Vol. 1, no. 4, September-October 2002 Requirements Engineering Donald G. Firesmith, Firesmith

More information

Canica: An IDE for the Java Modeling Language

Canica: An IDE for the Java Modeling Language Canica: An IDE for the Java Modeling Language Angelica B. Perez, Yoonsik Cheon, and Ann Q. Gates TR #06-36 August 2006 Keywords: Integrated development environment, specification tool, programming tool,

More information

Semantic Web Services and Cloud Platforms

Semantic Web Services and Cloud Platforms Semantic Web Services and Cloud Platforms Lecture 10: Mobile Applications and Web Services module Payam Barnaghi Institute for Communication Systems (ICS) Faculty of Engineering and Physical Sciences University

More information

Business Process Modeling. Version 25/10/2012

Business Process Modeling. Version 25/10/2012 Business Process Modeling Version 25/10/2012 Maurizio Morisio, Marco Torchiano, 2012, 2013 3 BP Aspects Process flow Process modeling UML Activity Diagrams BPMN Information Conceptual modeling UML Class

More information

City, University of London Institutional Repository

City, University of London Institutional Repository City Research Online City, University of London Institutional Repository Citation: Foster, H. & Spanoudakis, G. (2012). Taming the cloud: Safety, certification and compliance for software services - Keynote

More information

Mae A System Model and Environment for Managing Architectural Evolution

Mae A System Model and Environment for Managing Architectural Evolution Mae Mae A System Model and Environment for Managing Architectural Evolution Roshanak Roshandel roshande@usc.edu USC-CSE Annual Research Review March 2003 1 Motivation Architecture-based software development

More information

On Capturing Process Requirements of Workflow Based Business Information Systems *

On Capturing Process Requirements of Workflow Based Business Information Systems * On Capturing Process Requirements of Workflow Based Business Information Systems * Wasim Sadiq and Maria E. Orlowska Distributed Systems Technology Centre Department of Computer Science & Electrical Engineering

More information

VALIDATION LED DEVELOPMENT OF OBJECT-ORIENTED SOFTWARE USING A MODEL VERIFIER

VALIDATION LED DEVELOPMENT OF OBJECT-ORIENTED SOFTWARE USING A MODEL VERIFIER VALIDATION LED DEVELOPMENT OF OBJECT-ORIENTED SOFTWARE USING A MODEL VERIFIER Simon Stanton School of Computing, University of Tasmania Private Box 100, Hobart 7001 Australia sstanton@postoffice.utas.edu.au

More information

USING THE BUSINESS PROCESS EXECUTION LANGUAGE FOR MANAGING SCIENTIFIC PROCESSES. Anna Malinova, Snezhana Gocheva-Ilieva

USING THE BUSINESS PROCESS EXECUTION LANGUAGE FOR MANAGING SCIENTIFIC PROCESSES. Anna Malinova, Snezhana Gocheva-Ilieva International Journal "Information Technologies and Knowledge" Vol.2 / 2008 257 USING THE BUSINESS PROCESS EXECUTION LANGUAGE FOR MANAGING SCIENTIFIC PROCESSES Anna Malinova, Snezhana Gocheva-Ilieva Abstract:

More information

Process Modelling using Petri Nets

Process Modelling using Petri Nets Process Modelling using Petri Nets Katalina Grigorova Abstract: This paper discusses the reasons, which impose Petri nets as a conceptual standard for modelling and analysis of workflow. Petri nets notation

More information

Chapter 13: Architecture Patterns

Chapter 13: Architecture Patterns Chapter 13: Architecture Patterns SAiP Chapter 13 J. Scott Hawker/R. Kuehl p. 1 Len Bass, Paul Clements, Rick Kazman, Topics What is a Pattern? Pattern Catalog Module patterns Component and Connector Patterns

More information

Global Reference Architecture: Overview of National Standards. Michael Jacobson, SEARCH Diane Graski, NCSC Oct. 3, 2013 Arizona ewarrants

Global Reference Architecture: Overview of National Standards. Michael Jacobson, SEARCH Diane Graski, NCSC Oct. 3, 2013 Arizona ewarrants Global Reference Architecture: Overview of National Standards Michael Jacobson, SEARCH Diane Graski, NCSC Oct. 3, 2013 Arizona ewarrants Goals for this Presentation Define the Global Reference Architecture

More information

Managing Learning Objects in Large Scale Courseware Authoring Studio 1

Managing Learning Objects in Large Scale Courseware Authoring Studio 1 Managing Learning Objects in Large Scale Courseware Authoring Studio 1 Ivo Marinchev, Ivo Hristov Institute of Information Technologies Bulgarian Academy of Sciences, Acad. G. Bonchev Str. Block 29A, Sofia

More information

A graphical user interface for service adaptation

A graphical user interface for service adaptation A graphical user interface for service adaptation Christian Gierds 1 and Niels Lohmann 2 1 Humboldt-Universität zu Berlin, Institut für Informatik, Unter den Linden 6, 10099 Berlin, Germany gierds@informatik.hu-berlin.de

More information

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI Department of Computer Science and Engineering IT6801 - SERVICE ORIENTED ARCHITECTURE Anna University 2 & 16 Mark Questions & Answers Year / Semester: IV /

More information

An Introduction to Software Architecture By David Garlan & Mary Shaw 94

An Introduction to Software Architecture By David Garlan & Mary Shaw 94 IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion An Introduction to

More information

Object Oriented Programming

Object Oriented Programming Unit 19: Object Oriented Unit code: K/601/1295 QCF Level 4: BTEC Higher National Credit value: 15 Aim To provide learners with an understanding of the principles of object oriented programming as an underpinning

More information

Semantic SOA - Realization of the Adaptive Services Grid

Semantic SOA - Realization of the Adaptive Services Grid Semantic SOA - Realization of the Adaptive Services Grid results of the final year bachelor project Outline review of midterm results engineering methodology service development build-up of ASG software

More information

Chapter 8 Web Services Objectives

Chapter 8 Web Services Objectives Chapter 8 Web Services Objectives Describe the Web services approach to the Service- Oriented Architecture concept Describe the WSDL specification and how it is used to define Web services Describe the

More information

Digital Archives: Extending the 5S model through NESTOR

Digital Archives: Extending the 5S model through NESTOR Digital Archives: Extending the 5S model through NESTOR Nicola Ferro and Gianmaria Silvello Department of Information Engineering, University of Padua, Italy {ferro, silvello}@dei.unipd.it Abstract. Archives

More information

MASSiVE, Unità di Torino

MASSiVE, Unità di Torino MASSiVE, Unità di Torino Personalization, verification and conformance for logic-based communicating agents M. Baldoni, C. Baroglio, A. Martelli, V. Mascardi, V. Patti, C. Schifanella, L. Torasso 1 Main

More information

Preserving Rich User Interface State in Web Applications across Various Platforms

Preserving Rich User Interface State in Web Applications across Various Platforms Preserving Rich User Interface State in Web Applications across Various Platforms Fabio Paternò, Carmen Santoro, and Antonio Scorcia ISTI-CNR, Via G. Moruzzi, 1 56124 Pisa, Italy {Fabio.Paterno,Carmen.Santoro,Antonio.Scorcia}@isti.cnr.it

More information