Configuration of situational process models: An ... - Semantic Scholar

1 downloads 1763 Views 210KB Size Report
Client-server tool infrastructures due to high performance network support. -. Platforms with ... MEL provides methodology-dedicated concepts and operators ...
Configuration of Situational Process Models: an Information Systems Engineering Perspective Sjaak Brinkkemper, Frank Harmsen, Han Oei

Design Methodology Group, Centre for Telematics and Information Technology, University of Twente, P.O. Box 217, 7500 AE Enschede, Netherlands E-mail: {sjbr I harmsen I oei} @cs.utwente.nl

Vision

Currently, one can observe a convergence of the basis technology for systems development environments. Client-server tool infrastructures due to high performance network support. Platforms with transparent operating systems, e.g. Unix based PCs and workstations. Standard graphical user-interfaces (X-windows, Motif) for fast, intuitive interaction. These technical facilities offer opportunities for a new vision on systems development tools: a flexible CASE workstation. For each project specifically a CASE workstation should be configured with tool components for the complete systems development life cycle (i.e. requirements engineering and software engineering). The most suitable tools are to be selected according to the application type, the available development expertise and the target infrastructure. For example, an object-oriented project could be performed using a selection of techniques from OMT and Fusion, in conjunction with a GUI development kit and a C++ programming environment. For a knowledge based system one desires to use the KADS method together with a Prolog interpreter. The CASE workstation should support any kind of project based on so-called method engineering functionality, i.e. support for the selection, adaptation and composition of tool components, together with transformation and generation utilities. This vision has inspired the Method Engineering research project of the Design Methodology Group at the University of Twente. In this short position paper we want to explain the main results of this project: the Computer Aided Method Engineering (CAME) tool and the Method Engineering Language: MEL. The main goals of this project are partially implied by the following position statements: 9 Systems development should be supported by project-specific methods and tools, e.g. situational methods. 9 Process models and product models of systems development are equally important for the configuration of situational methods. 9 The perspectives of the various disciplines (e.g. information systems engineering, software process modelling, software engineering) should be seamlessly integrated to benefit mutually from each others' expertise. 9 Controlled flexibility of systems development is achieved by flexible process guidance and adaptive product structures.

194

Critical to the support of engineering situational methods is the provision of standardised method building blocks, which are stored and retrievable from a so-called Method Base. Furthermore, a configuration process should be set up that guides the assembly of these building blocks into a situational method. The building blocks, called method fragments, are process models and products models being part of IS development methods. We distinguish product fragments and process fragments. Product fragments model the structures of the products of a systems development method: at a high abstraction level deliverables and diagrams; at a low abstraction level concepts and constraints. Process fragments are models of the development process. Process fragments can be either high level project strategies, called method outlines, or more detailed procedures to support the application of specification techniques.

CAME tool Currently, we are developing Decamerone, a CAME tool that is based on and is used in conjunction with the meta-CASE tool Maestro II. The architecture of Decamerone is depicted in figure 1. The three functional components in the tool, the method administration tool, the method assembly tool and the generators provide complete support for a method configuration process. Output of this CAME tool is a situational CASE tool.

Situational Tool

...............................

_~1~_.........................................................

, generators Tool I Project I Activity | Project| L ' J training II I infraI facilities I I structure t mgmt. WBS [ Repository~

I ~176176

I 'ac""ies L

,Situatio~ Methodl

~ethod assembly

,

1~haracteri'~ t Serection I

l L sat~ IL

S

\

Figure 1

'1~

File

~j

Fragmentsll Method I~"/" IAssembly IG~

L31 chec" i}

Method Base

Methods Administration

The architecture of Decamerone

Method Engineering Language For description, administration, selection, and assembly of method fragments, we are developing the language MEL. MEL provides methodology-dedicated concepts and operators, which apply to both higher level method fragments, like stages and

195

deliverables, and low level method fragments, such as concepts and their relationships. MEL descriptions can be represented graphically, but also textual or in a tabular form. Method fragments are described by listing their components, and by specifying relationships with other method fragments. For process fragments, optionality, altemative steps, repeated steps, and parallelism can be specified. For product fragments, only optionality can be indicated. A large number of method fragment properties, such as goal, purpose, creator, source method, application domain, are keywords in MEL, possessing pre-determined value domains for ease of specification. To cope with method fragments derived from other method fragments (such as "logical data model" being derived from "data model"), and to enable multiple views on essentially the same method fragment (such as the manager's view on ERD and the analyst's view on ERD), an inheritance mechanism is introduced in MEL Figure 2 and 3 show some examples of method fragments described in MEL. PROCESS Perform Strategic analysis: LAYER Model; ID MRS/A3.1; SOURCE Merise; PARENT Obtain Strategic Plan; TYPE Abstraction; REQUIRED {Current Information system OPTIONAL};

(

)

- { Analyse organisation I Evaluate current flows}; - Create Strategic analysis Report

DELIVERABLES {Strategic analysis Report}.

Figure 2

Description of a process fragment

Components of process fragments are either activity descriptions, decisions, or other process fragments, structured by constructs to model iteration, parallelism, optionality, and choices. In the example, the process fragment Perform Strategic Analysis consists of three sub-processes, which are elaborated in other process fragments. The required input and the produced deliverables of the process fragments are given by their names, and described in corresponding product fragments. PRODUCT Current flow Diagram: LAYER Diagram; ID MRS/P4.2.3; SOURCE Merise; PART OF Strategic analysis Report; CREATED BY Evaluate current flows;

(

).

- Actor; - Flow

PRODUCT Actor: LAYER Concept; ID MRS/P4.2.3.1; SOURCE Merise; PART OF Current flow Diagram; ASSOCIATED AS is_source_of WITH Flow CARDINALITY (0,n);

196

ASSOCIATED AS is_target_of WITH Flow CARDINALITY (0,n). PRODUCT Flow: LAYER Concept; ID MRS/P4.2.3.2; SOURCE Merise; PART OF Current flow Diagram; ASSOCIATED AS flows_from WITH Actor CARDINALITY (1,1); ASSOCIATED AS flows_to WITH Actor CARDINALITY (1,1);

(

).

Figure 2b

RULE rl : flows_from(FI,A1) and flows_to(F1, A2) implies (At r A2); # flows do not have the same activity as source and destination #

Description of product fragments

The descriptions of products fragments contain, beside the usual properties, a list of all their constitutive diagrams and concepts. The concepts of the first product fragment Current Flow diagram are Actor and Flow, described by the other fragments. These concepts have a number of associations and syntactical rules. Besides its ability to describe method fragment, MEL provides constructs for method fragment selection, by offering query operations, and for method assembly, by offering operations to combine or disconnect method fragments. At present, the syntax and semantics of MEL are being formalised for the development of an interpreter for the language. Concurrently, we are experimenting with the configuration of method fragments into complete methods. This has resulted into a set of formal and semi-formal rules expressing the requirements on the consistency and the completeness of configured situational methods.

References Harmsen F. and S. Brinkkemper, Description and Manipulation of Method Fragments for the Assembly of Situational methods. Memoranda Informatica 94-52, ISSN 09243755, 17 pages, October 1994. Submitted for publication. Harmsen, F., S, Brinkkemper, H. Oei, Situational Method Engineering for Information System Project Approaches. In: A.A. Verrijn Stuart and T.W. Olle (Eds.), Methods and Associated Tools for the Information Systems Life Cycle. Proceedings of the IFIP WG 8.1 Working Conference, Maastricht, Netherlands, September 1994, IFIP Transactions A-55, North-Holland, 1994, ISBN 0-444-82074-4, pp. 169-194. Harmsen, F., S. Brinkkemper, H. Oei, A Language and Tool for the Engineering of Situational Methods for Information Systems Development, In: J. Zupancic & S. Wrycza (Eds.), Proceedings of the ISD'94 Conference, Bled, Slovenia, September 1994. Slooten, C. van, and S. Brinkkemper, A Method Engineering Approach to Information Systems Development. In the proceedings of the IFIP WG8.1 Working Conference on Information Systems Development Process. N. Prakash et al. (Eds.) Elsevier Science Publishers (A-30), pp. 167-186, September 1993.

Suggest Documents