A Domain Engineering Approach for Situational Method Engineering

Size: px
Start display at page:

Download "A Domain Engineering Approach for Situational Method Engineering"

Transcription

1 A Domain Engineering Approach for Situational Method Engineering Anat Aharoni and Iris Reinhartz-Berger Department of Management Information Systems, University of Haifa, Haifa 31905, Israel Abstract. Methodologies are one of the most significant key factors to the success of project development. Since there is no single methodology that can be uniquely pointed as the best", the discipline of situational method engineering (SME) promotes the idea of creating method components, rather than complete methodologies, and tailoring them to specific situations at hand. In this paper we present a holistic approach, called ADOM-SME, for representing method components and tailoring them into situational methodologies. This approach, whose roots are in the area of domain engineering (also known as product line engineering), supports specifying the five main methodological aspects (products, work units, stages, producers, and model units), as well as instantiating them into endeavour concepts, using a single frame of reference. Furthermore, the proposed approach enriches the standard metamodel for development methodologies, ISO/IEC 24744, by supporting the creation of valid situational methodologies and guiding their tailoring. Keywords: Method Engineering, Situational Method Engineering, Metamodeling, ISO/IEC 24744, Domain Engineering, Product Line Engineering. 1 Introduction The need for effective, appropriate, and flexible software development processes has increased as the complexity and variety of computer-based systems rose. Furthermore, the need to make method engineering more adaptable and flexible, taking into consideration organizational, technical, and human-related constraints and requirements, became important. The situational method engineering (SME) discipline [11, 15, 23] promotes the idea of creating method components rather than complete methodologies and tailoring them to specific situations at hand. Recently, efforts have been made for standardizing the area of (situational) method engineering, yielding the OPEN Process Framework (OPF) [21, 32], OMG's Software Process Engineering Metamodel (SPEM) [18], and ISO/IEC [5, 13]. ISO/IEC 24744, which is the most recent work and incorporates experience from earlier SME approaches, defines a metamodel for development methodologies. This standard refers to both methodologies and their instances (in the form of endeavours), as well as to five aspects of the modeled method components or methodologies: work units (the process aspect), work products (the artifact aspect), producers (the people aspect), stages (the temporal Q. Li et al. (Eds.): ER 2008, LNCS 5231, pp , Springer-Verlag Berlin Heidelberg 2008

2 456 A. Aharoni and I. Reinhartz-Berger aspect), and model units (the language aspect). All these aspects are described and specified using an object-oriented terminology, concentrating on the methodology structural aspects and paying less attention to the behavioral aspects. A designated graphical notation for ISO/IEC was proposed in [7]. This notation covers all concepts described by ISO/IEC 24744, but does not support the endeavour activities. This paper introduces an approach for representing methodologies and method components that also supports the integration and tailoring of method components into complete methodologies that best suit specific situations. This approach does not violate ISO/IEC 24744, but rather enriches it in order to support the creation of valid situational methodologies and guide their tailoring. It adapts a domain engineering approach, called Application-based DOmain Modeling (ADOM) [25, 30], to the special needs of the SME field. ADOM-SME is based on a three layered framework: application, domain, and language. The application layer includes the SME metamodel, which is a variation of that presented in ISO/IEC The domain layer includes the different method components and the developed situational methodologies. Finally, the language layer includes any modeling language that can be used for both describing metamodels and method component models. We chose to use Object- Process Methodology (OPM) [3] as the underlying language in this paper due to its balance treatment of structure and behavior specification, its formality (expressed through a metamodel [24]), and its accessibility to different types of users. OPM combines ideas from object-oriented and process-oriented approaches into a single frame of reference, enabling expression of mutual relationships and effects between objects and processes. Thus, ADOM-SME enables specifying in a single model work units, work products, producers, stages, and model units, as well as the structural and procedural relationships among them. The rest of the paper is organized as follow. Section 2 reviews recent works in the area of situational method engineering. Section 3 briefly describes ADOM and OPM, while Section 4 introduces and exemplifies the ADOM-SME approach and explains how it supports the different SME activities. Finally, Section 5 concludes and refers to future research plans. 2 Literature Review Situational Method Engineering (SME) [15, 23] deals with customizing and tailoring methodologies to specific situations. For this purpose, SME approaches treat methodologies as composed of method components, which are stored along with their usage features in method bases. Method engineers are responsible for searching, retrieving, and tailoring method components from those method bases according to the situations that they are facing. A situation in this context can be defined as a vector of characteristics that relate to the organization, the project, the developing team, the customer, etc. Two main aspects of method components and methodologies are structural (productrelated) and behavioral (process-related). Most of the current software development methodologies and a significant part of SME approaches focus on just a single aspect. The software process improvement community, centered on standards such as SPICE [12] and CMM [29], believes that these aspects are not completely separated and the quality of software products, for example, can be improved by improving the quality of

3 A Domain Engineering Approach for Situational Method Engineering 457 the processes that yield them [12]. Other approaches believe that complex systems cannot be viewed as predictable processes and, hence, they suggest concentrating on the products, which are changed less often. Gonzalez-Perez and Henderson-Sellers [6] further claim that products are more people-oriented and better at dynamically reorganizing the work to be done. Recently, more works have recognized the need to model both process and product aspects of methodologies. Some of them offer connection points for "plugging in" the complementary components, while others refer to the process and product aspects as elementary constituents of the approach. OMG's Software Process Engineering Metamodel (SPEM) [18], for example, is used for describing a concrete software development process or a family of related software development processes. Process enactment, i.e., planning and executing projects, is outside the scope of SPEM, although some examples of enactment are included for explanatory purposes. The OPEN Process Framework (OPF) [21, 32] is a free, public domain, industry-standard approach for the production of endeavor-specific development methods. It consists of a repository of reusable method components documented as hierarchical linked Web pages, including construction and usage guidelines. Its metamodel describes the organizational structure of the repository and includes six types of method components: Endeavor, Language, Producer, Stage, Work Product, and Work Unit. However, OPF mainly concentrates on the methodology layer at the expense of the endeavour layer and its relationships to the methodology layer. Recently, OPF's metamodel was reorganized to fit ISO/IEC OOSPICE [19] is an expansion of the Software Process Improvement and Capability determination (SPICE) approach that covers Component-based Development (CBD). OOSPICE refers only to the methodology layer and focuses on the processes, technology and quality concerns in component-based software development, neglecting the specification of structural and product aspects of methodologies. Its metamodel is directed at supporting the need for methodologies to be generated at various capability levels [8]. Incorporating experience from different works in the field, ISO/IEC [5, 13] defines a metamodel for development methodologies that refers to three modeling layers: metamodel, methodology, and endeavour. While the methodology layer is relevant to method engineers and includes models that are constrained and directed by the chosen metamodel, the endeavour layer is relevant to developers and includes models that are constrained and directed by the method in use. Instantiation relations (specified as belonging to the "powertype" class) are defined between these layers, such that an element in the endeavour (methodology) layer is a "powertype" instance of an element in the methodology (metamodel) layer. In particular, methodology elements are specialized into resources, which can be used as they are at the endeavour layer, and templates, which need to be instantiated at the endeavour layer. Five classes of templates and correspondingly five classes of endeavour elements are defined for representing work units, work products, producers, stages, and model units. All these concepts, including the behavioral ones such as work units and stages, are expressed via class diagrams (in UML notation), text tables, and a natural language, hurting the (semi-) formality of the methodology procedural aspects representation. The designated graphical notation for ISO/IEC that is proposed in [7] associates for each methodological concept a different symbol. Pre-conditions and post-conditions of actions are expressed as free textual expressions that are linked to

4 458 A. Aharoni and I. Reinhartz-Berger the corresponding action symbols. A methodology may be specified in this notation via several diagram types: lifecycle diagrams, which represent the overall structure of a method; enactment, which represent a specific enactment of a method and its relationship to the method specification; process diagrams, which describe the details of the processes used in a method; and action diagrams, which describe the usage interactions between tasks and work products. The notation specification does not explicitly refer to consistency issues between these types of diagrams. In particular, the same element can appear in several diagram types, playing different roles and exhibiting various (contradicting) features. Mirbel [16] divided SME approaches into three categories according to the different objectives they aim to achieve. The first category focuses on documenting the methodologies and their components (e.g., [22]). The second category deals with retrieving method components and evaluating their similitude (e.g., [2]). The focus of the third category is defining guidelines for reusing, tailoring, and customizing the different method components in daily developer tasks (e.g., [14]). Most SME approaches focus just on one activity, hence, belonging to a single SME category. OPF and SPEM, for example, mainly focus on the representation of method components. ISO/IEC also concentrates on the representation of method components, but provides implicit mechanisms for retrieving method components and basically tailoring them (e.g., the classes element kind, conglomerate, reference, and source). To summarize, the main shortcomings of existing SME approaches are: (1) supporting mainly the methodology layer, partially neglecting the endeavour layer which is needed for the developers who use situational methodologies, (2) using an objectoriented modeling language, specifying procedural aspects structurally, (3) applying multi-view approaches, potentially rising consistency problems, and (4) concentrating on just a single SME activity, making other activities more difficult and decreasing the ability for smooth transition between the different SME activities. The purpose of this paper is to present a holistic approach which overcomes these shortcomings without violating the ISO/IEC standard. 3 ADOM and OPM The Application-based DOmain Modeling (ADOM) approach [25, 30] aims at handling both reuse and validation of application models according to the domain knowledge. Its framework includes three layers: application, domain, and language. The application layer consists of models of particular applications, including their structure and behavior. The intermediate domain layer consists of specifications of various domains, i.e., families of applications that share common features as well as exhibit variability. Examples of domains that can be included in the domain layer are web applications, multi agent systems, and process control systems. The domain specifications capture the knowledge gained in specific domains in the form of concepts, features, and constraints. Finally, the language layer includes meta-models of modeling languages, such as UML. ADOM is a quite general approach and can be applied to different modeling languages. However, when applying ADOM to a specific modeling language, this language is used in both domain and application layers, easing the inter-layer tasks by employing the same terminology in both layers.

5 A Domain Engineering Approach for Situational Method Engineering 459 In the context of SME, development methodologies and processes can be considered as a domain. Thus, the application layer, which corresponds to the endeavour layer in ISO/IEC 24744, includes the different method components and the developed situational methodologies, while the domain layer, which corresponds to the methodology layer in ISO/IEC 24744, includes the SME metamodel. ADOM's reuse process is mainly done by configuration and specialization, such that the constraints enforced by the domain layer provide guidance to the reuse process and the development of models in the application layer. Configuration is the selection of a subset of existing elements from a domain model for the purpose of specifying a lawful specific application model. ISO/IEC refers to this type of operations through resources, which are methodology elements. Specialization, on the other hand, is the result of applying general knowledge derived from a domain model into a specific application model. In [28] five possible specialization operations are identified: refinement, sub-typing, contextual adoption, omission, and inclusion. ISO/IEC refers to this type of operations through templates, which are also methodology elements that are "powertype" instantiated by endeavour elements. The ADOM approach also explicitly enforces constraints among the different layers: the domain layer enforces constraints on the application layer, while the language layer enforces constraints on both the application and domain layers. Furthermore, as opposed to ISO/IEC 24744, the ADOM approach explicitly refers to validation issues and, in particular, whether an application model is considered as a valid instantiation of a domain model. More on this issue can be found at [25]. As noted, ADOM can be used with various modeling languages in order to support different development tasks, such as business modeling, requirement elicitation, and analysis and design. Indeed, the only requirement of ADOM from the associated modeling language is to have a classification mechanism that enables categorizing elements according to other elements (UML stereotypes are an example for such mechanism). However, ADOM promotes using the same modeling languages, techniques, and methods in both domain and application layers. The reasons for this are: (1) treating domain models similarly to application models utilizes to the fullest the expressiveness of the modeling language. In particular, it extends the ability to specify behavioral constraints or templates with respect to several domain analysis methods, and (2) using the same terminology in both layers makes the inter-layer tasks easier. In particular, the creation and validation of application models according to domain models in ADOM is quite straight-forward, consequently resulting in a more accessible approach for the developers and a simpler approach for tool developers. In this work we choose to use Object-Process Methodology (OPM) which supports the coexistence of structural and behavioral specifications in the same model, in order to support handling the five main methodological aspects presented by ISO/IEC 24744: product, process, producer, stage, and model unit. OPM [3] is a holistic approach to the modeling, study, development, and evolution of systems, supported by a CASE tool called OPCAT [20]. The main elements in OPM are entities and links. Entities generalize objects, processes, and states. Objects are things that exist, while processes are things that transform objects by creating or destroying them, or by changing their states. Two main features of OPM entities are affiliation, which determines whether the entity is systemic or external (environmental), and essence, which

6 460 A. Aharoni and I. Reinhartz-Berger determines whether the entity is physical or informational. Links, which connect entities (objects, processes, or states), can be structural or procedural. Structural links express static, structural relations between pairs of objects or processes. Aggregation, generalization, characterization, and instantiation are the four fundamental structural relations in OPM. General structural relations can take on any semantics, which is expressed textually by their user-defined tags. The behavior of a system is manifested in OPM in three major ways: (1) processes can transform (generate, consume, or change the state of) objects, (2) objects can enable processes without being transformed by them, and (3) objects can trigger events that (at least potentially, if preconditions are met) invoke processes. For each such way, different procedural links are defined. The complexity of an OPM model is controlled through three refinement/ abstraction processes, which enable the user to recursively specify and refine the system under development to any desired level of detail without losing legibility and comprehension of the complete system: in-zooming/out-zooming concentrates on behavioral and procedural refinement/abstraction, unfolding/folding focuses on structural refinement/abstraction, and state expressing/suppressing shows/hides the possible states of an object. These mechanisms enable smooth transition between the different development stages. Furthermore, a set of rules guarantees that the various diagrams in the same model are consistent with each other (these rules are enforced by OP- CAT). Soffer et al. [27] proved that OPM is ontologically complete according to the Bunge-Wand-Weber (BWW) evaluation framework, which aims to be a theoretical foundation for understanding the modeling of information systems. In OPM, each entity exhibits two additional features: role and multiplicity indicator. Like UML stereotypes, a role is a model entity whose information content and form are the same as those of the basic model entity, but its meaning and usage are different. Roles are used within an application model in order to associate an entity to its domain counterpart. They are recorded in the upper left corner of the entity frame. A special kind of role, called tailoring info, may appear in a domain model, indicating the tailoring information of the corresponding elements. As will be explained in Section 4, the tailoring info should get values in the application model rather than be specialized or configured and is used for retrieval purposes. As the number of tailoring info attributes may be very large, separate XML or SGML files can be maintained instead (or in addition to) the visual representation of the tailoring info in the domain models. The exact lists of features that characterize the different types of method components is derived from works that were done in the area of SME, such as [16, 17], from practitioners, and from the element kinds in ISO/IEC A multiplicity indicator, specified in the domain model, constrains the number of application elements that can be configured or specialized from the same domain element in any application in the domain. The multiplicity indicators of OPM entities (objects, processes, and states) are recorded in the lower right corner of their frame and is optionally many (0..m) by default, i.e., when not explicitly appear. The multiplicity indicators of links are specified closely to the link ends, similarly to cardinalities in application models, and they are mandatory single (1..1) by default, in order to preserve cardinality conventions from the application layer. Note that while link cardinality refers to the number of instantiations of a certain application concept in the data layer, multiplicity indicators of links refer to the number of instantiations of a certain domain concept (i.e., type) in the application layer.

7 A Domain Engineering Approach for Situational Method Engineering ADOM-SME and Its Supported Activities In this section, we explain how the different SME activities are supported in the ADOM-SME approach. Section 4.1 refers to the domain (methodology) layer, while Section 4.2 refers to the creation and representation of method components in the application (endeavour) layer. Finally, the retrieval and tailoring activities are the focus of Section The Methodology Layer in ADOM-SME Fig. 1 is the top-level diagram in the domain (methodology) layer of ADOM-SME. It includes the five methodological aspects mentioned in ISO/IEC However, as opposed to ISO/IEC where all these concepts are represented by object classes, work units and stages are represented in the proposed approach as process classes, emphasizing their procedural and behavioral nature. Due to the OPM ability to characterize objects by processes and processes by objects, one can specify the behavior of objects and associate informational features to processes. Furthermore, as opposed to work products and model units that are systemic (internal) and informational objects, producers are environmental (external) and physical objects that represent human stakeholders or groups of such. Similarly to the "actiontype" class in ISO/IEC 24744, ADOM-SME has means for expressing the relationships between processes and products: if a process creates a product than a result link connects them, if a process modifies a product than an effect link connects them, and if a process only reads a product than an instrument link connects them. However, the expressive of ADOM- SME goes beyond that of ISO/IEC in representing other relationships between the different concepts: a process can consume (destroy) a product, a product or a producer can trigger a process, and a process (product) can consist of other processes (products). Pre-conditions and post-conditions are expressed as objects (possibly in specific states) that are linked via in-coming or out-going links to processes. Partial Legend: informative, systemic object physical, environmental object process state generalization link characterization link aggregation link bi-directional structural link agent link instrument link effect link consumption/result link "or" relaionship Fig. 1. The top level domain (methodology) model in ADOM-SME

8 462 A. Aharoni and I. Reinhartz-Berger Due to space limitations, we concentrate here on the procedural aspects of the methodology which ADOM-SME uniquely treats, namely work units and stages. A work unit may be triggered by producers and use model units in order to affect (create, destroy, or modify) work products. Unfolding the work unit concept, Fig. 2 shows three specializations of work units: process, task, and technique. A process is a largegrained work unit operating within a given area of expertise. Tasks and techniques are small-grained work units: tasks focus on what must be done in order to achieve given purposes, and techniques refer to how to achieve these purposes. A process consists of (sub-) processes or tasks, and a technique may be mandatory, recommended, discourage, forbidden, or optional for a certain task [9]. Each work unit may need to save different types of statuses and periods. This is modeled in the domain (methodology) layer as two (mandatory many) attributes that a work unit should exhibit. In addition, work units exhibit four tailoring info attributes: Min Capability Level, which refers to the minimal requirements for the maturity of the organization regarding the performance of a given work unit; Unit Source, which indicates the methodologies from which the work unit is derived, Project Duration, which specifies the duration of projects to which the given work unit is suitable; and Flexibility to Changes, which specifies the forgivingness of the given work unit to frequent client changes. For clarity purposes, the tailoring info attributes are grayed, separating them from "regular" attributes in the methodology layer. In ISO/IEC 24744, stages are used for specifying the temporal aspect of methodologies and method components. Stages are divided into stages with duration, which are managed intervals of time within endeavours, and instantaneous stages, which are managed points in time within endeavours. We extend this usage in order to support tailoring of several work units into more meaningful method components. In other words, stages include different work units and guide their execution. Four common ways to tailor work units are sequentially, concurrently, incrementally, and iteratively. Fig. 3 exemplifies concurrent stages, in which the work units are executed independently and/or in parallel, and iterative stages, in which single work units are executed several times in order to improve the created work products. Both stages are Fig. 2. Unfolding the work unit concept in the domain (methodology) layer of ADOM-SME

9 A Domain Engineering Approach for Situational Method Engineering 463 (a) (b) Fig. 3. (a) Zooming into a concurrent stage. (b) Zooming into an iterative stage. specializations of the Stage concept. Note that in OPM the vertical axis within an inzoomed process defines the execution order: the sub-processes of a sequential process are depicted in the in-zoomed frame of the process stacked on top of each other with the earlier process on top of a later one, while sub-processes of a parallel process appear side by side, at the same height. 4.2 The Endeavour Layer in ADOM-SME In the application layer of ADOM-SME, the different (specific) method components and situational methodologies are specified, using the domain model terminology, rules, and constraints. For this purpose, each element in an application (endeavour) model is associated with domain (methodology) elements as its roles, such that an application element has to fulfill all the constraints induced by its associated roles (domain elements) in the domain layer. Furthermore, all the tailoring info attributes of a domain element have to get values (in the form of states) in the corresponding instantiated application elements. Fig. 4 demonstrates an endeavour method component taken from RUP [26]. All the roles of systemic, informational objects in these figures are specializations of work products as specified in the methodology layer. Fig. 4 (a) zooms into the "Requirement Extraction" process, modeling its conventions, documents, required participants, and the main tasks. Fig. 4 (b) unfolds the task called "obtain an understanding of the domain" to show its recommended and optional techniques. Finally, Fig. 4(c) specifies the situations to which the requirement extraction process is suitable: the organization capability level is at least 2, the project duration is at least one year, and the flexibility to changes is low. The unit source of this component is RUP. 4.3 Retrieving and Tailoring Method Components in ADOM-SME As noted, in the domain layer of ADOM-SME, the different methodological concepts exhibit tailoring info attributes which are instantiated in the application (endeavour) layer, specifying the exact situations (or ranges of situations) to which a given method component suits. The requirement extraction process from Fig. 4, for example, is suitable for CMMI requirements for Maturity Level of at least 2 [10], for customers who do not impose changes frequently, and for projects that are planned to be developed more than one year.

10 464 A. Aharoni and I. Reinhartz-Berger (a) (b) (c) Fig. 4. (a) The "Requirement Extraction" process in-zoomed. (b) The "Obtain an Understanding of the Domain" task unfolded, showing its recommended and optional techniques. (c) The "Requirement Extraction" process unfolded, showing its tailoring info. For carrying out the retrieval and tailoring activities, we treat the different method components as semantic Web services. Their inputs, outputs, pre- and post-conditions, and triggers are automatically translated to OWL-S [1], while the methodology layer serves as their ontology. Current semantic web services discovery solutions were developed in the context of automatic service composition. Thus, the client of the discovery procedure is an automated computer program rather than a human, with little tolerance, if any, to inexact results. However, in our case, method components which might be semantically distanced from each other can be manually glued by method engineers. Hence, we chose to use a semantic approach to approximate service retrieval, called OPOSSUM [31]. OPOSSUM's model relies on a simple and extensible keyword-based query language, and enables efficient retrieval of approximate results, including approximate service compositions. In order to retrieve compositions that contain method components from different methodologies, dependencies between method components are to be inferred. OPOSSUM treats two types of inferring dependencies between Web services (method components in our case): flow and empirical. Two method components q and p are flow-dependent if the output of q can be used as an input of p. Note

11 A Domain Engineering Approach for Situational Method Engineering 465 that the ontology (i.e., the domain model) is used for helping the tool find "correct" input-output matches. Parameter relaxation, concept hierarchy relaxation, instance relaxation, and property relaxation are used for inferring flow dependencies. Empirical dependencies are used when prior knowledge of relations between Web services exists. In particular, we can infer empirical dependencies from stages in the method base that integrate different work units. OPOSSUM handles the following constructs for inferring empirical dependencies: sequence, if-then-else, repeat-until, split, and split+join. When working with OPOSSUM, the method engineers define queries that specify the situations to which methodologies have to be created: the different types of tailoring info attributes are presented to the method engineers and they need to choose the relevant characteristics and their suitable values. Furthermore, the method engineers can decide whether the tailoring info will be checked for every method component or for complete compositions using aggregated functions, such as min, max, sum, avg, and count. The method base is first searched for method components that satisfy the component-related tailoring info conditions. Then, OPOSSUM runs on the retrieved (a) (b) Fig. 5. (a) The "Iterative Requirement Extraction" stage. (b) The "Requirement Extraction while On Site Customer" stage.

12 466 A. Aharoni and I. Reinhartz-Berger method components, yielding a ranked list of possible compositions. These compositions are presented to the method engineers as stages that tailor the different work units. The sequence construct, for example, is represented by the sequential stage, the split+join construct is represented by the concurrent stage, and the repeat-until construct is represented by the incremental or iterative stages, depending on the resolution of the work products that it modifies. Fig. 5 exemplifies two tailoring results: in Fig. 5 (a) the "Requirement Extraction" process is tailored iteratively since this process appears so in the context of other methodologies, such as RUP, causing OPOS- SUM infer an empirical dependency between an iterative stage and the requirement extraction process. In Fig. 5 (b), the same process is tailored concurrently to the "On Site Customer" work unit, taken from XP [4]. These components are tailored in parallel due to the absence of matching between their inputs and outputs. Note that the similar triggers and effects of these work units (e.g., Client and Contract) are percolated to the wrapping stage "Requirement Extraction while On Site Customer", improving the model readability. In both figures, the "signature" of the requirement extraction process is the same and is achieved by out-zooming Fig 4 (a). After yielding the ranked list of compositions from OPOSSUM, compositions that violate the composition-related tailoring info are removed. The method engineer, for example, may require getting compositions in which the maximal project duration of their work units is 10 years. Compositions that violate this constraint are removed at this step. 5 Conclusions and Future Work As there is no single universally applicable development methodology, the importance of SME approaches that support representing, retrieving, and tailoring method components to given situations has been increased. The proposed holistic ADOM- SME approach, whose roots are in domain engineering, overcomes several main shortcomings of existing SME approaches. First, ADOM-SME enables specifying both structural and behavioral aspects of the method components, as well as expressing the relationships between them. Second, the tailoring info attributes, defined in the methodology layer and used in the endeavour layer, support defining situations to which a specific method component suits, while the stage concept provides ways to tailor method components. Third, using OPOSSUM, approximate method component compositions are achieved, enabling the method engineer manually gluing and developing the missing parts. Finally, the ADOM-SME approach is supported by a case tool that helps maintaining the diagrams consistent and enables validating the endeavour models against the methodology models. As for the future, we plan to extend the repository of method components with methodologies from the literature and from the industry. We further plan to improve and empirically test the tailoring activity. Currently OPOSSUM treats the method components as close boxes (services) and does not refer to their inner structure and behavior. Looking into the method components may enable other, more sophisticated tailoring options. These options and their suitability to different situations will be questioned with experts and practitioners.

13 A Domain Engineering Approach for Situational Method Engineering 467 References 1. Ankolekar, A., Martin, D.L., Zeng, H.J.R., Sycara, K., Burstein, P.M., Lassila, O., Mcilraith, S.A., Narayanan, S., Payne: DAML-S: Semantic markup for web services. In: Proceedings of the International Semantic Web Workshop (SWWS), pp (2001) 2. Brinkkemper, S., Saeki, M., Harmsen, F.: Assembly techniques for method engineering. In: Pernici, B., Thanos, C. (eds.) CAiSE LNCS, vol. 1413, pp Springer, Heidelberg (1998) 3. Dori, D.: Object-Process Methodology A Holistic System Paradigm. Springer, Heidelberg (2002) 4. Extreme Programming Web Site (2006), 5. Gonzalez-Perez, C.: Supporting Situational Method Engineering with ISO/IEC and the Work Product Pool Approach. In: Proceedings on Situational Method Engineering: Fundamentals and Experiences, pp (2007) 6. Gonzalez-Perez, C., Henderson-Sellers, B.: A work product pool approach to methodology specification and enactment. J. Syst. Software (2007), doi: /j.jss Gonzalez-Perez, C., Henderson-Sellers, B.: Notation for ISO/IEC 24744, 07N3781%20MOS-006%20ISO_IEC% %20Notation% 20-%20NWI%20Form%20V1.0.pdf 8. Gonzalez-Perez, C., McBride, T., Henderson-Sellers, B.: A metamodel for assessable software development methodologies. Software Qual. J (in press, 2004) 9. Graham, I., Henderson-Sellers, B., Younessi, H.: The OPEN Process Specification. Addison-Wesley, Reading (1997) 10. Grundmann, M.: A CMMI Maturity Level 2 assessment of RUP, Henderson-Sellers, B.: SPI A Role for Method Engineering. In: Proceedings of the 32nd EUROMICRO Conference on Software Engineering and Advanced Applications (2006) 12. Humphrey, W.S.: Managing the Software Process. MA.ISO/IEC, ISO/IEC Software Process Assessment Part 1: Concepts and Vocabulary. Addison-Wesley, Reading (1989) 13. ISO/IEC. ISO/IEC 24744, Software Engineering Metamodel for Development Methodologies, 1st edn. (2007) 14. Mirbel, I., de Rivieres, V.: Adapting Analysis and Design to Software Context: the JECKO Approach. In: Bellahsène, Z., Patel, D., Rolland, C. (eds.) OOIS LNCS, vol. 2425, pp Springer, Heidelberg (2002) 15. Mirbel, I., Ralyté, J.: Situational method engineering: combining assembly-based and roadmap-driven approaches. Requirements Engineering 11(1), (2006) 16. Mirbel, I.: Rethinking ISD methods: Fitting project team members profiles. I3S technical report I3S/RR FR (2004), Mirbel, I.: Method chunk federation (2006), OMG, Software Process Engineering Metamodel Specification, Version 1.1 (2005), OOSPICE, OPCAT inc. OPCAT web site, OPEN Process Framework (OPF) Web Site,

14 468 A. Aharoni and I. Reinhartz-Berger 22. Punter, H.T., Lemmen, K.: The MEMA-model: towards a new approach for Method Engineering. Information and Software Technology 38(4), (1996) 23. Ralyté, J., Deneckere, R., Rolland, C.: Towards a generic model for situational method engineering. In: Eder, J., Missikoff, M. (eds.) CAiSE LNCS, vol. 2681, pp Springer, Heidelberg (2003) 24. Reinhartz-Berger, I., Dori, D.: A Reflective Metamodel of Object-Process Methodology: The System Modeling Building Blocks. In: Green, P., Rosemann, M. (eds.) Business Systems Analysis with Ontologies, pp Idea Group, Hershey (2005) 25. Reinhartz-Berger, I., Sturm, A.: Enhancing UML Models: A Domain Analysis Approach. Journal on Database Management (JDM) 19(1), (2007); special issue on UML Topics 26. Schach, S.R.: An Introduction to Object-Oriented Analysis and Design with UML and the Unified Process. McGraw-Hill/Irwin (2004) 27. Soffer, P., Golany, B., Dori, D., Wand, Y.: Modelling Off-the-Shelf Information Systems Requirements: An Ontological Approach. Requirements Engineering 6(3), (2001) 28. Soffer, P., Reinhartz-Berger, I., Sturm, A.: Facilitating Reuse by Specialization of Reference Models for Business Process Design. In: The 8th Workshop on Business Process Modeling, Development, and Support (BPMDS 2007), in conjunction with CAiSE 2007 (2007) 29. Software Engineering Institute, CMMI-SE/SW/IPPD/SS, V1.1, Continuous. CMMI for Systems Engineering/Software Engineering/Integrated Product and Process Development/Supplier Sourcing, Continuous Representation, version 1.1 (2002) 30. Sturm, A., Reinhartz-Berger, I.: Applying the Application-based Domain Modeling Approach to UML Structural Views. In: Atzeni, P., Chu, W., Lu, H., Zhou, S., Ling, T.-W. (eds.) ER LNCS, vol. 3288, pp Springer, Heidelberg (2004) 31. Toch, E., Gal, A., Reinhartz-Berger, I., Dori, D.: A Semantic Approach to Approximate Service Retrieval. ACM Transactions on Internet Technology 8(1) (2007), OPOSSUM is available at: Zowghi1, D., Firesmith, D.G., Henderson-Sellers, B.: Using the OPEN Process Framework to Produce a Situation-Specific Requirements Engineering Method. In: Proceedings of SREP 2005, pp (2005)

Open Reuse of Component Designs in OPM/Web

Open Reuse of Component Designs in OPM/Web Open Reuse of Component Designs in OPM/Web Iris Reinhartz-Berger Technion - Israel Institute of Technology ieiris@tx.technion.ac.il Dov Dori Technion - Israel Institute of Technology dori@ie.technion.ac.il

More information

Developing Complex Systems with Object-Process Methodology Using OPCAT

Developing Complex Systems with Object-Process Methodology Using OPCAT Developing Complex Systems with Object-Process Methodology Using OPCAT Dov Dori, Iris Reinhartz-Berger, and Arnon Sturm Technion, Israel Institute of Technology Technion City, Haifa 32000, Israel Emails:

More information

Guiding System Modelers in Multi View Environments: A Domain Engineering Approach

Guiding System Modelers in Multi View Environments: A Domain Engineering Approach Guiding System Modelers in Multi View Environments: A Domain Engineering Approach Arnon Sturm Department of Information Systems Engineering Ben-Gurion University of the Negev, Beer Sheva 84105, Israel

More information

An OPM-Based Metamodel of System Development Process

An OPM-Based Metamodel of System Development Process An OPM-Based Metamodel of System Development Process Dov Dori and Iris Reinhartz-Berger Technion, Israel Institute of Technology Technion City, Haifa 32000, Israel Emails: {dori@ie, ieiris@tx}.technion.ac.il

More information

Method Chunk Federation

Method Chunk Federation Method Chunk Federation Isabelle Mirbel Laboratoire I3S, Les Algorithmes - Route des Lucioles, BP 121 F-06903 Sophia Antipolis, Cedex - France Abstract. Method Engineering aims at providing effective solutions

More information

Matching Models of Different Abstraction Levels: A Refinement Equivalence Approach

Matching Models of Different Abstraction Levels: A Refinement Equivalence Approach Matching Models of Different Abstraction Levels Chapter IV Matching Models of Different Abstraction Levels: A Refinement Equivalence Approach Pnina Soffer, Haifa University, Israel Iris Reinhartz-Berger,

More information

Spemmet - A Tool for Modeling Software Processes with SPEM

Spemmet - A Tool for Modeling Software Processes with SPEM Spemmet - A Tool for Modeling Software Processes with SPEM Tuomas Mäkilä tuomas.makila@it.utu.fi Antero Järvi antero.jarvi@it.utu.fi Abstract: The software development process has many unique attributes

More information

Using and Extending the SPEM Specifications to Represent Agent Oriented Methodologies

Using and Extending the SPEM Specifications to Represent Agent Oriented Methodologies Using and Extending the SPEM Specifications to Represent Agent Oriented Methodologies Valeria Seidita 1, Massimo Cossentino 2, and Salvatore Gaglio 1,2 1 Dipartimento di Ingegneria Informatica, University

More information

Using Component-oriented Process Models for Multi-Metamodel Applications

Using Component-oriented Process Models for Multi-Metamodel Applications Using Component-oriented Process Models for Multi-Metamodel Applications Fahad R. Golra Université Européenne de Bretagne Institut Télécom / Télécom Bretagne Brest, France Email: fahad.golra@telecom-bretagne.eu

More information

Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach

Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach Ninat Wanapan and Somnuk Keretho Department of Computer Engineering, Kasetsart

More information

Evaluating Aspects of Systems Modeling Languages by Example: SysML and OPM

Evaluating Aspects of Systems Modeling Languages by Example: SysML and OPM Evaluating Aspects of Systems Modeling Languages by Example: SysML and OPM Yariv Grobshtein and Dov Dori Faculty of Industrial Engineering and Management Technion Israel Institute of Technology Technion

More information

This document is a preview generated by EVS

This document is a preview generated by EVS INTERNATIONAL STANDARD ISO/IEC 24744 Second edition 2014-11-15 Software engineering Metamodel for development methodologies Ingénierie du logiciel Métamodèle pour les méthodologies de développement Reference

More information

QoS-aware model-driven SOA using SoaML

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

More information

Metamodeling for Business Model Design

Metamodeling for Business Model Design Metamodeling for Business Model Design Facilitating development and communication of Business Model Canvas (BMC) models with an OMG standards-based metamodel. Hilmar Hauksson 1 and Paul Johannesson 2 1

More information

Iris Reinhartz-Berger. University of Haifa, Israel

Iris Reinhartz-Berger. University of Haifa, Israel Iris Reinhartz-Berger Department of Management Infromation Systems University of Haifa, Israel Agenda An overview of Domain Engineering Domain Engineering concepts The two layer model and its related activities

More information

APPLICATION-BASED DOMAIN ANALYSIS APPROACH AND ITS OBJECT-PROCESS METHODOLOGY IMPLEMENTATION

APPLICATION-BASED DOMAIN ANALYSIS APPROACH AND ITS OBJECT-PROCESS METHODOLOGY IMPLEMENTATION February 20, 200 :6 WSPC/-ijseke 00404 International Journal of Software Engineering and Knowledge Engineering Vol. 8, No. 8 (2008) 28 c World Scientific Publishing Company APPLICATION-BASED DOMAIN ANALYSIS

More information

A Tutorial on Agent Based Software Engineering

A Tutorial on Agent Based Software Engineering A tutorial report for SENG 609.22 Agent Based Software Engineering Course Instructor: Dr. Behrouz H. Far A Tutorial on Agent Based Software Engineering Qun Zhou December, 2002 Abstract Agent oriented software

More information

An Ontological Analysis of Metamodeling Languages

An Ontological Analysis of Metamodeling Languages An Ontological Analysis of Metamodeling Languages Erki Eessaar and Rünno Sgirka 2 Department of Informatics, Tallinn University of Technology, Estonia, eessaar@staff.ttu.ee 2 Department of Informatics,

More information

Requirements Engineering for Enterprise Systems

Requirements Engineering for Enterprise Systems Association for Information Systems AIS Electronic Library (AISeL) AMCIS 2001 Proceedings Americas Conference on Information Systems (AMCIS) December 2001 Requirements Engineering for Enterprise Systems

More information

An Agent Modeling Language Implementing Protocols through Capabilities

An Agent Modeling Language Implementing Protocols through Capabilities An Agent Modeling Language Implementing Protocols through Capabilities Nikolaos Spanoudakis 1,2 1 Technical University of Crete, Greece nikos@science.tuc.gr Pavlos Moraitis 2 2 Paris Descartes University,

More information

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University Metamodeling Janos ISIS, Vanderbilt University janos.sztipanovits@vanderbilt.edusztipanovits@vanderbilt edu Content Overview of Metamodeling Abstract Syntax Metamodeling Concepts Metamodeling languages

More information

Evaluation of Commercial Web Engineering Processes

Evaluation of Commercial Web Engineering Processes Evaluation of Commercial Web Engineering Processes Andrew McDonald and Ray Welland Department of Computing Science, University of Glasgow, Glasgow, Scotland. G12 8QQ. {andrew, ray}@dcs.gla.ac.uk, http://www.dcs.gla.ac.uk/

More information

Integrating Domain Specific Modeling into the Production Method of a Software Product Line

Integrating Domain Specific Modeling into the Production Method of a Software Product Line Integrating Domain Specific Modeling into the Production Method of a Software Product Line Gary J. Chastek Software Engineering Institute John D. McGregor Clemson University Introduction This paper describes

More information

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview CHAPTER 1 Topic: UML Overview After studying this Chapter, students should be able to: Describe the goals of UML. Analyze the History of UML. Evaluate the use of UML in an area of interest. CHAPTER 1:

More information

Software Development Methodologies

Software Development Methodologies Software Development Methodologies Lecturer: Raman Ramsin Lecture 7 Integrated Object-Oriented Methodologies: OPEN and FOOM 1 Object-oriented Process, Environment and Notation (OPEN) First introduced in

More information

A UML-based Process Meta-Model Integrating a Rigorous Process Patterns Definition

A UML-based Process Meta-Model Integrating a Rigorous Process Patterns Definition A UML-based Process Meta-Model Integrating a Rigorous Process Patterns Definition Hanh Nhi Tran, Bernard Coulette, Bich Thuy Dong 2 University of Toulouse 2 -GRIMM 5 allées A. Machado F-3058 Toulouse,

More information

A Planning-Based Approach for the Automated Configuration of the Enterprise Service Bus

A Planning-Based Approach for the Automated Configuration of the Enterprise Service Bus A Planning-Based Approach for the Automated Configuration of the Enterprise Service Bus Zhen Liu, Anand Ranganathan, and Anton Riabov IBM T.J. Watson Research Center {zhenl,arangana,riabov}@us.ibm.com

More information

Pattern for Structuring UML-Compatible Software Project Repositories

Pattern for Structuring UML-Compatible Software Project Repositories Pattern for Structuring UML-Compatible Software Project Repositories Pavel Hruby Navision Software a/s Frydenlunds Allé 6 2950 Vedbaek, Denmark E-mail: ph@navision.com Web site: www.navision.com/services/methodology/default.asp

More information

Developing Web-Based Applications Using Model Driven Architecture and Domain Specific Languages

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

More information

The Relationships between Domain Specific and General- Purpose Languages

The Relationships between Domain Specific and General- Purpose Languages The Relationships between Domain Specific and General- Purpose Languages Oded Kramer and Arnon Sturm Department of Information Systems Engineering, Ben-Gurion University of the Negev Beer-Sheva, Israel

More information

Perspectives on User Story Based Visual Transformations

Perspectives on User Story Based Visual Transformations Perspectives on User Story Based Visual Transformations Yves Wautelet 1, Samedi Heng 2, and Manuel Kolp 2 1 KU Leuven, Belgium yves.wautelet@kuleuven.be, 2 LouRIM, Université catholique de Louvain, Belgium

More information

UML-Based Conceptual Modeling of Pattern-Bases

UML-Based Conceptual Modeling of Pattern-Bases UML-Based Conceptual Modeling of Pattern-Bases Stefano Rizzi DEIS - University of Bologna Viale Risorgimento, 2 40136 Bologna - Italy srizzi@deis.unibo.it Abstract. The concept of pattern, meant as an

More information

2 nd UML 2 Semantics Symposium: Formal Semantics for UML

2 nd UML 2 Semantics Symposium: Formal Semantics for UML 2 nd UML 2 Semantics Symposium: Formal Semantics for UML Manfred Broy 1, Michelle L. Crane 2, Juergen Dingel 2, Alan Hartman 3, Bernhard Rumpe 4, and Bran Selic 5 1 Technische Universität München, Germany

More information

Domain-Driven Development with Ontologies and Aspects

Domain-Driven Development with Ontologies and Aspects Domain-Driven Development with Ontologies and Aspects Submitted for Domain-Specific Modeling workshop at OOPSLA 2005 Latest version of this paper can be downloaded from http://phruby.com Pavel Hruby Microsoft

More information

Automatic Reconstruction of the Underlying Interaction Design of Web Applications

Automatic Reconstruction of the Underlying Interaction Design of Web Applications Automatic Reconstruction of the Underlying Interaction Design of Web Applications L.Paganelli, F.Paternò C.N.R., Pisa Via G.Moruzzi 1 {laila.paganelli, fabio.paterno}@cnuce.cnr.it ABSTRACT In this paper

More information

1 Executive Overview The Benefits and Objectives of BPDM

1 Executive Overview The Benefits and Objectives of BPDM 1 Executive Overview The Benefits and Objectives of BPDM This is an excerpt from the Final Submission BPDM document posted to OMG members on November 13 th 2006. The full version of the specification will

More information

Ontology Development. Qing He

Ontology Development. Qing He A tutorial report for SENG 609.22 Agent Based Software Engineering Course Instructor: Dr. Behrouz H. Far Ontology Development Qing He 1 Why develop an ontology? In recent years the development of ontologies

More information

A Lightweight Language for Software Product Lines Architecture Description

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

More information

Designing a System Engineering Environment in a structured way

Designing a System Engineering Environment in a structured way Designing a System Engineering Environment in a structured way Anna Todino Ivo Viglietti Bruno Tranchero Leonardo-Finmeccanica Aircraft Division Torino, Italy Copyright held by the authors. Rubén de Juan

More information

Web Services Annotation and Reasoning

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

More information

JOURNAL OF OBJECT TECHNOLOGY

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

More information

Software Language Engineering of Architectural Viewpoints

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

More information

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

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

More information

Meta-Modeling Communication and Interaction inside MASs with Ontologies

Meta-Modeling Communication and Interaction inside MASs with Ontologies Meta-Modeling Communication and Interaction inside MASs with Ontologies Valentina Cordì, Viviana Mascardi DISI, Università di Genova, Via Dodecaneso 35, 16146, Genova, Italy. Abstract. The need of a unifying

More information

Development of an Ontology-Based Portal for Digital Archive Services

Development of an Ontology-Based Portal for Digital Archive Services Development of an Ontology-Based Portal for Digital Archive Services Ching-Long Yeh Department of Computer Science and Engineering Tatung University 40 Chungshan N. Rd. 3rd Sec. Taipei, 104, Taiwan chingyeh@cse.ttu.edu.tw

More information

Software Design Patterns. Background 1. Background 2. Jonathan I. Maletic, Ph.D.

Software Design Patterns. Background 1. Background 2. Jonathan I. Maletic, Ph.D. Software Design Patterns Jonathan I. Maletic, Ph.D. Department of Computer Science Kent State University J. Maletic 1 Background 1 Search for recurring successful designs emergent designs from practice

More information

Web OPEN-Integrated: Proposed Framework for Web Development *

Web OPEN-Integrated: Proposed Framework for Web Development * Web OPEN-Integrated: Proposed Framework for Web Development * Rashid Ahmad **, Zhang Li, and Farooque Azam Software Engineering Institute, Beijing University of Aeronautics and Astronautics No.37, XueYuan

More information

A Comparative Study of Ontology Languages and Tools

A Comparative Study of Ontology Languages and Tools A Comparative Study of Ontology Languages and Tools Xiaomeng Su and Lars Ilebrekke Norwegian University of Science and Technology (NTNU) N-7491, Trondheim, Norway xiaomeng@idi.ntnu.no ilebrekk@stud.ntnu.no

More information

Model-Based Protocol Engineering: Specifying Kerberos with Object-Process Methodology

Model-Based Protocol Engineering: Specifying Kerberos with Object-Process Methodology 2041 IEEE 28-th Convention of Electrical and Electronics Engineers in Israel Model-Based Protocol Engineering: Specifying Kerberos with Object-Process Methodology Yaniv Mordecai Faculty of Industrial Engineering

More information

Conceptual Modeling and Specification Generation for B2B Business Processes based on ebxml

Conceptual Modeling and Specification Generation for B2B Business Processes based on ebxml Conceptual Modeling and Specification Generation for B2B Business Processes based on ebxml HyoungDo Kim Professional Graduate School of Information and Communication, Ajou University 526, 5Ga, NamDaeMoonRo,

More information

SEMANTIC WEB POWERED PORTAL INFRASTRUCTURE

SEMANTIC WEB POWERED PORTAL INFRASTRUCTURE SEMANTIC WEB POWERED PORTAL INFRASTRUCTURE YING DING 1 Digital Enterprise Research Institute Leopold-Franzens Universität Innsbruck Austria DIETER FENSEL Digital Enterprise Research Institute National

More information

Integrating SysML and OWL

Integrating SysML and OWL Integrating SysML and OWL Henson Graves Lockheed Martin Aeronautics Company Fort Worth Texas, USA henson.graves@lmco.com Abstract. To use OWL2 for modeling a system design one must be able to construct

More information

Creating Domain-Specific Modeling Languages with OPM/D A Meta-modeling approach

Creating Domain-Specific Modeling Languages with OPM/D A Meta-modeling approach Creating Domain-Specific Modeling Languages with OPM/D A Meta-modeling approach Arieh Bibliowicz 1 and Dov Dori 1 1 Technion, Israel Institute of Technology, Haifa, Israel vainolo@tx.techion.ac.il, dori@ie.technion.ac.il

More information

Integration With the Business Modeler

Integration With the Business Modeler Decision Framework, J. Duggan Research Note 11 September 2003 Evaluating OOA&D Functionality Criteria Looking at nine criteria will help you evaluate the functionality of object-oriented analysis and design

More information

A customizable approach to full lifecycle variability management

A customizable approach to full lifecycle variability management Science of Computer Programming 53 (2004) 259 284 www.elsevier.com/locate/scico A customizable approach to full lifecycle variability management Klaus Schmid, Isabel John Fraunhofer Institute for Experimental

More information

Turning Method Engineering Support into Reality

Turning Method Engineering Support into Reality Turning Method Engineering Support into Reality Mario Cervera, Manoli Albert, Victoria Torres, and Vicente Pelechano Centro de Investigación en Métodos de Producción de Software, Universidad Politécnica

More information

Annotation for the Semantic Web During Website Development

Annotation for the Semantic Web During Website Development Annotation for the Semantic Web During Website Development Peter Plessers and Olga De Troyer Vrije Universiteit Brussel, Department of Computer Science, WISE, Pleinlaan 2, 1050 Brussel, Belgium {Peter.Plessers,

More information

3. Agent-Oriented Methodologies Part 2: The PROMETHEUS methodology.

3. Agent-Oriented Methodologies Part 2: The PROMETHEUS methodology. Multiagent Syste ems Design (MASD D) Part 2: The PROMETHEUS methodology. https://kemlg.upc.edu Javier Vázquez-Salceda MASD Methodological Extensions to Object-Oriented Approaches A means for agent technologies

More information

Appendix A - Glossary(of OO software term s)

Appendix A - Glossary(of OO software term s) Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component

More information

An Architecture for Semantic Enterprise Application Integration Standards

An Architecture for Semantic Enterprise Application Integration Standards An Architecture for Semantic Enterprise Application Integration Standards Nenad Anicic 1, 2, Nenad Ivezic 1, Albert Jones 1 1 National Institute of Standards and Technology, 100 Bureau Drive Gaithersburg,

More information

Software Architecture

Software Architecture Software Architecture Does software architecture global design?, architect designer? Overview What is it, why bother? Architecture Design Viewpoints and view models Architectural styles Architecture asssessment

More information

Unified Modeling Language (UML)

Unified Modeling Language (UML) Appendix H Unified Modeling Language (UML) Preview The Unified Modeling Language (UML) is an object-oriented modeling language sponsored by the Object Management Group (OMG) and published as a standard

More information

A COMPARATIVE ANALYSIS TO VALIDATE THE BENIFITS OF FORMAL VERSUS INFORMAL SOFTWARE MODEL TRANSFORMATION

A COMPARATIVE ANALYSIS TO VALIDATE THE BENIFITS OF FORMAL VERSUS INFORMAL SOFTWARE MODEL TRANSFORMATION A COMPARATIVE ANALYSIS TO VALIDATE THE BENIFITS OF FORMAL VERSUS INFORMAL SOFTWARE MODEL TRANSFORMATION Kaden Daley and Emanuel S. Grant University of North Dakota Department of Computer Science Grand

More information

Towards Process-based Composition of Activities for Collecting Data in Supply Chains

Towards Process-based Composition of Activities for Collecting Data in Supply Chains Towards Process-based Composition of Activities for Collecting Data in Supply Chains Gregor Grambow, Nicolas Mundbrod, Vivian Steller and Manfred Reichert Institute of Databases and Information Systems

More information

An Approach to Software Component Specification

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

More information

Experimenting with Multi-Level Models in a Two-Level Modeling Tool

Experimenting with Multi-Level Models in a Two-Level Modeling Tool Experimenting with Multi-Level Models in a Two-Level Modeling Tool Martin Gogolla Database Systems Group, University of Bremen, Germany gogolla@informatik.uni-bremen.de Abstract. This paper discusses two

More information

UML Aspect Specification Using Role Models

UML Aspect Specification Using Role Models UML Aspect Specification Using Role Models Geri Georg Agilent Laboratories, Agilent Technologies, Fort Collins, USA geri_georg@agilent.com Robert France Department of Computer Science, Colorado State University

More information

UNIT I. 3. Write a short notes on process view of 4+1 architecture. 4. Why is object-oriented approach superior to procedural approach?

UNIT I. 3. Write a short notes on process view of 4+1 architecture. 4. Why is object-oriented approach superior to procedural approach? Department: Information Technology Questions Bank Class: B.E. (I.T) Prof. Bhujbal Dnyaneshwar K. Subject: Object Oriented Modeling & Design dnyanesh.bhujbal11@gmail.com ------------------------------------------------------------------------------------------------------------

More information

Usability Evaluation as a Component of the OPEN Development Framework

Usability Evaluation as a Component of the OPEN Development Framework Usability Evaluation as a Component of the OPEN Development Framework John Eklund Access Testing Centre and The University of Sydney 112 Alexander Street, Crows Nest NSW 2065 Australia johne@testingcentre.com

More information

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

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

More information

OMG Specifications for Enterprise Interoperability

OMG Specifications for Enterprise Interoperability OMG Specifications for Enterprise Interoperability Brian Elvesæter* Arne-Jørgen Berre* *SINTEF ICT, P. O. Box 124 Blindern, N-0314 Oslo, Norway brian.elvesater@sintef.no arne.j.berre@sintef.no ABSTRACT:

More information

Static Safety Analysis of UML Action Semantics for Critical Systems Development

Static Safety Analysis of UML Action Semantics for Critical Systems Development Static Safety Analysis of UML Action Semantics for Critical Systems Development Zsigmond Pap, Dániel Varró Dept. of Measurement and Information Systems Budapest University of Technology and Economics H-1521

More information

Vocabulary-Driven Enterprise Architecture Development Guidelines for DoDAF AV-2: Design and Development of the Integrated Dictionary

Vocabulary-Driven Enterprise Architecture Development Guidelines for DoDAF AV-2: Design and Development of the Integrated Dictionary Vocabulary-Driven Enterprise Architecture Development Guidelines for DoDAF AV-2: Design and Development of the Integrated Dictionary December 17, 2009 Version History Version Publication Date Author Description

More information

OCL Support in MOF Repositories

OCL Support in MOF Repositories OCL Support in MOF Repositories Joachim Hoessler, Michael Soden Department of Computer Science Technical University Berlin hoessler@cs.tu-berlin.de, soden@cs.tu-berlin.de Abstract From metamodels that

More information

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM):

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM): viii Preface The software industry has evolved to tackle new approaches aligned with the Internet, object-orientation, distributed components and new platforms. However, the majority of the large information

More information

Configuration Management for Component-based Systems

Configuration Management for Component-based Systems Configuration Management for Component-based Systems Magnus Larsson Ivica Crnkovic Development and Research Department of Computer Science ABB Automation Products AB Mälardalen University 721 59 Västerås,

More information

A Role-based Use Case Model for Remote Data Acquisition Systems *

A Role-based Use Case Model for Remote Data Acquisition Systems * A Role-based Use Case Model for Remote Acquisition Systems * Txomin Nieva, Alain Wegmann Institute for computer Communications and Applications (ICA), Communication Systems Department (DSC), Swiss Federal

More information

Rich Hilliard 20 February 2011

Rich Hilliard 20 February 2011 Metamodels in 42010 Executive summary: The purpose of this note is to investigate the use of metamodels in IEEE 1471 ISO/IEC 42010. In the present draft, metamodels serve two roles: (1) to describe the

More information

DESIGN PATTERN MATCHING

DESIGN PATTERN MATCHING PERIODICA POLYTECHNICA SER. EL. ENG. VOL. 47, NO. 3 4, PP. 205 212 (2003) DESIGN PATTERN MATCHING Dániel PETRI and György CSERTÁN Department of Measurement and Information Systems Budapest University of

More information

Comparison of Simple Graphical Process Models

Comparison of Simple Graphical Process Models JIOS, VOL. 36, NO. 2 (2012) SUBMITTED 07/12; ACCEPTED 10/12 Comparison of Simple Graphical Process Models Katarina Tomičić-Pupek University of Zagreb Faculty of Organization and Informatics Varaždin Ivan

More information

Pattern-Based Architectural Design Process Model

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

More information

USING TRANSFORMATIONS TO INTEGRATE TASK MODELS IN

USING TRANSFORMATIONS TO INTEGRATE TASK MODELS IN USING TRANSFORMATIONS TO INTEGRATE TASK MODELS IN THE UML Position Paper to the WTUML: Workshop on Transformations in UML ETAPS 2001 European Joint Conference on Theory and Practice of Software Nuno Jardim

More information

Modelling in Enterprise Architecture. MSc Business Information Systems

Modelling in Enterprise Architecture. MSc Business Information Systems Modelling in Enterprise Architecture MSc Business Information Systems Models and Modelling Modelling Describing and Representing all relevant aspects of a domain in a defined language. Result of modelling

More information

Semantic Web. Ontology Pattern. Gerd Gröner, Matthias Thimm. Institute for Web Science and Technologies (WeST) University of Koblenz-Landau

Semantic Web. Ontology Pattern. Gerd Gröner, Matthias Thimm. Institute for Web Science and Technologies (WeST) University of Koblenz-Landau Semantic Web Ontology Pattern Gerd Gröner, Matthias Thimm {groener,thimm}@uni-koblenz.de Institute for Web Science and Technologies (WeST) University of Koblenz-Landau July 18, 2013 Gerd Gröner, Matthias

More information

Data and Process Modelling

Data and Process Modelling Data and Process Modelling 8a. BPMN - Basic Modelling Marco Montali KRDB Research Centre for Knowledge and Data Faculty of Computer Science Free University of Bozen-Bolzano A.Y. 2014/2015 Marco Montali

More information

Metaprogrammable Toolkit for Model-Integrated Computing

Metaprogrammable Toolkit for Model-Integrated Computing Metaprogrammable Toolkit for Model-Integrated Computing Akos Ledeczi, Miklos Maroti, Gabor Karsai and Greg Nordstrom Institute for Software Integrated Systems Vanderbilt University Abstract Model-Integrated

More information

An Annotation Tool for Semantic Documents

An Annotation Tool for Semantic Documents An Annotation Tool for Semantic Documents (System Description) Henrik Eriksson Dept. of Computer and Information Science Linköping University SE-581 83 Linköping, Sweden her@ida.liu.se Abstract. Document

More information

Scenarios, Quality Attributes, and Patterns: Capturing and Using their Synergistic Relationships for Product Line Architectures

Scenarios, Quality Attributes, and Patterns: Capturing and Using their Synergistic Relationships for Product Line Architectures Scenarios, Quality Attributes, and Patterns: Capturing and Using their Synergistic Relationships for Product Line Architectures Muhammad Ali Babar National ICT Australia Ltd. and University of New South

More information

Representing Control Constructs in Object-Flow Process. Diagrams

Representing Control Constructs in Object-Flow Process. Diagrams 1 Representing Control Constructs in Object-Flow Process Diagrams or Peleg and Dov Dori Faculty of Industrial Engineering and anagement Technion Israel Institute of Technology Haifa 32000, Israel {mor,

More information

Process Patterns for Web Engineering

Process Patterns for Web Engineering 2010 IEEE 34th Annual 34th Annual IEEE Computer Software and Applications Conference Process Patterns for Web Engineering Reza Babanezhad, Yusef Mehrdad Bibalan, Raman Ramsin Department of Computer Engineering

More information

Sequence Diagram Generation with Model Transformation Technology

Sequence Diagram Generation with Model Transformation Technology , March 12-14, 2014, Hong Kong Sequence Diagram Generation with Model Transformation Technology Photchana Sawprakhon, Yachai Limpiyakorn Abstract Creating Sequence diagrams with UML tools can be incomplete,

More information

Queue Theory based Response Time Analyses for Geo-Information Processing Chain

Queue Theory based Response Time Analyses for Geo-Information Processing Chain Queue Theory based Response Time Analyses for Geo-Information Processing Chain Jie Chen, Jian Peng, Min Deng, Chao Tao, Haifeng Li a School of Civil Engineering, School of Geosciences Info-Physics, Central

More information

Meta Architecting: Towered a New Generation of Architecture Description Languages

Meta Architecting: Towered a New Generation of Architecture Description Languages Journal of Computer Science 1 (4): 454-460, 2005 ISSN 1549-3636 Science Publications, 2005 Meta Architecting: Towered a New Generation of Architecture Description Languages Adel Smeda, Tahar Khammaci and

More information

Domain-Specific Language Architecture for Automation Systems: An Industrial Case Study

Domain-Specific Language Architecture for Automation Systems: An Industrial Case Study Domain-Specific Language Architecture for Automation Systems: An Industrial Case Study Christopher Preschern, Andrea Leitner, and Christian Kreiner Institure for Technical Informatics Graz University of

More information

Seminar report Software reuse

Seminar report Software reuse A Seminar report On Software reuse Submitted in partial fulfillment of the requirement for the award of degree of Bachelor of Technology in Computer Science SUBMITTED TO: www.studymafia.com SUBMITTED BY:

More information

COST ESTIMATION FOR DISTRIBUTED SYSTEMS USING USE CASE DIAGRAM

COST ESTIMATION FOR DISTRIBUTED SYSTEMS USING USE CASE DIAGRAM S. V. Pingale et al. : Cost Estimation for Distributed Systems using Use Case Diagram Journal of Advances in Engineering Science 41 Section C (3), July - December 2010, PP 41-48 COST ESTIMATION FOR DISTRIBUTED

More information

Towards the integration of security patterns in UML Component-based Applications

Towards the integration of security patterns in UML Component-based Applications Towards the integration of security patterns in UML Component-based Applications Anas Motii 1, Brahim Hamid 2, Agnès Lanusse 1, Jean-Michel Bruel 2 1 CEA, LIST, Laboratory of Model Driven Engineering for

More information

A System of Patterns for Web Navigation

A System of Patterns for Web Navigation A System of Patterns for Web Navigation Mohammed Abul Khayes Akanda and Daniel M. German Department of Computer Science, University of Victoria, Canada maka@alumni.uvic.ca, dmgerman@uvic.ca Abstract. In

More information

Semantic Web Domain Knowledge Representation Using Software Engineering Modeling Technique

Semantic Web Domain Knowledge Representation Using Software Engineering Modeling Technique Semantic Web Domain Knowledge Representation Using Software Engineering Modeling Technique Minal Bhise DAIICT, Gandhinagar, Gujarat, India 382007 minal_bhise@daiict.ac.in Abstract. The semantic web offers

More information

Chapter 8: Enhanced ER Model

Chapter 8: Enhanced ER Model Chapter 8: Enhanced ER Model Subclasses, Superclasses, and Inheritance Specialization and Generalization Constraints and Characteristics of Specialization and Generalization Hierarchies Modeling of UNION

More information