Modeling Coordination as Resource Flow: An Object-Based Approach
|
|
- Oswin Fox
- 8 years ago
- Views:
Transcription
1 Modeling Coordination as Resource Flow: An Object-Based Approach John Noll Computer Engineering Department Santa Clara University 500 El Camino Real Santa Clara, CA Bryce Billinger Avaya Inc. Denver, CO Abstract Workflow management systems provide guidance to individuals performing tasks in an organization. This is typically achieved via a central workflow engine that executes descriptions of organizational processes in order to guide and coordinate activities of individuals in the organization. In this paper, we present a process modeling approach in which processes are modeled as independent process fragments that represent activities performed by a single actor. Each fragment is a specification of the control flow from one activity to the next, that leads to the completion of a task. Coordination among concurrent activities performed by different actors is modeled as resource flow: dependencies among coordinated activities are represented by the resources shared by concurrent activities. This allows processes performed by autonomous process performers distributed across a network to be coordinated without sacrificing individual autonomy. Keywords: Workflow Modeling, Cooperative Work Support, Coordination, Software Process Modeling 1 Introduction Workflow is the automation of a business process, in whole or part, during which documents, information or tasks are passed from one participant to another for action, according to a set of procedural rules. [1] Workflow management systems provide active guidance, by providing prompts, instructions, and supporting documents, to individual actors performing tasks in processes. Initially, this was achieved by delivering documents to actors via or other electronic means, hence the name workflow ; in this case the routing of documents from actor to actor is specified by a simple, sequential process specification. Contemporary workflow systems can execute more complex processes than simple sequential workflows. These processes may involve iteration over a sequence of tasks, branching, and concurrent activities performed by multiple actors. The process descriptions are thus more complex, requiring specification of coordination and synchronization among concurrent activities, as well as both flow of control. The conventional model of a workflow system is based on a client-server architecture. A central workflow engine executes process descriptions to support the activities of actors that interact with the engine through client interfaces such as web-browsers or task-specific tools. As a centralized resource with global visibility of an organization s active processes, the workflow engine can coordinate the activities of each actor in relation to other actors, thus supporting collaboration and cooperation. A a database management system is often employed to manage the data produced and modified by the processes, and the data about the processes themselves. The advantages of this approach include synchronization of modifications to documents by concurrent activities, and the ability to perform queries over the entire set of currently active processes. This model has been employed to great success in workflow systems to support the business processes of companies and organizations. However, this model assumes all of an organization s processes are managed by the workflow engine (or set of engines), all documents are accessible to the engine and clients, and that all actors are connected to the engine through a client interface. Thus, the conventional client-server model presents obstacles when documents or actors involved in a processes are distributed in autonomous locations. In such cases, a central engine cannot control access to documents: this is the responsibility of the repository that contains the document (or other artifact). Similarly, the engine cannot support coordination based on the flow of control among the various activities, since this would require autonomous actors to submit to a
2 global control authority. For example, open source software development can involve the concurrent activities of a large number of people working on a set of shared artifacts. However, each person is an independent, autonomous actor who performs work voluntarily, according to his or her abilities and resources. While they share a common goal, and may have well defined processes, each actor works independently without direction of a central authority. However, these actors could benefit from the kind of guidance and coordination support that workflow management systems provide. In this paper, we present a process modeling approach that enables processes to be modeled as independent process fragments that represent activities performed by a single actor. Each fragment is a specification of the control flow from one activity to the next, that leads to the completion of a task. Coordination among concurrent activities performed by different actors is modeled as resource flow: dependencies among coordinated activities are represented by the resources shared by concurrent activities. 2 Approach Our goal is to model both control flow and coordination with one simple, straightforward process modeling language. Our approach is based on the process programming concept [9]: processes are modeled using a process programming language, called PML, that resembles a conventional programming language in many ways. PML models control flow using familiar programming language constructs such as iteration, selection, and branching. Processes in PML are modeled as sequences of actions. Actions are the atomic activities of a process. Control constructs allow actions to be combined into tasks, which are linear sequences of actions; iterations, that specify a sequence of actions to be repeated; branches, specifying sequences of actions that can be performed concurrently; and selections indicating a choice of one of several possible actions. An example is shown in Figure 2. This is a PML description of a simple software development process depicted in Figure Coordination and Resource Flow The key to our approach is the observation that products are produced and consumed by concurrent activities. This is depicted in Figure 2.1. This figure shows the example process from Figure 2, augmented with important resources that are produced and used by some of the process activities. Note process example { action Analyze { branch { sequence code { action Design { action Implement { action Compile { action Debug { action Commit { sequence test { action WriteTestPlan { action WriteTests { action RunTests { Figure 1: Development Process in PML that these resource flows mimic the temporal dependencies among the tasks that produce and consume them. For example, the Analyze activity has a temporal precedence to the Design and Write test plan activities. These are represented by the solid arrows. The analysis product also flows from the Analyze task to both the Design and Write test plan activities. Similarly, the Commit task has a precedence relationship to the Run tests task, which is also reflected in the flow of the code resource. These resource flows are significant because they can be used to coordinate activities when the explicit temporal relationships are removed from the process model. Suppose, for example, that the actors tasked with performing this process are widely distributed across the world: the Analyst is in Chicago, the Programmer in Hong Kong, and the Tester in India. It would still be possible for the process to be executed by a central workflow engine, with each actor connecting to the engine from a client interface or Web browser. However, they would be subject to disruptions caused by network partitions, server maintenance, and other interruptions in service. Further, if the actors belong to different organizations, there may be issues of autonomy that would prevent their subjecting to a central administration. If we remove the explicit control flow relationships that are reflected in resource relationships, we can partition the model into process fragments that can be performed by a single actor, independently of other actors, yet in coordination with there activities. Figure 2.1 depicts this decomposition. The process has been divided
3 Design Implement Debug Commit Analyze (Analyst) Write Plan Write Tests Run Tests Figure 2: A Simple Software Development Process. Design Implement Debug Commit code Analyze (Analyst) analysis Write Plan Write Tests Run Tests Figure 3: Resource Flow process example { action Analyze { provides { analysis... action Design { requires { analysis provides { design Figure 5: Modeling Resource Flow into three fragments, each associated with one of the three actors in the original model (Analyst, Programmer, Test Engineer). We add constructs to PML to specify pre- and postconditions on the state of resources (documents, data, and other artifacts) that are produced and consumed by activities in a process. The result is a process modeling language that models both resource flow and control flow. A generic object model is used to represent the artifacts and deliverables in a process. Each action may have requires and provides clauses. These specify preand post-conditions surrounding the performance of an action. The requires clause specifies the resources that are required by the action; the provides clause specifies the state these resources will in when the action is completed. The syntax for the object model is of the form object name.attribute. A unique object name specifies an object within the process. The format for the requires and provides clauses are in the form clause object name.attribute op value. Figure 2.1 shows a part the PML specification of Figure 2 augmented with requires and provides predicates. In this figure, the provides predicate of the Analyze action specifies that an analysis object (in this case, a document) will be produced by the Analyze activity. The requires predicate of the Design action specifies that an analysis document is required by this activity before it can be begin; the Design activity produces a design object, as specified by its provides predicate. 2.2 Process Enactment Operating System The Process Enactment Operating System (PEOS) is the engine for executing PML process descriptions. PEOS comprises several components, as shown in Figure 2.2. The virtual machine is the core of the system, responsible for executing compiled PML process descriptions. The virtual machine is a stack based interpreter that runs a PML compiled program and computes which actions are available at any given time. The kernel provides an interface to the outside environment for the virtual machine. It acts as an event dispatcher, for events submitted by actors, and events resulting from changes to objects required by processes under execution. It does this by executing queries to the various
4 Design Implement Debug Commit code Analyze (Analyst) analysis Write Plan Write Tests Run Tests Figure 4: Process Fragments User Interface Tools Resources User Interface process events resource create/update Resource I/F CVS WWW resource events File System Process Core Kernel resource events Active Process Repository Figure 6: PEOS Architecture process state Virtual Machine process models Process Model Repository storage managers and repositories where resources are stored. These queries are simply compiled forms of the provides and requires predicates in a PML specification. Thus, if an action requires an object, and the artifact the object is bound to does not exist, the virtual machine will block execution of the process containing the action until the object (artifact) exists. Each actor in deploys a copy of PEOS to support his own processes. These copies monitor the environment for changes in resource state, in order to coordinate the activities of actors with other actors. The resulting enactment environment is depicted in Figure 2.2. In this figure, the Analyst runs an instance of the Analyze process to create a new analysis document, which he posts to a web site for distribution to other interested parties. This creation event (step 2) is detected by the Programmer s PEOS engine (step 3); this triggers the creation of an instance of the Design and Implement process (step 4) on the Programmer s behalf. After completing the Commit action (step 5), a modification event (step 6) is detected by the Test Engineer s PEOS engine, which creates an instance of the Test process (step 7). 3 Related Work Process modeling approaches can be divided into four main categories, based on the control-flow model used. 3.1 Procedural Control Flow Procedural modeling approaches resemble high-level programming languages; some are even based on programming languages. For example, APPL/A [11] extends the ADA programming language with constructs specific to process and coordination modeling. One of the main differences among procedural modeling languages is the fact that they depend on specific types of repositories. JIL is closely associated with the Pleiades object management system [12]. In MVP-L, a relational database is used to store product (artifact) objects [4]. In APPL/A, the repository used is Triton, a persistent object system built on top of the EXODUS storage manager [11]. The resource model for all of these examples is dependent on the specific object manager. Thus, the resource model is tightly coupled to its underlying implementation. This makes the coordination of users crosses boundaries, such as a organizations or network difficult. A rule-based control flow model comes from rule based programming languages. Rule-based models logical statements to determine which actions can be executed at any given time. The Merlin project is based on PROLOG and uses these rules to model processes [7]. Marvel also uses rules to model processes, with a object-oriented database in the back-end to keep the data [3]. A rule-based modeling language is a very powerful way to model processes; however, because the sequence of activities is not explicitly represented, rulebased models can be difficult to understand. The graph-based process models represent the relationships among activities and resources with graphs. The Petri Net is one of the most used graph-based modeling examples. The projects SPADE/SLANG and
5 1: run Analysis_proc() 3: notify(analysis) Web Server SCCS 4: run Design_proc(analysis) Programmer 5: commit(code) 7: run Test_proc(code) Analyst 2: create(analysis) 6: notify(code) Test Engineer Figure 7: Distributed Workflow Execution PROMO are based on Petri-Nets [2, 6]. The benefit of graph-based models is they are a close match to the conceptual notion of a process as a sequence of activities, and are thus easy to create and understand. The graphbased control flow model is the closest model to the procedural model. While graph-based models may be easy to read and understand, their flaw is they are not as powerful as other process models. Because graphbased models do not have all of the capabilities as other process modeling languages. Agent-based process modeling is a radically different approach to modeling process flow. An agent is a program that is design to make an intelligent decision of what to do next based on its current state. Agents can be distributed and can act independently of other agents. In agent-base workflow, agents are given goals that conform to the objectives of the overall process; they then develop a work plan to achieve those goals. For example, the DartFlow project uses the World Wide Web and transportable agents to model process flow [5]. The Agent-based Process Management System (APMS) and the METEOR project use agents as a framework for workflow management [8, 10]. The work with agents has tended toward addressing control flow and has separated the data and resources from the model. The separation is due to the fact that agent-based models are focused on a process state and not the process model. For agent-based processes, the process model can be an ever changing model. The agent should be able to use the process state and the current environment, such as a process model, to intelligently determine the next state. 4 Conclusion We have described a process modeling approach that combines the advantages of procedural process descriptions with the ability to decouple concurrent activities so they can be distributed among independent, autonomous actors. This approach has several benefits. Using this approach, no direct communication is required between coordinated instances of execution engines; coordination is achieved by indirect communication through the resources shared among the concurrent activities. This means that an actor can even coordinate with another actor that is not following an explicit process, as long as the resources produced or modified by that are accessible. Also, products and other artifacts involved in the process are accessed from their native storage managers, making it possible for PEOS to co-exist with legacy systems, and to enact processes that cross organizational as well as geographic boundaries. Finally, because each actor runs a separate copy of the execution engine, PEOS maintains complete autonomy of participating individuals.
6 References [1] Rob Allen. Workflow: An Introduction. [2] S. Bandinelli, A. Fugetta, C. Ghezzi, and L. Lavazza. SPADE: AN Environment for Software Process Analysis, Design, and Enactment. Research Studies Press Limited, [3] Israel Z. Ben-Shaul, Gail E. Kaiser, and G. Heineman. An architecture for multi-user software development environments. Computing Systems, the Journal of the USENIX Association, 6(2):65 103, [4] C. Brockers, C. Lott, H. D. Rombach, and M. Verlage. MVP-L language report version 2. Technical report, University of Kaiserslautern, February [5] Ting Cai, Peter Gloor, and Saurab Nog. Dart- Flow: A workflow management system on the web using transportable agents. Technical Report PCS-TR96-283, Department of Computer Science, Dartmouth College, [6] John C. Doppke. Software process modeling and execution withing virtual environments. ACM Transactions on Software Engineering and Methodology, 7(1):1 40, January [7] G. Junkermann, B. Peuschel, W. Schafer, and S. Wolf. MERLIN: Supporting Cooperation in Software Development through a Knowledgebased Environment. John Wiley, [8] P. D. O Brien and M. E. Wiegand. Agent based process management: applying intelligent agents to workflow. Knowledge Engineering Review, 13(2), September [9] Leon Osterweil. Software processes are software too. In Proceedings of the 9th International Conference on Software Engineering, Monterey, CA USA, March [10] Amit Sheth. METEOR: Brief overview. Technical report, Large Scale Distributed Information Systems Lab, University of Georgia, and Infocosm, Inc. [11] Stanley M. Sutton, Dennis M. Heimbigner, and Leon J. Osterweil. Language constructs for managing change in process-centered environments. pages , Irvine, CA, December [12] Stanley M. Sutton Jr., Barbara Staudt Lerner, and Leon J. Osterweil. Experience using the JIL process programming language to specify design processes. Technical report, Computer Science Department, University of Massachusetts, Amherst, September A Example Process Specification process example { action Analyze { provides { analysis branch { sequence code { action Design { requires { analysis provides { design action Implement { requires { design provides { code action Compile { requires { code provides { code.status == compiled action Debug { requires { code.status == compiled provides { code.status == complete action Commit { requires { code.status == complete provides { code.status == committed sequence test { action WriteTestPlan { requires { analysis provides { test_plan action WriteTests { requires { test_plan provides { test_suite action RunTests { requires { test_suite && code provides { code.status == tested
PROCESS STATE INFERENCE FOR SUPPORT OF KNOWLEDGE INTENSIVE WORK
PROCESS STATE INFERENCE FOR SUPPORT OF KNOWLEDGE INTENSIVE WORK John Noll Computer Engineering Department Santa Clara University 500, El Camino Real, Santa Clara, CA-95053, USA. email: jnoll@cse.scu.edu
More informationSoftware, Process, Business Process and Software Process
Software, Process, Business Process and Software Process Tao Xie Research work was done while being a summer intern at Software Technology Research Department Avaya Labs Research Outline Process Conceptual
More informationDo Process-Centred Environments Deserve Process-Centred Tools? Wolfgang Emmerich and Anthony Finkelstein Dept. of Computer Science, The City University, Northampton Square, London EC1V 0HB, UK femmerich
More informationCoordinating Management Activities in Distributed Software Development Projects *
Coordinating Management Activities in Distributed Software Development Projects * Fawsy Bendeck, Sigrid Goldmann, Harald Holz, Boris Kötting 1 AG Expert Systems, University of Kaiserslautern, Postfach
More informationProcess-centered Knowledge Organization for Software Engineering
Process-centered Knowledge Organization for Software Engineering Frank Maurer University of Calgary Department of Computer Science Calgary, Alberta, Canada, T2N 1N4 maurer@cpsc.ucalgary.ca Harald Holz
More informationService 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 informationWorkflow Automation and Management Services in Web 2.0: An Object-Based Approach to Distributed Workflow Enactment
Workflow Automation and Management Services in Web 2.0: An Object-Based Approach to Distributed Workflow Enactment Peter Y. Wu wu@rmu.edu Department of Computer & Information Systems Robert Morris University
More informationDecomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces
Software Engineering, Lecture 4 Decomposition into suitable parts Cross cutting concerns Design patterns I will also give an example scenario that you are supposed to analyse and make synthesis from The
More informationTask Coordination and Allocation Assistant
Task Coordination and Allocation Assistant Project Proposal David K.M. Mak University of British Columbia Vancouver, Canada Table of Contents 1.0 Introduction...3 2.0 Problem Statement...3 2.1 Current
More informationUsing UML Part Two Behavioral Modeling Diagrams
UML Tutorials Using UML Part Two Behavioral Modeling Diagrams by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page 1 Trademarks Object Management Group, OMG, Unified Modeling Language,
More informationObjectives. Distributed Databases and Client/Server Architecture. Distributed Database. Data Fragmentation
Objectives Distributed Databases and Client/Server Architecture IT354 @ Peter Lo 2005 1 Understand the advantages and disadvantages of distributed databases Know the design issues involved in distributed
More informationThe Service Revolution software engineering without programming languages
The Service Revolution software engineering without programming languages Gustavo Alonso Institute for Pervasive Computing Department of Computer Science Swiss Federal Institute of Technology (ETH Zurich)
More informationAspects of Lyee Configuration Management
Aspects of Lyee Configuration Management Volker GRUHN, Raschid IJIOUI, Dirk PETERS, Robert QUECK, Clemens SCHÄFER Chair for Applied Telematics / e-business, Universität Leipzig, Klostergasse 3, D-04109
More informationEnterprise 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 informationA Meta-Model for Distributed Software Development
A Meta-Model for Distributed Software Development Sigrid Goldmann, Jürgen Münch, Harald Holz Universität Kaiserslautern, Postfach 3049, 67653 Kaiserslautern, Germany {sigig, muench, holz}@informatik.uni-kl.de
More informationOn Engineering Web-based Enterprise Applications
On Engineering Web-based Enterprise Applications Srinivasa Narayanan, Subbu N. Subramanian, Manish Arya, and the Tavant Team Tavant Technologies 3101 Jay Street, Santa Clara, CA 95054 USA {srinivas.narayanan,
More informationMicrosoft Dynamics CRM 2015 with NetScaler for Global Server Load Balancing
Microsoft Dynamics CRM 2015 with NetScaler for Global Server Load Balancing Solution Guide This solution guide focuses on defining the deployment process for Microsoft Dynamics CRM with Citrix NetScaler.
More informationIntroduction to Service-Oriented Architecture for Business Analysts
Introduction to Service-Oriented Architecture for Business Analysts This course will provide each participant with a high-level comprehensive overview of the Service- Oriented Architecture (SOA), emphasizing
More informationModeling Workflow Patterns
Modeling Workflow Patterns Bizagi Suite Workflow Patterns 1 Table of Contents Modeling workflow patterns... 4 Implementing the patterns... 4 Basic control flow patterns... 4 WCP 1- Sequence... 4 WCP 2-
More informationGoal-based and Risk-based Creation of Adaptive Workflow Processes
From: AAAI Technical Report SS-00-03. Compilation copyright 2000, AAAI (www.aaai.org). All rights reserved. Goal-based and Risk-based Creation of Adaptive Workflow Processes Dr. N.C. Narendra Software
More informationJohn Noll, Ph.D. Research Associate, ATRIUM Laboratory, Marshall School of Business, University of Southern California,
CURRICULUM VITAE John Noll, Ph.D. Computer Engineering Department, Santa Clara University 500 El Camino Real, Santa Clara, CA 95053-0566 (415) 948-5795 jnoll@cse.scu.edu www.cse.scu.edu/ jnoll Education
More informationBIS 3106: Business Process Management. Lecture Two: Modelling the Control-flow Perspective
BIS 3106: Business Process Management Lecture Two: Modelling the Control-flow Perspective Makerere University School of Computing and Informatics Technology Department of Computer Science SEM I 2015/2016
More information50 Computer Science MI-SG-FLD050-02
50 Computer Science MI-SG-FLD050-02 TABLE OF CONTENTS PART 1: General Information About the MTTC Program and Test Preparation OVERVIEW OF THE TESTING PROGRAM... 1-1 Contact Information Test Development
More informationQuery-Based Approach to Workflow Process Dependency Analysis Technical Report 01 Faculty of Science 2005
Query-Based Approach to Workflow Process Dependency Analysis Technical Report 01 Faculty of Science 2005 Weizhen Dai and H. Dominic Covvey School of Computer Science and the Waterloo Institute for Health
More informationThe Workflow Management Coalition Specification Workflow Management Coalition Terminology & Glossary
The Workflow Management Coalition Specification Workflow Management Coalition Terminology & Glossary Workflow The automation of a business process, in whole or part, during which documents, information
More informationSolutions Guide. Deploying Citrix NetScaler with Microsoft Exchange 2013 for GSLB. citrix.com
Deploying Citrix NetScaler with Microsoft Exchange 2013 for GSLB Table of Contents Introduction 3 Overview of Microsoft Exchange 2013 3 Why NetScaler GSLB for Exchange 2013? 3 Topology 3 Single Namespace
More informationInternet Based Inter-Business Process Management: A Federated Approach
Internet Based Inter-Business Process Management: A Federated Approach Giacomo Piccinelli, Floriana Marcello*, Gabriele Zugliani* Internet Business Management Department HP Laboratories Bristol HPL-98-87
More informationChapter 4 Software Lifecycle and Performance Analysis
Chapter 4 Software Lifecycle and Performance Analysis This chapter is aimed at illustrating performance modeling and analysis issues within the software lifecycle. After having introduced software and
More informationHow To Make Work Coordination More Flexible In A Computer System
Coordinating Distributed Software Development Projects with Integrated Process Modelling and Enactment Environments John Grundy, John Hosking and Rick Mugridge Department of Computer Science University
More informationWhat 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 informationDATABASE SYSTEM CONCEPTS AND ARCHITECTURE CHAPTER 2
1 DATABASE SYSTEM CONCEPTS AND ARCHITECTURE CHAPTER 2 2 LECTURE OUTLINE Data Models Three-Schema Architecture and Data Independence Database Languages and Interfaces The Database System Environment DBMS
More informationDistributed Data Management
Introduction Distributed Data Management Involves the distribution of data and work among more than one machine in the network. Distributed computing is more broad than canonical client/server, in that
More informationNASCIO EA Development Tool-Kit Solution Architecture. Version 3.0
NASCIO EA Development Tool-Kit Solution Architecture Version 3.0 October 2004 TABLE OF CONTENTS SOLUTION ARCHITECTURE...1 Introduction...1 Benefits...3 Link to Implementation Planning...4 Definitions...5
More informationActivity Mining for Discovering Software Process Models
Activity Mining for Discovering Software Process Models Ekkart Kindler, Vladimir Rubin, Wilhelm Schäfer Software Engineering Group, University of Paderborn, Germany [kindler, vroubine, wilhelm]@uni-paderborn.de
More informationWorld Wide Modeling: The agility of the web applied to model repositories
World Wide Modeling: The agility of the web applied to model repositories 1 World Wide Modeling: The agility of the web applied to model repositories Philippe Desfray SOFTEAM R&D Director Modeliosoft Overview
More informationBusiness Process Modeling Information Systems in Industry (372-1-4207 )
Business Process Modeling Information Systems in Industry (372-1-4207 ) Arnon Sturm The material of this presentation is adopted from various people including:, Pnina Soffer, Iris Reinhartz-Berger 1 Outline
More informationMODEL DRIVEN DEVELOPMENT OF BUSINESS PROCESS MONITORING AND CONTROL SYSTEMS
MODEL DRIVEN DEVELOPMENT OF BUSINESS PROCESS MONITORING AND CONTROL SYSTEMS Tao Yu Department of Computer Science, University of California at Irvine, USA Email: tyu1@uci.edu Jun-Jang Jeng IBM T.J. Watson
More informationSERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS
SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) VERSION 2.1 SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS 1 TABLE OF CONTENTS INTRODUCTION... 3 About The Service-Oriented Modeling Framework
More informationArchitecture Design & Sequence Diagram. Week 7
Architecture Design & Sequence Diagram Week 7 Announcement Reminder Midterm I: 1:00 1:50 pm Wednesday 23 rd March Ch. 1, 2, 3 and 26.5 Hour 1, 6, 7 and 19 (pp.331 335) Multiple choice Agenda (Lecture)
More informationContents. 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 informationDesigning Real-Time and Embedded Systems with the COMET/UML method
By Hassan Gomaa, Department of Information and Software Engineering, George Mason University. Designing Real-Time and Embedded Systems with the COMET/UML method Most object-oriented analysis and design
More informationLecture. Process Modeling. Process Modeling Languages. Dr. Jürgen Münch. Contents of the Lecture
Lecture Languages Dr. Jürgen Münch Contents of the Lecture 1. Introduction and Scope 2. Terminology 3. Prescriptive Process Models 4. Descriptive 5. Languages 6. Tools 7. Project Planning 8. Project Monitoring
More informationJOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2008 Vol. 7, No. 8, November-December 2008 What s Your Information Agenda? Mahesh H. Dodani,
More informationInformation 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 informationConfiguration Management Models in Commercial Environments
Technical Report CMU/SEI-91-TR-7 ESD-9-TR-7 Configuration Management Models in Commercial Environments Peter H. Feiler March 1991 Technical Report CMU/SEI-91-TR-7 ESD-91-TR-7 March 1991 Configuration Management
More informationD6 INFORMATION SYSTEMS DEVELOPMENT. SOLUTIONS & MARKING SCHEME. June 2013
D6 INFORMATION SYSTEMS DEVELOPMENT. SOLUTIONS & MARKING SCHEME. June 2013 The purpose of these questions is to establish that the students understand the basic ideas that underpin the course. The answers
More informationSERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED DISCOVERY AND ANALYSIS MODEL LANGUAGE SPECIFICATIONS
SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) VERSION 2.1 SERVICE-ORIENTED DISCOVERY AND ANALYSIS MODEL LANGUAGE SPECIFICATIONS 1 TABLE OF CONTENTS INTRODUCTION... 3 About The Service-Oriented Modeling Framework
More informationCoordinating Distributed Software Development Projects with Integrated Process Modelling and Enactment Environments
Coordinating Distributed Software Development Projects with Integrated Process Modelling and Enactment Environments John Grundy, John Hosking and Rick Mugridge Department of Computer Science University
More informationTeam Collaboration, Version Management, Audit Trails
Team Collaboration, Version Management, Audit Trails Best Practices for Successful Project Delivery with VoiceObjects May 2008 www.voiceobjects.com 2 Team Collaboration, Version Management, Audit Trails
More informationJournal of Information Technology Management SIGNS OF IT SOLUTIONS FAILURE: REASONS AND A PROPOSED SOLUTION ABSTRACT
Journal of Information Technology Management ISSN #1042-1319 A Publication of the Association of Management SIGNS OF IT SOLUTIONS FAILURE: REASONS AND A PROPOSED SOLUTION MAJED ABUSAFIYA NEW MEXICO TECH
More informationIBM WebSphere Operational Decision Management Improve business outcomes with real-time, intelligent decision automation
Solution Brief IBM WebSphere Operational Decision Management Improve business outcomes with real-time, intelligent decision automation Highlights Simplify decision governance and visibility with a unified
More informationFACULTY OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY AUTUMN 2016 BACHELOR COURSES
FACULTY OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY Please note! This is a preliminary list of courses for the study year 2016/2017. Changes may occur! AUTUMN 2016 BACHELOR COURSES DIP217 Applied Software
More informationMICHIGAN TEST FOR TEACHER CERTIFICATION (MTTC) TEST OBJECTIVES FIELD 050: COMPUTER SCIENCE
MICHIGAN TEST FOR TEACHER CERTIFICATION (MTTC) TEST OBJECTIVES Subarea Educational Computing and Technology Literacy Computer Systems, Data, and Algorithms Program Design and Verification Programming Language
More information1. Introduction... 1 1.1. What is Slice?... 1 1.2. Background... 1 1.3. Why Slice?... 1 1.4. Purpose of this Document... 1 1.5. Intended Audience...
Slice Documentation Slice Documentation 1. Introduction... 1 1.1. What is Slice?... 1 1.2. Background... 1 1.3. Why Slice?... 1 1.4. Purpose of this Document... 1 1.5. Intended Audience... 1 2. Features
More informationGuiding Principles for Modeling and Designing Reusable Services
Guiding Principles for Modeling and Designing Reusable Services Max Dolgicer Managing Director International Systems Group, Inc. mdolgicer@isg-inc.com http://www.isg-inc.com Agenda The changing notion
More informationAgile Test Automation
Linda Hayes, Founder, Worksoft Inc. Shoeb Javed, Vice President of Engineering, Worksoft Inc. Contents Executive Summary/Intro...................................... 3 Continuous Integration Environment............................
More informationHow To Develop A Multi Agent System (Mma)
S-Tropos: An Iterative SPEM-Centric Software Project Management Process Yves Wautelet, Manuel Kolp, Youssef Achbany IAG Institut d Administration et de Gestion, ISYS Unité de Systèmes d Information, Université
More informationGlossary of Object Oriented Terms
Appendix E Glossary of Object Oriented Terms abstract class: A class primarily intended to define an instance, but can not be instantiated without additional methods. abstract data type: An abstraction
More informationCASSANDRA: Version: 1.1.0 / 1. November 2001
CASSANDRA: An Automated Software Engineering Coach Markus Schacher KnowGravity Inc. Badenerstrasse 808 8048 Zürich Switzerland Phone: ++41-(0)1/434'20'00 Fax: ++41-(0)1/434'20'09 Email: markus.schacher@knowgravity.com
More informationTowards Collaborative Requirements Engineering Tool for ERP product customization
Towards Collaborative Requirements Engineering Tool for ERP product customization Boban Celebic, Ruth Breu, Michael Felderer, Florian Häser Institute of Computer Science, University of Innsbruck 6020 Innsbruck,
More informationEXHIBIT L. Application Development Processes
EXHIBIT L Application Development Processes Optum Development Methodology Development Overview Figure 1: Development process flow The Development phase consists of activities that include the building,
More informationWorkflow Object Driven Model
Workflow Object Driven Model Włodzimierz Dąbrowski 1,2, Rafał Hryniów 2 Abstract: Within the last decade the workflow management makes an incredible career. Technology connected with the workflow management
More informationA MODERN DISTRIBUTION MANAGEMENT SYSTEM FOR REGIONAL ELECTRICITY COMPANIES
A MODERN DISTRIBUTION MANAGEMENT SYSTEM FOR REGIONAL ELECTRICITY COMPANIES A Roberts, T Berry, W D Wilson Schneider Electric Ltd, UK SYNOPSIS This paper describes the features of a modern Distribution
More informationClassnotes 5: 1. Design and Information Flow A data flow diagram (DFD) is a graphical technique that is used to depict information flow, i.e.
Classnotes 5: 1. Design and Information Flow A data flow diagram (DFD) is a graphical technique that is used to depict information flow, i.e., a representation of information as a continuous flow that
More information1.. This UI allows the performance of the business process, for instance, on an ecommerce system buy a book.
* ** Today s organization increasingly prompted to integrate their business processes and to automate the largest portion possible of them. A common term used to reflect the automation of these processes
More informationSoftware Engineering
Software Engineering Lecture 06: Design an Overview Peter Thiemann University of Freiburg, Germany SS 2013 Peter Thiemann (Univ. Freiburg) Software Engineering SWT 1 / 35 The Design Phase Programming in
More informationCISC 275: Introduction to Software Engineering. Lab 5: Introduction to Revision Control with. Charlie Greenbacker University of Delaware Fall 2011
CISC 275: Introduction to Software Engineering Lab 5: Introduction to Revision Control with Charlie Greenbacker University of Delaware Fall 2011 Overview Revision Control Systems in general Subversion
More informationTo introduce software process models To describe three generic process models and when they may be used
Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software
More informationImplementing a Data Warehouse with Microsoft SQL Server 2012
Course 10777 : Implementing a Data Warehouse with Microsoft SQL Server 2012 Page 1 of 8 Implementing a Data Warehouse with Microsoft SQL Server 2012 Course 10777: 4 days; Instructor-Led Introduction Data
More informationEnriching Software Process Support by Knowledge-based Techniques *
Enriching Software Process Support by Knowledge-based Techniques * Barbara Dellen, Frank Maurer, Jürgen Münch, Martin Verlage + Fachbereich Informatik, Universität Kaiserslautern, Postfach 3049, 67653
More informationProgramming in C# with Microsoft Visual Studio 2010
Introducción a la Programación Web con C# en Visual Studio 2010 Curso: Introduction to Web development Programming in C# with Microsoft Visual Studio 2010 Introduction to Web Development with Microsoft
More informationAcme vs PDDL: support for dynamic reconfiguration of software architectures
Acme vs PDDL: support for dynamic reconfiguration of software architectures Jean-Eudes Méhus, Thais Batista & Jérémy Buisson jean-eudes.mehus@st-cyr.terre-net.defense.gouv.fr thais@dimap.ufrn.br jeremy.buisson@st-cyr.terre-net.defense.gouv.fr
More informationCross Organizational Workflow Management Systems
Cross Organizational Management Systems Venkatesh Patil & Avinash Chaudhari Tata Consultancy Services, India Paper presented at Product Data Technology Europe 2002 At Centro Ricerche Fiat, Turin, Italy
More informationInformation integration platform for CIMS. Chan, FTS; Zhang, J; Lau, HCW; Ning, A
Title Information integration platform for CIMS Author(s) Chan, FTS; Zhang, J; Lau, HCW; Ning, A Citation IEEE International Conference on Management of Innovation and Technology Proceedings, Singapore,
More informationAn 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 informationDriving Your Business Forward with Application Life-cycle Management (ALM)
Driving Your Business Forward with Application Life-cycle Management (ALM) Published: August 2007 Executive Summary Business and technology executives, including CTOs, CIOs, and IT managers, are being
More informationApex Code: The World s First On-Demand Programming Language
WHIT EP AP ER Apex Code: The World s First On-Demand Programming Language Contents Extending the Power of the Apex Platform... 1 Multi-tenancy and Programming Languages... 1 Apex Code Design and Syntax...
More informationExhibit F. VA-130620-CAI - Staff Aug Job Titles and Descriptions Effective 2015
Applications... 3 1. Programmer Analyst... 3 2. Programmer... 5 3. Software Test Analyst... 6 4. Technical Writer... 9 5. Business Analyst... 10 6. System Analyst... 12 7. Software Solutions Architect...
More informationUML for the C programming language.
Functional-based modeling White paper June 2009 UML for the C programming language. Bruce Powel Douglass, PhD, IBM Page 2 Contents 2 Executive summary 3 FunctionalC UML profile 4 Functional development
More informationAn Oracle Best Practice Guide April 2012. Best Practices for Designing Contact Center Experiences with Oracle RightNow CX Cloud Service
An Oracle Best Practice Guide April 2012 Best Practices for Designing Contact Center Experiences with Oracle RightNow CX Cloud Service Introduction... 1 Understanding the Problem... 2 Addressing the Problem
More informationProcess Modelling from Insurance Event Log
Process Modelling from Insurance Event Log P.V. Kumaraguru Research scholar, Dr.M.G.R Educational and Research Institute University Chennai- 600 095 India Dr. S.P. Rajagopalan Professor Emeritus, Dr. M.G.R
More informationService Oriented Architecture (SOA) An Introduction
Oriented Architecture (SOA) An Introduction Application Evolution Time Oriented Applications Monolithic Applications Mainframe Client / Server Distributed Applications DCE/RPC CORBA DCOM EJB s Messages
More informationDEVELOPING 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 informationKey Requirements for a Job Scheduling and Workload Automation Solution
Key Requirements for a Job Scheduling and Workload Automation Solution Traditional batch job scheduling isn t enough. Short Guide Overcoming Today s Job Scheduling Challenges While traditional batch job
More informationService-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 informationSoftware Life-Cycle Management
Ingo Arnold Department Computer Science University of Basel Theory Software Life-Cycle Management Architecture Styles Overview An Architecture Style expresses a fundamental structural organization schema
More informationBusiness Modeling with UML
Business Modeling with UML Hans-Erik Eriksson and Magnus Penker, Open Training Hans-Erik In order to keep up and be competitive, all companies Ericsson is and enterprises must assess the quality of their
More informationAn Eclipse Plug-In for Visualizing Java Code Dependencies on Relational Databases
An Eclipse Plug-In for Visualizing Java Code Dependencies on Relational Databases Paul L. Bergstein, Priyanka Gariba, Vaibhavi Pisolkar, and Sheetal Subbanwad Dept. of Computer and Information Science,
More informationPerformance Monitoring and Analysis System for MUSCLE-based Applications
Polish Infrastructure for Supporting Computational Science in the European Research Space Performance Monitoring and Analysis System for MUSCLE-based Applications W. Funika, M. Janczykowski, K. Jopek,
More informationSoftware Configuration Management. Context. Learning Objectives
Software Configuration Management Wolfgang Emmerich Professor of Distributed Computing University College London http://sse.cs.ucl.ac.uk Context Requirements Inception Elaboration Construction Transition
More informationSERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED LOGICAL DESIGN MODEL LANGUAGE SPECIFICATIONS
SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) VERSION 2.1 SERVICE-ORIENTED LOGICAL DESIGN MODEL LANGUAGE SPECIFICATIONS 1 TABLE OF CONTENTS INTRODUCTION... 3 About The -Oriented Modeling Framework (SOMF)...
More informationcesses relate human tasks that are rooted in the physical world. Such tasks include, moving, storing, transforming, measuring, and assembling
119 Distributed and Parallel Databases, 3, 119-153 (1995) Kluwer Academic Publishers, Boston. Manufactured in The Netherlands. An Overview of Workflow Management: From Process Modeling to Workflow Automation
More informationATM Case Study Part 1
ATM Case Study Part 1 A requirements document specifies the purpose of the ATM system and what it must do. Requirements Document A local bank intends to install a new automated teller machine (ATM) to
More informationBusiness-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 informationChapter 13: Program Development and Programming Languages
Understanding Computers Today and Tomorrow 12 th Edition Chapter 13: Program Development and Programming Languages Learning Objectives Understand the differences between structured programming, object-oriented
More informationChange Management. tamj@cpsc.ucalgary.ca ABSTRACT
Change Management James Tam, Saul Greenberg, and Frank Maurer Department of Computer Science University of Calgary Calgary, Alberta phone: +1 403 220 3532 tamj@cpsc.ucalgary.ca ABSTRACT In this paper,
More informationStock Trader System. Architecture Description
Stock Trader System Architecture Description Michael Stevens mike@mestevens.com http://www.mestevens.com Table of Contents 1. Purpose of Document 2 2. System Synopsis 2 3. Current Situation and Environment
More informationSQA Labs Value Assured
Q SQA Labs Value Assured QUALITY ASSURANCE TESTING TOOLS QUALITY ASSURANCE TESTING TOOLS Quality Assurance refers to the steps taken to make sure that a company s products or services are of sufficiently
More informationIntroduction 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 informationEastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students
Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent
More information