Modeling Uncertain and Imprecise Information in

6 downloads 0 Views 281KB Size Report
these elements - a new Unified Modeling Language (UML) profile . 1 Introduction ..... program/tutorial/abstracts/F3.html. [6] T. Browning. Product ... //fasttrack.roundtable.com/upload/ browningpresentation-1perpage_v1. pdf. [7] T. Browning.
Modeling Uncertain and Imprecise Information in Process Modeling with UML Jing Xiao1 , Pierre Pinel1 , Lei Pi2 , Vincent Aranega2 , Claude Baron1 1

Universit´e de Toulouse, LATTIS 135 av. de Rangueil, 31077 Toulouse, France [email protected] 2 Universit´e de Toulouse, IRIT 118 route de Narbonne, 31062 Toulouse, France [email protected]

Abstract In designing and developing large complex products, people use models to describe and organize interrelated elements in both product systems (architecture, use cases, constraints...) and process systems (activities, deliverables, roles...). However, exchanged information is often incomplete, vague and not entirely determined at the beginning of the project and during its evolution. Our project is to improve predictability and stability of product development (PD) processes by proposing a framework to identify and manage uncertainty and imprecision. As a first step, we focus on modeling uncertain and imprecise information in PD process modeling. Drawing on our industrial experiences and literature reviews where we found that 112 elements1 often brought uncertainty and imprecision, we distinguish four types of uncertainty and imprecision. We then propose a simple, structured modeling framework to describe these elements - a new Unified Modeling Language (UML) profile .

Process modeling facilitates communication among different stakeholders in the project and helps people to describe and analyze interrelated elements of a product and its development processes with precise semantics. An emerging problem in this context is the management of the uncertain and imprecise information that obligatorily arises during the numerous operations associated with PD. Our target is to improve predictability and stability of PD processes by proposing a framework to identify and manage these uncertainties and imprecisions. The present paper will explain how to represent uncertainty and imprecision in PD processes. We identify four types of uncertainty and imprecision in PD processes. Thereafter, we concentrate on how to formalize and integrate them in process modeling, following a modeling workflow based on the UML (Unified Modeling Language) extension mechanism. We then display a meta-model for uncertainty and construct a structured modeling framework - a new UML profile from this meta-model. Finally, we apply this profile within a UML Class Diagram4 .

1

2

Introduction

To develop large complex products in a sustainable and long-term way, product development (PD)2 processes3 are used to cover product definition, specification, conception, realization, validation, integration, modification and project planning. In the last ten years, modeling has been applied at large in both product and process descriptions. International Conference on Management of Data COMAD 2008, Mumbai, India, December 17–19, 2008 c

Computer Society of India, 2008 1 This number is from an industrial nuclear safety case. Some representative elements in the context of PD processes will be introduced. 2 PD is an endeavor comprised of the myriad, multi-functional activities done between defining a technology or market opportunity and starting production [7]. 3 A process is an organized group of related activities that work together to create a result of value or a network of customer-supplier relationships and commitments that drive activities to produce results of value [7].

Uncertainty and Imprecision in PD processes

Generally, imperfect information is described by using the term “uncertainty” to refer to doubts about information validity and truth; and “imprecision” to refer to difficulties in expressing the information, e.g. if not completely known or not exactly describing some targets’ characteristics [2][14]. Authors have defined categories for both of them (see examples in [3][4]): • “uncertainty” has two categories: probability and possibility; • “imprecision” has four categories: set membership, interval membership, incompleteness and vagueness. 4 To limit the paper length, we will not present other applications of the new UML profile such as in Activity Diagram, Use Case, etc..

Such a classification is useful for the analysis of imperfect information (by fuzzy theory, probability theory, etc.) but not sufficient to represent its structure in PD processes. PD processes can be modeled as a network of activities that exchange deliverables. The term process-component designs the building block for the process [5][6]. A processcomponent is made up of activities concerning tasks, deliverables, and roles [15]. It indicates a logical collection of process elements that combine to accomplish a sizable chunk of process. From industrial experiences and literature reviews, we have determined four types of uncertainty and imprecision: • Role uncertainty and imprecision. The role describes a person who is responsible for carrying out the process [9]. His or her availability, competences and credibility in executing processes may be uncertain or imprecise. • Activity uncertainty and imprecision. Each activity has an uncertain duration and cost, an improvement curve, and risk of rework based on changes in its input [5]. Other uncertain elements concern the number of iterations between phases or activities, activity overlapping and stochastic activities where some of them are caused by interactions among the activities and some others caused by modifications impacting on the system. • Deliverable uncertainty and imprecision. A deliverable binds at least one activity with an optional state (Input, Interim or Output) [6]. Deliverables can be in form of information like documents, messages or can be pieces of software or physical products as parts of a system. Each of them is associated with a series of quality properties for metric analysis or review such as maturity of requirements, functional reusability, completeness and correctness of information, physical resistance, etc. that can be uncertain and imprecise. • Iteration uncertainty and imprecision. An iteration is an execution of a sequence of process-components. The intensity with which it is performed can be uncertain or imprecise, depending e.g. on processcomponent project size and process’s objective (see example in [15]).

3

Using UML to Model Uncertainty and Imprecision

Our objective in this part is to enable the modeling of the four types of uncertainty and imprecision that we described in chapter 2. The PD process modeling literature includes more than 20 frameworks, among which IDEF [10], Design Structure Matrices [6], Critical path and GDM [16], etc. are some popular tools in industrial practices, helpful in analyzing activities’ dependencies or impacts on process cost and time which are partial aspects of uncertainty and

imprecision in PD processes. Here, we choose a less specific language, UML, as our modeling language because of two important factors: 1. UML is “the” standard structured modeling framework that is been widely applied and combined with enterprise’s methodologies in industrial product development. Note that UML is not only useful for Software Engineering but also for System Engineering [12]. 2. UML may support uncertainty and imprecision modeling through its extension mechanisms. Using “stereotypes”, “tagged values”, and “constraints” allows tailoring the language to fit the descriptive needs of uncertainty and imprecision. We are going to see this in detail in section 3.1. 3.1

UML extension mechanisms

Extension mechanisms [11][13] are the means for extending UML at the meta-model level to support a new technology. Three concepts are used: stereotypes, tagged values and constraints. • Stereotypes, labeled , are used to introduce a new type of model element as an extension, or a classification of an existing base element (e.g. will be a new classification of class in our case). The stereotype concept allows the extended element to “behave as if it was instantiated from the meta-model construct” [13]. • Tagged values specify keyword-value pairs of model elements to indicate a new property for existing UML model elements; they can be applied to stereotypes. • Constraints are a set of well-formedness rules expressed in OCL (Object Constraint Language) or natural language. Constraints are the means by which new semantics can be introduced into UML. A defined set of these three concepts is called a profile [11]. Researchers and practitioners define and use profiles to adapt UML to their particular domain as we propose, here, a new profile in 3.3 to the domain of PD processes. 3.2

The modeling workflow

We propose a modeling workflow to model uncertainty and imprecision in the UML that involves several steps, as shown in figure 1 : 1. Establish meta-models for both uncertainty and imprecision. 2. From the meta-models, create a new UML profile which is extended from the UML 2.0 class as explained in section 3.1. In our case, we realized this kind of creation semi-automatically with a new prototype tool named Meta-Model To UML Profile

Figure 1: Overview of the uncertainty / imprecision modeling workflow

Figure 2: Partial uncertainty-of meta-model

(MM2UP) based on an Eclipse platform, proposed by one of the authors Vincent Aranega [1]. 3. The new profile provides new elements to integrate descriptions of uncertainty and imprecision into UML-based models. It is a mandatory requirement that the new profile shall not break existing UML modeling principles [13]. In other words, we have to guarantee the conformity between the “uncertainty-of”, “imprecision-of” meta-models and the UML-based process model by respecting the original UML constraints and defining the other constraints in the new profile. 3.3

Validation of the modeling workflow

To realize the modeling of uncertainty and imprecision, we followed the modeling workflow introduced in section 3.2. At first, we established the meta-model of “uncertainty-of” and the meta-model of “imprecision-of”. As both of them have almost the same structure, here, we just describe the meta-model of “uncertainty-of”. We also list the stereotypes which should be created for the new profile. Finally, we illustrate the application of this profile within a UML class diagram. 3.3.1

Meta-model of uncertainty-of

The “uncertainty-of” meta-model is shown partially as in figure 2. It is composed of three meta-classes: • Reference elements: to refer to uncertain elements; • Uncertainty category: to show the category of uncertainty (possibility or probability); • Uncertainty treatment: to represent a family of methods to analyze different types of uncertainty. These methods can be for quality estimations, impact analysis, etc. The meta-classes: uncertainty-of-role, uncertaintyof-activity, uncertainty-of-deliverable, uncertainty-ofiteration inherit the two common attributes defined in their super-meta-class uncertainty-of:

Figure 3: Partial list of stereotypes of the new profile • Is attribute uncertain: to indicate if uncertainty is on the attribute of an element; • DataSpecific: to describe an uncertain element in detail. Moreover, each new meta-class has its own attributes. Their meanings correspond to the descriptions in chapter 2 about the types of uncertainty and imprecision. 3.3.2

New UML profile and its application

Conforming to the “uncertainty-of” meta-model, a new UML profile has been created semi-automatically by MM2UP. We provided the list of stereotypes and, when applicable, the list of tagged values associated to a specific stereotype, see figure 3 (partial list). No specific icons are defined to represent these stereotypes. In general, the name of the stereotype corresponds to the name of the underlying concept in the uncertainty-of meta-model. For example, in UML diagrams, an “uncertainty-of” could be displayed as a Class, an Association, a Package. Application of the new profile in a Class Diagram is shown in figure 4. We apply the stereotypes which have been defined in the new profile to collect uncertain information of two classes: “Resource 1” and “Resource 2”. This allows us to model an entity (e.g. a machine or a software tool) of the real world from the viewpoint of uncertainty. Representing these stereotypes as classes, properties, operations, etc. permits the modeling of uncertainties on attributes and operations within a class. Moreover, applying > to relationships allows

[3] P. Bonissone and R. Tong. Editorial: reasoning with uncertainty in expert systems. International journal of Man Machine Studies, Vol.22:pp.241–250, 1985. [4] B. Bouchon and B. Meunier. La logique floue et ses applications. Addison-Wesley, 1995.

Figure 4: Modeling with the uncertainty-of profile the modeling of uncertainty of dependencies and relationships between classes.

4

Conclusions and Perspectives

The first part of our study in identifying and managing uncertainty and imprecision in PD processes concentrated on modeling uncertain and imprecise information in PD process modeling. We proposed two general meta-models “uncertainty-of” and “imprecision-of” to describe such imperfect information. The four types of uncertainty and imprecision provide the kernels or basic “building blocks” from which increasingly complex process structure can be built. We also made these meta-models operational by constructing a new UML profile. This generalized framework enables people to identify the uncertain and imprecise attributes and/or relationships of process models that will make consistent and valid descriptions of reality and permit engineers to describe and collect imperfect aspects of information exchanged in process modeling. Our next studies will focus on: (1) refining our two meta-models’ textual descriptions for the naming rules, legality rules and semantics by applying the models with an aeronautical product development processes example; (2) proposing a framework for uncertainty and imprecision management in product design process, planning and evolution. It will help people in efficient working, planningmaking and better mastering of PD processes. The term “management” is used here to designate active and proactive responses to uncertainty: active in that it seeks to build features into the design that enable the system operators to shift the evolution of the system as needed to avoid risks or to exploit opportunities; proactive in that it seeks to increase the performance of the system [8].

References [1] V. Aranega. D´emarche d’´elaboration de profils uml a` partir d’un m´eta-mod`ele m´etier. Technical report, IRIT, France, Juin 2008. [2] S. Ben Amor. Le choix d’un langage de mod´elisation des imperfections de l’information en aide a` la d´ecision. Annual Conference of the Administrative Sciences Association of Canada, Vol.25, 2004.

[5] T. Browning. Process modeling in a systeme engineering context. 2001. http: //www.incose.org/symp2001/archive/ program/tutorial/abstracts/F3.html. [6] T. Browning. Product development project cost, schedule, and risk management-using the design structure matrices (dsm). 2003. http: //fasttrack.roundtable.com/upload/ browningpresentation-1perpage_v1. pdf. [7] T. Browning. Key concepts in modeling product development processes. Published online in Wiley InterScience, Systems Engineering, Vol.9, No.2, November 2006. [8] R. De Neufville. Uncertainty management for engineering systems planning and design, engineering systems monograph. MIT Internal Report, USA, 2004. [9] R. Depke and G. Engels. On the integration of roles in the uml. Paderborn, 2000. http://wwwcs. uni-paderborn.de/cs/ag-engels/ Papers/2000/DepkeTR214.pdf. [10] A. Godwin and J. Gleeson. An assessment of the idef notations as descriptive tools. Information Systems, Vol.14:No. 1, pp.13–28, 1989. [11] P. Muller. Mod´elisation object avec UML. Eyrolles, 2000. [12] OMG. Uml profile for system engineering rfp. 2003. OMG Document, http://www.omg.org/ cgi-bin/doc?ad/2003-03-41. [13] S. Si Alhir. Extending standard uml with model composition semantics. Distributed Computing, Vol.44, No.2:pp.28–32, 2002. [14] P. Smets. Uncertainty Management in Information Systems: Imperfect information: Imprecision - Uncertainty. Kluwer Academic Publishers in Dordrecht, 1999. [15] B. Unhelkar. Process quality assurance for UMLbased projects. Addison Wesley, 2003. [16] P. Van Langen. The anatomy of design: Foundations, models and applications. SIKS Dissertation Series, Amsterdam, 2002.

Suggest Documents