Business Modeling with UML
|
|
|
- Marian Henry
- 10 years ago
- Views:
Transcription
1 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 found and products and the efficiency of their services. In doing Chairman of so, they must consider what is happening in the world Open around them, and they must also take an introspective Training look at their products or services. Is their internal Magnus operation working smoothly? Can they improve their Penker is product or service? Is their production running as CEO of efficiently as possible? Can they expand their product or Open service portfolios to reach new markets and customers? Training. In addition to products and services, today's businesses must also evaluate their information systems. Do the information systems effectively support their way of working? Do the systems adapt easily to change? Is information used as an important strategic resource in the business? Is the information adequate and correct? In many of today's businesses, information systems no longer merely support the business. Increasingly, they are becoming an integral part of it. All businesses make some use of information technology, and it is important that their systems are really built to support the businesses of which they are an integrated part. The business is what ultimately defines the requirements on the information systems, and creating software without a proper understanding of the context in which that software is to operate is a dangerous adventure. In order to get such an understanding, it is essential to make a model of the business. A model is a simplified view of a complex reality. It is a means to creating abstraction, allowing you to eliminate irrelevant details and focus on one or more important aspects at a time. Effective models also facilitate discussions among different stakeholders in the business, allowing them to agree on the key fundamentals and to work towards common goals. Finally, a business model can be the basis for other models, such as models for different information systems that support the business. Modeling (e.g., with UML) has been accepted and established as a means of analyzing and designing software. In order to create the best software, the businesses in which the software systems operate must also be modeled, understood, and sometimes improved. The business model is the center for conducting business or improving how the business is operated. The evolving models also help the developers structure and focus their thinking. Working with the models increases their understanding of the business and, hopefully, also their awareness of new opportunities for improving business. Many development processes that use UML advocate that the system development should start with use case modeling to define the functional requirements on the system. A use case describes a specific usage of the system by one or more
2 actors. An actor is a role that a user or another system has. The objective of use case modeling is to identify and describe all the use cases that the actors require from the system. The use case descriptions then are used to analyze and design a robust system architecture that realizes the use cases (this is what is referred to as "use case driven" development). But how do you know that all of the use cases, or even the correct use cases that best support the business in which the system operates, are identified? To answer such questions you need to model and understand the system's surroundings. Modeling a business's surroundings involves answering such questions as: How do the different actors interact? What activities are part of their work? What are the ultimate goals of their work? What other people, systems, or resources are involved that do not show up as actors to this specific system? What rules govern their activities and structures? Are there ways actors could perform more efficiently? The answers to these questions come from tackling the entire business and looking beyond the functions of the information system currently being built (and using techniques other than use case modeling). The ultimate objective of all software systems is to give correct and extensive support to the business of which it is a part. However, when modeling the surroundings of the information system, you are no longer modeling software. Enter the world of business modeling. There can be many reasons for doing business modeling: To better understand the key mechanisms of an existing business. The models can be used to train people by providing a clear picture of their role and tasks in the overall organization. To act as the basis for creating suitable information systems that support the business. The descriptions of the business are used to identify necessary information system support. The models are also used as a basis for specifying the key requirements on those systems. Ideally large parts of the business model can be mapped directly onto software objects. As more and more infrastructure software systems are bought, there is a potential for the systems that are developed to become more business driven where the developers can concentrate more on functionality that supports the business rather than solving technical incompatibilities or problems. To act as the basis for improving the current business structure and operation. The models identify changes in the current business that are necessary to implement the improved business model. To show the structure of an innovated business. The model becomes the basis for the action plan. Innovation suggests that radical change, rather than incremental changes, have been made to the business
3 processes. To experiment with a new business concept, or to copy or study a concept used by a competitive company (e.g., benchmarking on the model level). The developed model becomes a sketch of a possible development for the business. The model can be a new idea, inspired by modeling other businesses, or taking advantage of new technologies, such as the Internet. To identify outsourcing opportunities. Parts of the business that are not considered the "core business" are delegated to outside suppliers. The models are used as the specification for the suppliers. Business Modeling with UML UML has quickly been adopted as the standard modeling language for modeling software systems. This article (and the book from which it is an extract) discusses how UML also can be used for business modeling and thus demonstrate that the same modeling language can be used for the business models as for the software models. UML was defined to model the architecture of software systems. Even though there are similarities between software and business systems, there are also some differences. Business systems have many concepts that are never intended or suitable to execute in a program, such as the people working in the business, manufacturing production equipment, and rules and goals that drive the business processes. UML was initially designed to describe aspects of a software system. Because of this, UML needed to be extended in order to more clearly identify and visualize the important concepts of processes, goals, resources, and rules of a business system. To address this issue, we have created a set of extensions based on the existing model elements of UML. These extensions are called Eriksson-Penker Business Extensions and provide symbols for modeling the processes, resources, rules, and goals of a business system. These extensions form a basic framework for business extensions to UML (rather than a definitive set of business extensions) to which a business architect can add stereotypes or properties suitable to his or her line of business. The standard extension mechanisms in UML that allow you to adapt UML to accommodate new concepts are: Stereotypes. An extension of the vocabulary of the UML, which allows you to create new building blocks from existing ones but specific to your problem [Booch, 1998]. Stereotypes may have their own visual icons that replace the icon which the existing UML element uses. Tagged values (properties). An extension of the properties of a UML element, which allows you to create new information in that element's specification [Booch,1998]. Constraints. An extension of the semantics of a UML element, allowing you to add new rules or modify existing ones [Booch, 1998].
4 Although different businesses have different goals and internal structures they use similar concepts to describe their structure and operation, and it is to represent these concepts the extension mechanisms in UML have been used for this purpose. The primary concepts used when defining the business system are (a complete meta-model describing these concepts and their relationships is available in the book): Resources. The objects within the business, such as people, material, information, and products, that are used or produced in the business. The resources are arranged in structures and have relationships with each other. Resources are manipulated (used, consumed, refined, or produced) through processes. Resources can be categorized into physical, abstract, and informational (each having their own stereotype). Processes. The activities performed within the business in which the state of business resources changes. Processes describe how the work is done within the business. Processes are governed by rules. Goals. The purpose of the business, or the outcome the business as a whole is trying to achieve. Goals can be broken down into sub-goals and allocated to individual parts of the business, such as processes or objects. Goals express the desired states of resources and are achieved by processes. Goals can be expressed as one or more rules. Rules. A statement that defines or constrains some aspect of the business, and represents business knowledge. It governs how the business should be run (i.e., how the processes should execute) or how resources may be structured and related to each other. Rules can be enforced on the business from the outside by regulations or laws, or they can be defined within the business to achieve the goals of the business. Business rules are defined using the Object Constraint Language (OCL) which is a part of the UML standard. Activity Diagram The most important UML diagram for doing business modeling is the activity diagram, now supported in Rational Rose. Activity diagrams are often used in software development projects to document program flow, e.g., to show the algorithm used to implement a specific operation. Activity diagrams have a wide-range of uses, in that they can show activities (sequential and in parallel), the objects consumed, used, or produced by an activity, who is responsible for an activity, and the relationships and dependencies between activities. All of this is essential in business modeling. The business processes are the active part of the business. They describe the functions of the business, and involve resources that are used, transformed, or produced. A common definition of business process is (Davenport 1993): A process is simply a structured set of activities designed to produce a specified output for a particular customer or
5 market. It implies a strong emphasis on how work is done within an organization, in contrast to a product's focus on what. A process is thus a specific ordering of work activities across time and place, with a beginning, an end, and clearly identified inputs and outputs: a structure for action. A process could in simple terms be described as a number of activites. Eriksson-Penker Business Extensions represent a process in an UML class diagram with the process symbol shown for Process A in Figure 1. In formal UML, the symbol is a stereotyped activity (an action state) from an activity diagram. A process, that is an activity stereotyped to process, takes input resources from its left-hand side and indicates its output resources on its right-hand side (shown as dependencies to and from the process, according to standard UML syntax). For instance, in a telesales process, the input resources could be prospects of potential customers and the output could be actual orders. The goal of the process is either illustrated as a goal object above the process symbol, or more informally specified in the tagged value goal of the process (the tagged value is not visible in the diagram but is available in a tool). A goal of a telesales process could be a specific number of orders per week. Resource objects used or involved as part of the process are shown below the process symbol. Resources that are used or needed by the process have their dependency stereotyped to "supply" and a resource that controls the process has its dependency stereotyped to "control". Resources in the telesales process could be salespersons (supplying resource) and telesales manager (controlling resource). Business Views A complete business model is shown in a number of views, similar to how a software system is modeled in a number of views (Kruchten 1995). Each view is expressed in one or more diagrams. The diagrams can be of different types, dependent upon the specific structure or situation in the business that it is depicting. Diagrams capture the processes, rules, goals, and objects in the business, and their relationships and interactions with each other. The Eriksson-Penker Business Extensions use four different views of a business, and they are: Business Vision View. The overall vision of the business. This view describes a goal structure for the company, and illustrates problems that must be solved in order to reach those goals. Business Process View. The business processes that represent the activities and value created in the business. This view illustrates the interaction between the processes and resources in order to achieve the goal of each process, as well as the interaction between different processes. Business Structural View. The structures among the resources in the business, such as the organization of the business or the structure of the products created.
6 Business Behavioral View. The individual behavior of each important resource and process in the business model and how they interact with each other. The views are not separate models; they are different perspectives on one or more specific aspect of the business. Combined, the views create a complete model of the business. Business Rules, defined in the OCL language, can be applied in all of the views. Business Vision View The Business Vision View depicts the company's goals. It is an image of where the company is headed. This view sets up the overall strategy for the business, defines the goals of the business, and acts as a guide for modeling the other views. The ultimate result of the Business Vision View is a definition of the desired future state of the company, and how that state can be reached. The primary result is expressed in a vision statement, one or more goal/problem models, and sometimes also a conceptual model. A vision statement is a short text document that outlines the vision of the company some years into the future. The goal/problem model is a UML object diagram that breaks down the major goals of the business into sub-goals, and indicates the problems that stand in the way of achieving those goals. The conceptual model is a UML class diagram that defines important concepts and relationships in the business to create a common set of terminology. Figure 2 shows a goal-problem diagram in which a high-level goal has been broken down into more concrete goals, goals that in turn can be allocated to business processes. With the goals are shown problems which hinder the achievement of that goal, and this typically leads to the identification of further subgoals. Business Process View The Business Process View is at the center of business modeling. As previously discussed, the processes show the activities to achieve an explicit goal and their relationships with the resources participating in the process. Resources include people, material, energy, information, and technology, and can be consumed, refined, created, or used (i.e., act as a catalyst) during the process. There are relationships between a process and its resources, between different processes that interact, and there is a coupling of processes to goals. A process diagram (based on a UML activity diagram) can also show how business events are generated or received between different processes, (i.e., as a means to interact or communicate between processes). Figure 3 shows a process diagram (again based on an activity diagram with stereotypes from the business extensions) where the relationships between different processes are shown. This diagram also makes use of swimlanes, which are used to show the organizational habitat of the process (it can also be used to show who is responsible for the process). There is a variant of the process diagram, called the assembly line diagram, in the Eriksson-Penker Business Extensions. As
7 with the process diagram, it is based to a large extent on the UML activity diagram. The assembly line diagram (introduced in the Astrakan method) has been used successfully for process modeling, particularly when the purpose of modeling is the production of information systems that support the processes. The diagram shows how the processes write or read different objects placed in a package (called the "assembly line" because it looks like an assembly line below the process diagram). The process communicates with objects in the package and requests different services, or reads or writes information from it. The assembly line package typically represents an entire information system or a subsystem in a information system. The diagram shows the requirements that the process has on the information system through the interface it has to it. This interface is normally described through use cases in object-oriented modeling, and a set of references in an assembly line diagram typically become a use case that the information system has to provide. This is very important, because it maps the business process to use cases that describe the functional requirements on an information system, and it also identifies the proper actors to the use cases (the roles played by the resources in the process that uses the assembly lines). Assembly line diagrams provide the connection between business modeling and software system requirements modeling with use cases. A common question when modeling use cases on a software system is "How do I know I have defined the right use cases in terms of the business?" The assembly line diagram, which is fully demonstrated and elaborated upon in the book, is a good technique for this. Business Structural View The Business Structural View (Figure 4) shows the structures of the resources, the products, or the services, and the information in the business, including the traditional organization of the company (divisions, departments, sections, business units, etc.). Traditional organizational charts and descriptions, and descriptions of the products and services the company provides are the basis for the Business Structural View. The information from the Process View is also used since it shows what resources are used. Note that typically these two views are modeled in parallel, since they contribute to each other and must be consistent. The view shows the structures of resources, of information and of the business organization. Business Behavioral View The Business Behavioral View illustrates both the individual behaviors of resources and processes in the business as well as the interaction between several different resources and processes. The behavior of the resource objects is governed by the Business Process View, which shows the overall main control flow of the work performed. However, the Business Behavioral View looks into each of the involved objects in
8 more detail: their state, their behavior in each state, and possible state transitions. The Behavioral View also shows the interaction between different processes, such as how they are synchronized with each other. By doing so, the Behavioral View is an important tool to use when allocating the exact responsibility for different activities, and when defining the exact behavior of each resource that takes part in each process. The Behavioral view makes use of state chart diagrams, sequence diagrams and collaboration diagrams. Process diagrams can also be used to show interaction between processes. From Business Model to Software A common use of business models is to use them as the basis for identifying functional and non-functional requirements on one or more information systems. As previously discussed, business modeling is the way to actually know if the use cases defined for a system are the "right" or "optimal" requirements on that system. There are also other uses of the business model, because many of the objects and relationships found in the business model will also be objects and relationships in the information system model. It is important to realize that it is not a one-to-one mapping though, a critical analysis must be made of the business model to see what is applicable for a specific information system. Figure 5 shows an overview of the relationships between the business modeling process and the information system development process. The ultimate goal is of course to create the software system(s) that best supports and fits into the business. The business model is used in software modeling to: Identify the information systems that best support the operation of the business. The systems can be new systems, standard systems, or legacy systems. Find functional requirements. The business model is used as a basis to identify the correct set of functions or use cases that the system should supply to the business processes. Find non-functional requirements. These requirements, such as robustness, security, availability, and performance, typically span and involve the entire system. They are often generic and not attached to a specific use case. Act as a basis for analysis and design of the system. For example, information about resources in the business model can be used to identify classes in the system. However, it is not possible to directly transfer the classes in the business model to the software model. Identify suitable components. Modern software development makes use of components: autonomous packages of functionality that are not specific to a
9 certain system but can be used in several systems. Most of component technology has concentrated on technical components, but there has been an increasing interest in defining business components that encapsulate a specific and reusable area of business functionality. Business models are a good way to identify areas of functionality and to define the appropriate set of services. References: 1. Eriksson, Hans-Erik and Penker, Magnus: "Business Modeling with UML: Business Patterns at work", Wiley & Sons, Fall Eriksson, Hans-Erik and Penker, Magnus: "UML Toolkit", Wiley & Sons Booch, Grady, Jacobson, Ivar and Rumbaugh,James: "The Unified Modeling Language Users Guide", Addison Wesley Kruchten, Philippe: "The 4+1 View Model of Architecture", IEEE Software, IEEE, November Davenport, Thomas: "Process Innovation: Reengineering work through Information Technology", Harvard Business School Harrington, James: "Business Process Improvement", Mcgraw-Hill Marca, David and McGowan, Clement: "IDEF0/SADT: Business Process and Enterprise Modeling", Eclectic Solutions About the Authors Hans-Erik Eriksson ([email protected]) is Founder and pfchairman of Open Training - a company specialized in advanced online learning solutions and e- Training. He has over 10 years experience in object-oriented technology. Magnus Penker ([email protected]) is CEO of Open Training, and a former senior management consultant specializing in process modeling and object-oriented modeling. Hans-Erik and Magnus are the authors of UML Toolkit, one of the early books on UML and in October their new book, on which this article is based, Business Modeling with UML: Business Patterns at Work (Wiley), will be released. More information about the book can be found at
10 Figure 1: Activity diagram with stereotypes for a process and for objects involved in the process. Figure 2: A goal-problem diagram based on a UML object diagram.
11 Figure 3: A process diagram based on an activity diagram with swimlanes. Figure 4: An organization diagram based on UML class and object diagrams. Note the use of the UML construct powertype, in which objects of a class are used to represent types.
12 Figure 5: A process diagram showing a simplified view of the relationships between business modeling and information system development.
Systematization of Requirements Definition for Software Development Processes with a Business Modeling Architecture
Systematization of Requirements Definition for Software Development Processes with a Business Modeling Architecture Delmir de Azevedo Junior 1 and Renato de Campos 2 1 Petrobras University, Republican
The Unified Software Development Process
The Unified Software Development Process Technieche Universal Darmstadt FACHBEREICH IN-FORMAHK BLIOTHEK Ivar Jacobson Grady Booch James Rumbaugh Rational Software Corporation tnventar-nsr.: Sachgebiete:
3C05: Unified Software Development Process
3C05: Unified Software Development Process 1 Unit 5: Unified Software Development Process Objectives: Introduce the main concepts of iterative and incremental development Discuss the main USDP phases 2
The Business Process Model
An Introduction to UML The Business Process Model by Geoffrey Sparks All material (c) Geoffrey Sparks 2000 www.sparxsystems.com.au Geoffrey Sparks 2000 Page:1 Table of Contents THE BUSINESS PROCESS MODEL...3
A UML 2 Profile for Business Process Modelling *
A UML 2 Profile for Business Process Modelling * Beate List and Birgit Korherr Women s Postgraduate College for Internet Technologies Institute of Software Technology and Interactive Systems Vienna University
Software Requirements Specification of A University Class Scheduler
Software Requirements Specification of A University Class Scheduler Deanna M. Needell Jeff A. Stuart Tamara C. Thiel Sergiu M. Dascalu Frederick C. Harris, Jr. Department of Computer Science University
CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS)
CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS) Prescriptive Process Model Defines a distinct set of activities, actions, tasks, milestones, and work products that are required to engineer high quality
Designing 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
Applying 4+1 View Architecture with UML 2. White Paper
Applying 4+1 View Architecture with UML 2 White Paper Copyright 2007 FCGSS, all rights reserved. www.fcgss.com Introduction Unified Modeling Language (UML) has been available since 1997, and UML 2 was
Classical Software Life Cycle Models
Classical Software Life Cycle Models SWEN 301 Trimester 1, 2015 Lecturer: Dr Hui Ma Engineering and Computer Science Lecture slides make use of material provided on the textbook's companion website Motivation
TOGAF usage in outsourcing of software development
Acta Informatica Pragensia 2(2), 2013, 68 76, DOI: 10.18267/j.aip.25 Section: Online: aip.vse.cz Peer-reviewed papers TOGAF usage in outsourcing of software development Aziz Ahmad Rais 1, Rudolf Pecinovsky
Chap 1. Introduction to Software Architecture
Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)
Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3
Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3 1 Mälardalen University, Västerås, Sweden, [email protected] 2 ABB Corporate Research,
Tool Support for Software Variability Management and Product Derivation in Software Product Lines
Tool Support for Software Variability Management and Product Derivation in Software s Hassan Gomaa 1, Michael E. Shin 2 1 Dept. of Information and Software Engineering, George Mason University, Fairfax,
To 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
How 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é
DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES
DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES Robert M. Bruckner Vienna University of Technology [email protected] Beate List Vienna University of Technology [email protected]
Document Engineering: Analyzing and Designing the Semantics of Business Service Networks
Document Engineering: Analyzing and Designing the Semantics of Business Service Networks Dr. Robert J. Glushko University of California Berkeley [email protected] Tim McGrath Universal Business
What CMMI Cannot Give You: Good Software
What CMMI Cannot Give You: Good Software Ivar Jacobson [email protected] [email protected] Objective To understand what CMM/CMMI is and what it is not To demonstrate how the unified process helps you
Software Development in the Large!
Software Development in the Large! Peter Eeles Executive IT Architect, IBM [email protected] IBM Rational Software Development Conference 2007 2007 IBM Corporation Agenda IBM Rational Software Development
I219 Software Design Methodology
I219 Software Design Methodology JAIST Master s Program Fall 2014 Nguyen Van Vu [email protected] Topics Course Introduction Objectives and Scope Evaluation Policies Content and Schedule Basic Concepts
An Introduction to the UML and the Unified Process
3 An Introduction to the UML and the Unified Process 3.1 Introduction This chapter introduces the Unified Modeling Language (UML) notation, its motivation and history. It then presents the Unified Process
Abstract. 1 Introduction
Amir Tomer Amir Tomer is the Director of Systems and Software Engineering Processes at RAFAEL Ltd., Israel,with whom he has been since 1982,holding a variety of systems and software engineering positions,both
Evaluating OO-CASE tools: OO research meets practice
Evaluating OO-CASE tools: OO research meets practice Danny Greefhorst, Matthijs Maat, Rob Maijers {greefhorst, maat, maijers}@serc.nl Software Engineering Research Centre - SERC PO Box 424 3500 AK Utrecht
Workflow Access Control from a Business Perspective
Workflow Access Control from a Business Perspective Dulce Domingos, António Rito-Silva 2, Pedro Veiga Informatics Department, University of Lisbon, Faculty of Sciences {dulce, pmv}@di.fc.ul.pt 2 INESC-ID
Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering Software Processes Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software process models To describe three generic process models and when
IRA 423/08. Designing the SRT control software: Notes to the UML schemes. Andrea Orlati 1 Simona Righini 2
Designing the SRT control software: Notes to the UML schemes Andrea Orlati 1 Simona Righini 2 1 - I.N.A.F. Istituto di Radioastronomia. 2 Dip. Astronomia - Università degli Studi di Bologna. Dicembre 2008
Rational Software White Paper
Modeling Web Application Architectures with UML By: Jim Conallen, Rational Software June 1999 A version of this material appears in the October 1999 (volume 42, number 10) issue of Communications of the
The most suitable system methodology for the proposed system is drawn out.
3.0 Methodology 3.1 Introduction In this chapter, five software development life cycle models are compared and discussed briefly. The most suitable system methodology for the proposed system is drawn out.
A Software Development Process Model Integrating Business Object Technology and UML. Axel Korthaus and Stefan Kuhlins
BOOSTER*Process A Software Development Process Model Integrating Business Object Technology and UML Axel Korthaus and Stefan Kuhlins University of Mannheim Department of Management Information Systems
Table of Contents. CHAPTER 1 Web-Based Systems 1. CHAPTER 2 Web Engineering 12. CHAPTER 3 A Web Engineering Process 24
Table of Contents CHAPTER 1 Web-Based Systems 1 The Web 1 Web Applications 2 Let s Introduce a Case Study 3 Are WebApps Really Computer Software? 4 Are the Attributes of WebApps Different from the Attributes
A Unified Modeling Language for Describing Supply Chain Management in Retail Sector
A Unified Modeling Language for Describing Supply Chain Management in Retail Sector ZHU Haibo Harbin University of Commerce, Harbin, P.R. China, 150028 [email protected] Abstract: With the market competition
Component Based Development Methods - comparison
Component Based Development Methods - comparison Dan Laurenţiu Jişa Abstract: This paper realizes a comparison among three of the best known component based development methods, emphazing on the earlier
PROCESS-DRIVEN SOFTWARE DEVELOPMENT METHODOLOGY FOR ENTERPRISE INFORMATION SYSTEM
PROCESS-DRIVEN SOFTWARE DEVELOPMENT METHODOLOGY FOR ENTERPRISE INFORMATION SYSTEM Kwan Hee Han 1 and Yongsun Choi 2 1 Department of Industrial & Systems Engineering, Engineering Research Institute, Gyeongsang
In this Lecture you will Learn: Systems Development Methodologies. Why Methodology? Why Methodology?
In this Lecture you will Learn: Systems Development Methodologies What a systems development methodology is Why methodologies are used The need for different methodologies The main features of one methodology
Software Engineering
1 Software Engineering Lecture 2: Software Life Cycles Stefan Hallerstede Århus School of Engineering 25 August 2011 2 Contents Naive Software Development Code & Fix Towards A Software Process Software
Basic Unified Process: A Process for Small and Agile Projects
Basic Unified Process: A Process for Small and Agile Projects Ricardo Balduino - Rational Unified Process Content Developer, IBM Introduction Small projects have different process needs than larger projects.
7. Business views (2/3h)
7. Business views (2/3h) Topics 7.1. Business views as business architecture 7.2. Business vision view 7.3. Business process view 7.4. Business structure view 7.5. Business behavior view Dr. Witold Rekuć
Increasing Development Knowledge with EPFC
The Eclipse Process Framework Composer Increasing Development Knowledge with EPFC Are all your developers on the same page? Are they all using the best practices and the same best practices for agile,
Requirements engineering
Learning Unit 2 Requirements engineering Contents Introduction............................................... 21 2.1 Important concepts........................................ 21 2.1.1 Stakeholders and
Business-Driven Software Engineering Lecture 3 Foundations of Processes
Business-Driven Software Engineering Lecture 3 Foundations of Processes Jochen Küster [email protected] Agenda Introduction and Background Process Modeling Foundations Activities and Process Models Summary
CS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed.
CS 389 Software Engineering Lecture 2 Chapter 2 Software Processes Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. Topics covered Software process models Process activities Coping
CS4507 Advanced Software Engineering
CS4507 Advanced Software Engineering Lectures 2 & 3: Software Development Lifecycle Models A O Riordan, 2015 Some diagrams from Sommerville, some notes from Maciaszek/Liong Lifecycle Model Software development
Applying Use Cases to Microcontroller Code Development. Chris Gilbert Cypress Semiconductor
Applying Use Cases to Microcontroller Code Development Chris Gilbert Cypress Semiconductor Agenda Why Use Cases Microcontroller Project Development Use Cases Defined Use Cases Composition General Example
The Role of the Software Architect
IBM Software Group The Role of the Software Architect Peter Eeles [email protected] 2004 IBM Corporation Agenda Architecture Architect Architecting Requirements Analysis and design Implementation
The BPM to UML activity diagram transformation using XSLT
The BPM to UML activity diagram transformation using XSLT Ondřej Macek 1 and Karel Richta 1,2 1 Department of Computer Science and Engineering, Faculty of Electrical Engineering, Czech Technical University,
System development lifecycle waterfall model
Slide 6.1 System development lifecycle waterfall model Figure 6.1 The waterfall model of system development lifecycle Slide 6.2 The b model Figure 6.2 The b model Source: N D Birrell and M A Ould, A Practical
Automated Modeling of Legacy Systems Using the UML
Automated Modeling of Legacy Systems Using the UML by Pan-Wei Ng Software Engineering Specialist Rational Software Singapore Poor documentation is one of the major challenges of supporting legacy systems;
A UML Introduction Tutorial
A UML Introduction Tutorial 1/27/08 9:55 PM A UML Introduction Tutorial In this tutorial you will learn about the fundamentals of object oriented modelling, the Unified Modelling Language and the software
UML SUPPORTED SOFTWARE DESIGN
UML SUPPORTED SOFTWARE DESIGN Darko Gvozdanović, Saša Dešić, Darko Huljenić Ericsson Nikola Tesla d.d., Krapinska 45, HR-0000 Zagreb, Croatia, tel.: +385 365 3889, faks: +385 365 3548, e-mail: [email protected]
A Rational Development Process
Paper published in: Crosstalk, 9 (7) July 1996, pp.11-16. A Rational Development Process Philippe Kruchten Vancouver, BC [email protected] 1. Introduction This paper gives a high level description of the
Sistemi ICT per il Business Networking
Corso di Laurea Specialistica Ingegneria Gestionale Sistemi ICT per il Business Networking Software Development Processes Docente: Vito Morreale ([email protected]) 17 October 2006 1 The essence of
Menouer Boubekeur, Gregory Provan
Software Requirements Menouer Boubekeur, Gregory Provan Lectures Introduction to UML Introduction to Requirements Analysis Advanced techniques for Requirement Analysis M. Boubekeur, CSL, University College
A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT
A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT Cléver Ricardo Guareis de Farias, Marten van Sinderen and Luís Ferreira Pires Centre for Telematics and Information Technology (CTIT) PO Box
Object-Oriented Design Guidelines
Adaptive Software Engineering G22.3033-007 Session 8 Sub-Topic 3 Presentation Object-Oriented Design Guidelines Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute
Rational Unified Process for Systems Engineering RUP SE1.1. A Rational Software White Paper TP 165A, 5/02
Rational Unified Process for Systems Engineering RUP SE1.1 A Rational Software White Paper TP 165A, 5/02 Table of Contents INTRODUCTION...1 BUSINESS MODELING...3 SYSTEM ARCHITECTURE...4 SYSTEM ARCHITECTURE
SYSTEMS ANALYSIS DESIGN
SYSTEMS ANALYSIS DESIGN Third Edition ALAN DENNIS Indiana University BARBARA HALEY WIXOM University of Virginia ROBERTA M. ROTH University of Northern Iowa WILEY John Wiley & Sons, Inc. http://www.wiley.com/college/dennis
1 Business Modeling. 1.1 Event-driven Process Chain (EPC) Seite 2
Business Process Modeling with EPC and UML Transformation or Integration? Dr. Markus Nüttgens, Dipl.-Inform. Thomas Feld, Dipl.-Kfm. Volker Zimmermann Institut für Wirtschaftsinformatik (IWi), Universität
Engineering Process Software Qualities Software Architectural Design
Engineering Process We need to understand the steps that take us from an idea to a product. What do we do? In what order do we do it? How do we know when we re finished each step? Production process Typical
How To Design Software
The Software Development Life Cycle: An Overview Presented by Maxwell Drew and Dan Kaiser Southwest State University Computer Science Program Last Time The design process and design methods Design strategies
Architecture 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)
SEARCH The National Consortium for Justice Information and Statistics. Model-driven Development of NIEM Information Exchange Package Documentation
Technical Brief April 2011 The National Consortium for Justice Information and Statistics Model-driven Development of NIEM Information Exchange Package Documentation By Andrew Owen and Scott Came Since
ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN
ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN Mohammad A. Rob, University of Houston-Clear Lake, [email protected] ABSTRACT In recent years, there has been a surge of
Visual Modelling and Managing the Software Architecture Landscape in a large Enterprise by an Extension of the UML
Visual Modelling and Managing the Software Architecture Landscape in a large Enterprise by an Extension of the UML Abstract Marcus Heberling 1, Christoph Maier 2, Thomas Tensi 3 In large enterprises the
Object-oriented design methodologies
Object-oriented design methodologies An object-oriented methodology is defined as the system of principles and procedures applied to object-oriented software development. Five years ago, there was no standard
Use-Case Analysis. ! What is it? ! From where did it come? ! Now part of UML
Use-Case Analysis Use-Case Analysis! What is it?! An informal, user-friendly, technique useful for functional requirements analysis and specification! From where did it come?! Ivar Jacobson, a Swedish
(BA122) Software Engineer s Workshop (SEW)
Training for the Business Analyst (BA122) Software Engineer s Workshop (SEW) Duration: 4 days CDUs (Continuing Development Units): 28 Description: A practical workshop covering the role of the Business-Systems
Software Architecture Document
COMPREHENSIVE WATERSHED MANAGEMENT WATER USE TRACKING PROJECT Southwest Florida Water Management District 2379 Broad Street Brooksville, FL 34604-6899 Date Revision Description Author Table of Contents
Rose/Architect: a tool to visualize architecture
Published in the Proceedings of the 32 nd Annual Hawaii International Conference on Systems Sciences (HICSS 99) Rose/Architect: a tool to visualize architecture Alexander Egyed University of Southern California
Evaluation of a Use-Case-Driven Requirements Analysis Tool Employing Web UI Prototype Generation
Evaluation of a Use-Case-Driven Requirements Analysis Tool Employing Web UI Prototype Generation SHINPEI OGATA Course of Functional Control Systems, Graduate School of Engineering Shibaura Institute of
Software Engineering. Software Development Process Models. Lecturer: Giuseppe Santucci
Software Engineering Software Development Process Models Lecturer: Giuseppe Santucci Summary Modeling the Software Process Generic Software Process Models Waterfall model Process Iteration Incremental
Information systems modelling UML and service description languages
Internet Engineering Tomasz Babczyński, Zofia Kruczkiewicz Tomasz Kubik Information systems modelling UML and service description languages Student Contact Hours: 25.02.2015- Location: 325 C3 room 25.03.2015:
A Comparison of SOA Methodologies Analysis & Design Phases
202 A Comparison of SOA Methodologies Analysis & Design Phases Sandra SVANIDZAITĖ Institute of Mathematics and Informatics, Vilnius University Abstract. Service oriented computing is a new software engineering
SOFTWARE PROCESS MODELS
SOFTWARE PROCESS MODELS Slide 1 Software Process Models Process model (Life-cycle model) - steps through which the product progresses Requirements phase Specification phase Design phase Implementation
7 Component-based Development Process and Component Lifecycle
7 Component-based Development Process and Component Lifecycle The process of component and component-based system development differs in many significant ways from the classical development process of
Development models. 1 Introduction. 2 Analyzing development models. R. Kuiper and E.J. Luit
Development models R. Kuiper and E.J. Luit 1 Introduction We reconsider the classical development models: the Waterfall Model [Bo76], the V-Model [Ro86], the Spiral Model [Bo88], together with the further
Mastering increasing product complexity with Collaborative Systems Engineering and PLM
Mastering increasing product complexity with Collaborative Systems Engineering and PLM Thierry Ambroisine Dassault Systèmes 10 rue Marcel Dassault, 78140 Vélizy Villacoublay, France [email protected]
Attempt to Integrate System Dynamics and UML in Business Process Modeling
Attempt to Integrate System Dynamics and UML in Business Process Modeling Liang-Cheng Chang Department of Information Management National Sun Yat-Sen University, Kaohsiung 804, Taiwan 886-7-5252000 ext.
A Framework for Software Product Line Engineering
Günter Böckle Klaus Pohl Frank van der Linden 2 A Framework for Software Product Line Engineering In this chapter you will learn: o The principles of software product line subsumed by our software product
Universiti Teknologi MARA. Requirement Analysis Using UML Approach for Research Management System (RMS)
C^tJ O19OO(^'J.Tfi^'i- Universiti Teknologi MARA Requirement Analysis Using UML Approach for Research Management System (RMS) Enamul Hasan Bin Rusly Thesis submitted in fulfillment of the requirements
UML Activity Diagrams: Versatile Roadmaps for Understanding System Behavior
UML Activity Diagrams: Versatile Roadmaps for Understanding System Behavior by Ben Lieberman Senior Software Architect Blueprint Technologies The core purpose of software development is to provide solutions
Service Oriented Privacy Modeling in Enterprises with ISRUP E- Service Framework
Service Oriented Privacy Modeling in Enterprises with ISRUP E- Service Framework Seyyed Mohsen Hashemi [email protected] Computer Engineering Department, Science and Research Branch, Azad University
Modeling the User Interface of Web Applications with UML
Modeling the User Interface of Web Applications with UML Rolf Hennicker,Nora Koch,2 Institute of Computer Science Ludwig-Maximilians-University Munich Oettingenstr. 67 80538 München, Germany {kochn,hennicke}@informatik.uni-muenchen.de
6 Contracts and Scenarios in the Software Development Process
6 Contracts and Scenarios in the Software Development Process Summary: Software development processes play an important role in the successful and timely delivery of software. There are different approaches
Business Process Modeling with Structured Scenarios
Business Process Modeling with Structured Scenarios Doug Rosenberg ICONIX Software Engineering, Inc. In 2008, based on our experience with a number of business process engineering projects over the last
PROJECT MANAGEMENT METHODOLOGY OF OBJECT- ORIENTED SOFTWARE DEVELOPMENT
PROJECT MANAGEMENT METHODOLOGY OF OBJECT- ORIENTED SOFTWARE DEVELOPMENT Ing. David BEDNÁŘ, Doctoral Degree Programme (2) Dept. of Information Systems, FIT, BUT E-mail: [email protected] Supervised by:
TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW
Year 2014, Vol. 1, issue 1, pp. 49-56 Available online at: http://journal.iecuniversity.com TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Singh RANDEEP a*, Rathee AMIT b a* Department of
Using Use Cases for requirements capture. Pete McBreen. 1998 McBreen.Consulting
Using Use Cases for requirements capture Pete McBreen 1998 McBreen.Consulting [email protected] All rights reserved. You have permission to copy and distribute the document as long as you make no changes
SOMA, RUP and RMC: the right combination for Service Oriented Architecture
SOMA, RUP and RMC: the right combination for Service Oriented Architecture WebSphere User Group, Bedfont, 4th March, 2008 Keith Mantell Senior Solution Architect IBM Rational [email protected] March
Software Architecture. Schahram Dustdar Distributed Systems Group TU Wien
Software Architecture Schahram Dustdar Distributed Systems Group TU Wien 1 Main Topics Software Architecture: Introduction Architecture and Architecture Disciplines Architectural Requirements Architectural
Model Driven Interoperability through Semantic Annotations using SoaML and ODM
Model Driven Interoperability through Semantic Annotations using SoaML and ODM JiuCheng Xu*, ZhaoYang Bai*, Arne J.Berre*, Odd Christer Brovig** *SINTEF, Pb. 124 Blindern, NO-0314 Oslo, Norway (e-mail:
Objectives. The software process. Basic software process Models. Waterfall model. Software Processes
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
Software Lifecycles Models
Software Lifecycles Models Software Engineering Lecture 17 Bernd Bruegge Applied Software Engineering Technische Universitaet Muenchen 1 Outline of Today s Lecture Modeling the software life cycle Sequential
An MDA Approach for the Development of Web applications
An MDA Approach for the Development of Web applications Santiago Meliá Beigbeder and Cristina Cachero Castro {santi,ccachero}@dlsi.ua.es Univesidad de Alicante, España Abstract. The continuous advances
Using Use Cases on Agile Projects
Using Use Cases on Agile Projects Ivar Jacobson with Ian Spence Agenda What are agile teams looking for? Cards, conversations, and confirmations Knowing what to do and when it s done Being agile with use
