Those activities consist of the processes visioning, architecture definition, transformation planning, and architecture governance [11b]. This method focuses on the activity of capturing and transforming an EA, but not on other EAM tasks, like developing an IT strategy or managing the application portfolio [Kel11]. An alternative approach to establishing EAM activities is the use of patterns.
This approach accounts for the organization specific factors, that influence the implementation of an EAM function [Har97]. Matthes, I. Monahov, A. Schneider, and C. Bente, U. Bombosch, and S. Elsevier, Inc. IGI Global, , pp. Freitag and C. Suchan C; Frank. Berlin Heidelberg: Springer Verlag, , pp. TOGAF 9. Wolfgang W. Keller, In , 50 years after it was launched, only 86 of the original companies are still listed in the index. In other words, fewer than 20 percent of the largest U. A large number of companies have disappeared, either taken over by more successful competitors or reduced to economic insignificance by failure to innovate in a core market.
Many companies held on to established strategies and business models for too long — due either to inadequate strategic foresight or fear of cannibalization of their established business, to problems in implementing a new strategy, or to underestimating the speed at which innovations in, inter alia, ICT revolutionize entire market segments Picot et al.
Approaches to Defining an EAM Practice Using a Framework
To hesitate in reacting to these changes, however, is to run a risk of being rolled over by market developments. Only by fundamentally changing its business model, organization and corporate culture was IBM able to surmount this crisis, and flexibility and the ability to change fast have since been the basis of its economic prosperity 4. Then, the transformation at IBM in particular is analyzed. The last 5, years have witnessed four innovations that have led to such drastic changes in cost and speed in dealing with information that their effect not only on the markets but also on humankind as a whole can clearly be described as revolutionary Tab.
ICT innovations in the wider sense of the term that were trailblazers for long-distance trade pre innovations based on Graff , pp. Administration and growth of societies and trade beyond the dimension of clans. Administration of large nation-states by standardized distribution of information; standardization of language; explosion in the amount of information available.
Separation of information from material carriers and their economic limitations. By the end of the nineteenth century, ICT had already been instrumental in initiating and implementing long-distance trade. In around the development of the World Wide Web marked a further milestone in stepping up the pace of globalization. Practically free worldwide transportation of data or information dramatically boosts the opportunities for international exchange of services. In contrast to trade in products, the globalization of which has reached new dimensions — a new quantity — in recent decades, trade in services has taken on an entirely new quality.
The fast development of ICT has loosened the previous attachment of services to the place where they were provided. It took ICT and the Internet to make globalization of services, especially knowledge-intensive services, and corresponding global markets, conceivable and feasible 5. The globalization options for digital services are especially significant and are steadily gaining economic significance. These digital services can not only be traded over a network, but also provided digitally in their totality, in other words delivered via private or public networks typically the Internet and thereby globally and independently of the place of provision.
For many of the established industrialized nations this will present a major opportunity to countervail the future shifting of markets. The above-mentioned ICT enablement of international activities must be leveraged — also for developed countries like Germany — to participate in the growth of these markets. Shift in scope of economic output: A widespread definition of services that goes back to Engelhardt et al. Along all three dimensions ICT drives the significance of services.
New, intangible services, such as Web Services, take shape or replace previous tangible ones. Opportunities for interaction and cooperation with the customer are intensified via cooperation platforms, for instance. Opportunities for individualized production are increased by flexible production processes. De- and recomposition of added value networks: The focus on joint value creation also taken forward by the international initiatives promoting Service Science, Management and Engineering SSME 6 , will increasingly lead to intensified endeavors to see services not only as the product of supply and demand but as added value cooperatively created by several partners Spohrer u.
Kwan This can lead to long-term strategic partnerships, such as in IT outsourcing, or to short-term project-related organizational forms. In any case an increasing progression from established value chains to more complex, more dynamic, adaptive service value networks can be expected. A recent study by Deutsche Bank Research , p. Societal developments promote the emergence of new services. The aging of society, for example, triggers additional demand for services in the healthcare or leisure area.
The flexibility of individuals in respect of forms of work, working times or length of service with one employer lends further support to this trend. Promotion of political framework conditions such as deregulation of markets and implementation of the EU Services Directive by the end of or systematic research funding in the services sector such as promotion as a strategic area in the context of the German High-Tech Initiative BMBF eliminate barriers to growth. In the next section, the connection between innovations and the transformation of companies is first outlined in general terms before we proceed to specifically analyze the effect of ICT innovations on the transformation of IBM.
Disruptive technological innovations regularly force companies and entire industries to adapt their business models and their organization Christensen , pp. Moreover, a dependency between business model, organizational structure and corporate culture has been postulated on a conceptual basis since the s and investigated in greater detail in different models such as by Wilkins and Ouchi ; Waterman et al. Empirical analyses of the relation between corporate culture and success undertaken in subsequent studies produced partially inconsistent results. Based on this hypothesis, significant changes in business models, such as the transformation from a product-oriented to a service-oriented model, ought to be accompanied by no less radical changes in terms of a new corporate culture that supports the new model to the best possible degree.
Changing processes or IT systems, in contrast, cited by 20 and 8 percent of respondents respectively, are rated nowhere near as problematic Fig. Successful companies typically develop strong corporate cultures that encourage and reinforce those attitudes to which the company owes its market success. The corporate culture thereby reflects the market situation and the appropriate attitudes in which the organization achieved success.
If, however, the environment changes, due in this case to market changes, a strong corporate culture that has supported and strengthened previously valid success factors can turn into a problem because it hinders the adaptation of the organization and the development of new and different attitudes that are required for success in the new environment.
A further factor that complicates matters is that often times parallel cultures coexist in companies, one being the official, documented and indeed believed culture stated in values and guidelines opposed to the actual culture that is lived in day-to-day business. In the following an analysis is undertaken of how the ICT-driven trends of globalization and service-orientation described in Sections 2. IBM is one of the few companies existing today with origins that date back to before After mergers with other firms that produced, inter alia, scales and time recording devices, the Computing Tabulating Recording Company CTR was founded in and renamed International Business Machines in From until a year before he died in , Thomas J.
- Ib and Little Christine (fairy tales Book 5).
- Energy and Ethics: Justice and the Global Energy Challenge (Energy, Climate and the Environment).
- Mais qui donc dirige la police ? : Sociologie des commissaires (Hors collection) (French Edition).
- The Last Hit.
Watson, Sr. IBM has exercised a decisive influence on the development of ICT and at the same time undergone fundamental changes as a result of this development. The transformation of the past 50 years will be outlined in the following. For simplification, a distinction will be made between three major phase in which the development of ICT gave rise to different forms of business model, organization and corporate culture. Product provider of scalable generic IT systems based on outstanding research and development.
Commoditization of IT products, development of higher quality IT services, open source networks,. Focus on utilizing global competences and on innovation and added value for customers.
Programme - Urban Future
In , Thomas Watson, Jr. The investment paid dividends, however. Instead of many voluminous special systems, customers were able for the first time to buy a generic computer that could grow with its task by means of modern add-on components without the software for a larger computer system needing to be rewritten each time. IBM built its entire business model around the mainframes.
The trigger position it- self is simple: before or after an activity occurs. A TPc can not exists without a set of activities matched by a structural pattern SPc. Apart from TPc , linkage information can be statically matched against processes, thus it is possible to determine enabled and idle constraints as described before. Consider constraint C8 from Fig. As case studies show, process constraints might also refer to conditions on time and resources, e.
Thus, a condition describes, under the premise of a given linkage, either a a combination of data, temporal or resource conditions that have to be present or b a combination of data, temporal or resource conditions that have to be present in order for a given behavior to be apply. Assignment becomes necessary for access constraints such as C In Sect. Additionally, the examples from the medical domain cf. S03] is depicted in Fig.
A This guideline refers to the data perspective, e. Financial Sector: Fig. If we assume that capital is solely application data as depicted for Process P1, the constraint above does not refer to any structural aspect of the process and hence is not considered as process constraint. By contrast, as for Process P2, the capital ratio is still calculated by the application connected with activity calculate. However, the value is explicitly written as process data element ratio.
Consequently, the linkage part of the constraint refers to structural pattern calculate. Authorization: Separation of duties is one example for authorization constraints [SM10]. Assume the constraint depicted in Fig. Further it refers to the organizational perspective by imposing a mutual ex- clusion constraint on process resources. As depicted in Tab. The only difference between these two is, that during change-time timing information may have to be adapted to account for the duration of changes. The third constraint type describes Business Compliance Constraints in general.
Business compliance constraints, are exclusively compliance constraints, they never carry a behavioral part, they most of the time verify a certain struc- ture of the process, with a possibility of checking also data, resource and temporal aspects. Therefore the design-time Structural constraints also in this list are Business Compliance Constraints, as well as some Temporal Constraints or Data constraints whenever only design-time aspects are covered. They may be very well applied at design time, just only the impact can only be seen at run-time.
At some point it may be necessary to create new processes struc- tural constraints often trigger the creation or evolution of existing processes. Because all constraints are available in a single consistent representation, unlike for current approaches it is easily possible to check if inconsistencies between constraints exists particularly if they stem from different sources , rather than checking consistency between pure structural process constraints only.
In current approaches the constraints are embed- ded and encapsulated in different components of the PAIS e. As depicted in Fig. Table 2: Comparison of Existing Approaches the scope of these approaches so far. Validation of the integrated representation compared to selected existing approaches is presented in Table 2.
The above mentioned approaches try to ensure BPC either a-priori at design time or by detecting inconsistencies at run-time. In addition, there are also a-posteriori approaches that offer techniques to analyze process logs i. In these approaches, different aspects logged during process execution can be checked, e. Other approaches use constraints to synchronize between business processes of different type e.
First of all, the basic concepts of the framework were introduced, i. Further, the framework was enriched by coping with data, time, and resource information provided within the constraints. Based on different real- world examples the feasibility of the representation has been shown. Finally, it was shown how existing formalisms for specifying process constraints can be expressed by the representation framework at hand. Currently we are working on an implementation representation framework on top of our adaptive process engine CPEE. Awad, M. Weidlich, and M. Visually specifying compliance rules and explaining their violations for business processes.
Internationale Konvergenz der Eigenkapi- talmessung und Eigenkapitalanforderungen, In Proc. Knuplesch, L. Ly, S. Rinderle-Ma, H. Pfeifer, and P. Conceptual Modeling, volume , pages —, Rinderle-Ma, and P. Rinderle-Ma, K. Information Systems Frontiers, pages 1—25, Lu, S.
Sadiq, and G. Compliance Aware Process Design. Namiri and N. Springer, Pesic, H. Schonenberg, and W. Peleg and S. Design patterns for clinical guidelines. Sadiq, G. Governatori, and K. Strembeck and J. In OTM Conferences 1 , pages —, S03] U. Department of Health and Human Services. In this paper we formally model human resources, i. In this context, a cen- tral question is which actors are allowed to work on a given task of a process. The permission to execute a task is associated with one or more roles, and conversely also ac- tors are assigned to roles, thereby acquiring the permissions of the roles.
Roles are mostly determined by the organizational units also called groups and the positions within an enterprise, but also skills and responsibilities are regarded. These papers focus on the distribution of work items, resource allocation patterns, resource management, etc. In learning processes it is common that the learners dynamically change their roles. For instance, when writing a review an actor gets a new role which is later on required for presentation of the review BoD but prohibits writing a second review SoD.
Counterexamples show that further relations between consistency and soundness do not hold. The paper is organized as follows. They basically allow an assignment of users and tasks to roles. This section presents a formal semantics of this concept by translating it into a CP-net-notation.
We use the following notations. N denotes the non-negative integers. The behavioral semantics, i. It is similar to most standard role concepts for business processes. Each actor having one of the roles associated to a transition is permitted to execute a respective task. Unlabeled transitions having assigned the empty set can occur automatically without requiring an actor. There are four actors, one with role R1, two with role R2 and one with role R3. Task A has to be done by an actor with role R1. Then, B and C can be executed concurrently by R2-actors.
Afterwards, D requires the role R3. Finally, E can be accomplished by an actor with role R1 or with role R2. We extend the underlying WF-net by a place which serves as a resource pool, contain- ing all actors with their associated roles.
- The Social Media Manifesto!
- Making Your Mind Matter: Strategies for Increasing Practical Intelligence.
The role annotations of transitions are considered by appropriate guards. In this way roles, actors and execution permissions are regarded. For the operational semantics of CP-nets, see [Jen97]. In this way an actor x having the role y is allocated to the task. The transition guard ensures that the allocated actor is permitted to execute the task, i.
When an actor executes a task, he is removed from the place pres. As soon as the task is accomplished, the actor is released by giving it back to the place pres. In this way the place pres guarantees that at any time an actor can only be allocated to one task. An exception are tasks of the original WFR-net having an empty set of roles. These automatic tasks require no actor from the resource pool pres.
Note that the concept of releasing an actor allocated to a task as soon as the task is completed is an important difference to the approaches in [HSV06, JKJ10, BBS07], where also WF-nets regarding resources are formally discussed. We have restricted ourselves to a basic role model in this section. However, different process instances can easily be distinguished by using a copy of the WFR-net for each in- stance and connecting each copy with the place representing the resource pool. One resource place can also be used for different process models.
Then, the same actors are shared among the process instances of several processes. While these restrictions reduce the modeling comfort, they do not restrict the modeling capabilities, since these aspects can equivalently be represented by the concept of alternative role annotations.
For explicitly modeling multiple roles of actors, we can associate sets of roles instead of single roles to each actor. A hierarchy among roles can be expressed by a consistency condition on the function assigning sets of roles to actors. We can extend the role model by collaborative tasks as follows see [BDHM11] for details. Instead of one actor, a collaborative task consumes a certain number of actors from the resource pool. We will extend the intuitive modeling language of WFR-nets by this concept.
If an actor having a certain role changes his role when executing a task, we represent this by extending the label of the transition. Formally, we simply consider pairs of roles consisting of the old and the new role, i. If a role assignment does not change when executing a task, the old and the new role coincide. There are two actors, both initially having the role R1. Both are allowed to execute task A. Also the concurrent tasks B and C require the role R1, i. B as well as C can be accomplished by any of the two actors. However, one and the same actor cannot execute both tasks separation of duty , since each of them causes a role change.
The actor executing B gets the role R2, the one executing C gets the role R3. Therefore, the two actors have to share the two tasks among each other. Finally, E has to be executed by an actor with role R2. Thus, this task requires the actor that executed B before binding of duty. Besides the actor x, the variable y1 represents the role required to execute the task and y2 represents a role change. A net may exhibit errors such as deadlocks, livelocks or garbage being left in the process after termination. Soundness is a basic behavioral property that each proper procedure should satisfy.
Moreover, there should be no dead tasks. S2 There are no dead tasks w. As an example, the WF-net underlying the nets shown in Figure 1 and 3 is sound. However, it was later shown that this property follows from S1. For this purpose we consider the corresponding CP-nets and formulate two requirements generalizing the properties S1 and S2.
- Focal Point: A Proven System to Simplify Your Life, Double Your Productivity, and Achieve All Your Goals.
- Crosscutting Funtions.
- Works of St. Bonaventure: On the Reduction of the Arts to Theology: 1?
- Storm Unleashed (Pawns of Heaven Book 2)!
The latter is given by a WF-net and the former by role annotations and actors. Therefore, the actors and roles of a WFR-net resp. They should only describe the resource allocation allowed within the business process. Otherwise, the two views are not consistent. That means, if a transition can occur in a certain marking of a WFR-net resp. Lemma 1. It is possible that an enabled transition of N is prohibited in NR, since appropriate actors are missing, i.
Therefore, we formulate the following Figure 5: WFDR-net which is sound but not correctness criterion which ensures the reverse consistent. The net NR is called consis- tent if for each reachable marking m of CP NN R and each transition t which is enabled in the marking mu of N , there is a binding b such that t, b is enabled in m. Using Lemma 1 we can summarize the following relationship between the behavior of a WFR-net resp. Lemma 2. If an occurrence sequence t1 , b1. In the case NR is consistent we also have: If t1. Figure 5 shows a WFDR-net which is not consistent.
However, this net and also its underlying WF- net are sound. The role annotations ensure that whenever the actor initially executes A, then he next has to execute C, although D is also enabled in the underlying WF-net. Similarly, when starting with B, the actor then has to execute D. Lemma 3. If NR is not consistent, there is a reachable marking m of CP NN R and a transition t such that t is enabled in the marking mu of N , but for each b the binding element t, b is not enabled in m.
Consequently, NR is not sound. Since soundness of WF-nets is well investigated, we discuss the relation between sound- ness of a WFR-net and soundness of the underlying WF-net. Lemma 4. We show for each case that NR is not sound. By Lemma 2 this task is also dead in NR, i.
Soundness of the underlying net also does not imply soundness of a WFR-net because the WFR-net can contain dead tasks due to missing actors. However, we now show that both properties together, consistency and soundness of the underlying WF-net, ensure soundness of a WFR-net. Lemma 5. We show for each case that either NR is not consistent or N is not sound. By Lemma 2, the marking mu is reachable in N. In the case NR is consistent, by Lemma 2, this task is also dead in N , i.
The previous lemmas imply the following characterization of soundness for WFR-nets. Theorem 1. This characterization shows how to design sound WFR-nets. First, a sound WF-net is constructed. So far the structural interpretation of the behavioral property consistency is not clear, and thus we do not know how to ensure the property when designing the role perspective of a WFR-net.
Therefore, we provide a simple characterization of consistency: Lemma 6. If NR is not consistent, the proof of Lemma 3 shows that there is a transition t which is not dead w. CP NN R due to the place pres which has a constant marking. Otherwise, by Lemma 2, NR is not consistent. In particular, they are completely independent from the underlying WF-net N. It just requires that for each role there is at least one actor having the role. We have already discussed that soundness alone is not enough for a WFDR-net. For cor- rectness, we are interested in sound and consistent WFDR-nets.
For such nets it is possible to show that the underlying WF-net is also sound. Lemma 7. We show for each case that NR is not sound or not consistent. Lemma 8. The proof is analogous to Lemma 5. The two previous lemmas together yield the following equivalence.
Theorem 2. First, a sound WF-net is constructed which is then consistently extended by roles and actors. With this approach soundness of the resulting WFDR-net is guaranteed. Still, there are also sound WFDR- nets which are not consistent. For such a net it is possible that the underlying WF-net is not sound Figure 6 , but it is also possible that the WF-net is sound Figure 5.
For the sake of completeness note that in the case of a non-sound and non-consistent WFDR-net, the underlying WF-net can be both sound Figure 5 with empty set of actors or not sound Figure 6 with empty set of actors. We now investigate the property of consistency for WFDR- nets in detail. For this purpose, we introduce the notion of role diagram which describes the dynamic role behavior of all the actors of a WFDR-net as given by the role annotations neglecting the underlying WF-net.
Figure 7 il- Figure 7: A role diagram. States represent different role combinations of actors, and each transition represents a task that can be executed by a certain role combination as well as the role change triggered by this task execution. A WFDR-net is consistent if the resource perspective, i.
That means, for each reachable state, if the WF- net allows the occurrence of a task, then there are actors capable of executing the task. In particular, the enabledness of a task has to be independent from the assignments of actors to previous tasks. Based on the concept of role diagram we formulate the following characterization for consistency of WFDR-nets. Lemma 9. By Lemma 2, t1. Moreover, by "construction of RN R it holds q0 , t1 , q1. Since tn is not enabled in m w. If there is an occurrence sequence t1. Consequently, there is no bn such that tn , bn is enabled in m, although tn is enabled in mu , i.
NR is not consistent. With Lemma 9, consistency of the role perspective can nicely be checked on top of a given WF-net by comparing the marking graph of the WF-net and the role diagram. Second, we can consider the situation that there are always enough actors to perform each task of the net. We formulate the following condition which is analogous to C1 for WFR- nets: If for each task, each reachable role combination contains a role which is allowed to execute the task, then NR is consistent.
Moreover, we can simplify this condition analo- gously as in the case of C2 for WFR-nets: If each reachable role combination contains all roles of NR, then NR is consistent. Then, we have discussed correctness of respective models. An important topic for future research is a detailed discussion of the extensions of the modeling languages mentioned in Section 2.
References [Aal98] W. The Journal of Circuits, Systems and Computers, 8 1 —66, MIT Press, Barkaoui, R. Benayed, and Z. Bergenthum, J. Desel, A. Harrer, and S. In to appear in ToPNoC. Sidorova, and M. Coloured Petri Nets. Springer, , , Kazlov, and A. Pesic and W. Russell, W. Sandhu, E. Coyne, H. Feinstein, and C. Role-Based Access Control Mod- els. IEEE Computer, 29 2 —47, Tan, J. Crampton, and C. In CSFW, pages — IEEE, Although there are a multitude of different approaches for particular modelling languages and application scenarios, the modelling community lacks an integrated approach suitable for conceptual models of arbitrary languages and domains.
Therefore, a generic set-theory based pattern matching approach has recently been developed. To prove that this approach is beneficial in terms of performance, we conduct a statistically rigorous analysis of its runtime behaviour. We augment the original approach to include a caching mechanism that further increases perfor- mance.
We are able to show that the original algorithm is able to identify arbitrary patterns within milliseconds. The caching extension further increases performance by up to fifty per cent given the model base and patterns we used. In case of mergers and acquisitions, identifying structural patterns in process models allows for comparing heterogeneous process landscapes to one another.
Such a comparison can then be used to integrate various process models containing sim- ilar or equivalent structures [Di09]. Identifying patterns in conceptual models is also useful for business process compliance checking [Kn10] as well as determining the syn- tactical correctness of a particular model [Me07]. In the domain of database engineering, detecting structures in conceptual models addresses the problem of schema matching and integration [PS11; RS10]. In all of these application scenarios a manual analysis is ex- tremely costly, since the number of models to be analysed may range in the thousands [YDG10].
Furthermore, each model may contain hundreds of elements. Structural pat- tern matching can therefore only be beneficial if it is conducted in an automated or at least semi-automated way. To that end, we have developed a generic set-theory based pattern matching approach that is able to find patterns in conceptual models of arbitrary modelling languages [De10].
The approach was prototypically im- plemented as a plug-in for a meta-modelling tool that was available from a previous research project [DK07]. To prove that our approach is beneficial in terms of perfor- mance, we conduct a statistically rigorous analysis of its runtime behaviour. We evaluate the approach on two sets of Event-driven Process Chains EPC [Sc00] that were availa- ble from previous research projects as well. In total, we analyse process models having between 20 and elements. The patterns we search for are based on the works of [Me07] who defines syntactical errors in EPCs and [Va03] who identify workflow pat- terns.
We are able to demonstrate that the generic set-theory based approach allows for finding structural pattern matches within milliseconds. We augment the approach to include a caching algorithm that further improves matching performance by up to fifty per cent given the model base and patterns we used. The algorithm is based on the idea of storing frequently used sub-patterns in a data structure that allows access in constant time. The remainder of the paper is structured as follows. In Section 2, we discuss related work. Our analysis indicates that there is no generic pattern matching algorithm that finds matches within milliseconds.
In Section 3, we briefly elaborate on the approach to be evaluated. We continue by explaining the caching mechanism augmenting the origi- nal algorithm. In Section 4, we provide a detailed performance analysis of the approach both with and without the caching algorithm. We conclude by summarizing our main findings and providing an outlook to future research. Primarily, recent literature from the last five years was analysed. We furthermore included some sources from unstructured search.
In the field of database engineering, various approaches have been proposed addressing the problem of schema matching and integration. Two or more schemas are taken as input and semantically as well as structurally equivalent elements are identified to create an integrated schema as output [RB01]. Furthermore, some of them restrict themselves to specific modelling languages or do not provide exact matching algorithms but approximation- based heuristics. We therefore argue that the modelling community would benefit from a more generic pattern matching approach that is not limited to a particular modelling language or application scenario and that at the same time is able to identify exact pat- tern matches.
Moreover, to be beneficial such an approach has to return results with good performance. By providing a statistically rigorous performance evaluation, this paper can therefore be seen as a continuation of the work of [De10]. Design science is concerned with the creation of innovative artefacts solving previously unsolved problems. In our case the artefact constitutes a generic pattern matching algorithm that is able to find structures in conceptual models created in arbitrary modelling languages.
The methodology of [Pe07] stipulates six steps for the process of conducting design science, namely problem identification and motivation, definition of the objectives for a solution, design and de- velopment, demonstration, evaluation, and communication. In this paper, we conduct a statistically rigorous performance evaluation of the artefact presented by [De10].
We assess its capability of efficiently contributing to the analysis of conceptual models. In an additional development iteration we augment the artefact to include a caching algorithm that further improves performance. Therefore, the approach distinguishes model objects, representing nodes, and model relationships, representing edges, interrelating model objects. Starting from a particular basic set, the approach searches for pattern matches by performing set opera- tions on this basic set. R to be the basic sets required for this approach.
By combining different set operations, patterns are built up successively. Given a pattern definition, the matching process returns a set of model subsets representing the pattern matches found. Every match found is put into a separate subset. In the following, we introduce the avail- able operations of the approach briefly.
A detailed formal specification can be found in [De10]. In the ex- planation of the operations, we use additional sets X: arbitrary set of elements; Y: arbi- trary set of objects; Z: arbitrary set of relationships specifying which kinds of inputs an operation expects. In addition, the instance of the type attribute has to be of value b. A type attribute might be the label of an element. The function then re- turns all elements having a particular label b. Each inner set contains one occurrence.
A further category of operation is needed to build patterns representing recursive struc- tures e. Each path found is represented by an inner set. To avoid infinite sets, only finite paths and loops are returned. Each occurrence is represented by an inner set. Each occur- rence is represented by an inner set. Each such path found is represented by an inner set. However, it returns only paths that do not contain any element of Xc. However, the function only returns the shortest or longest paths from elements of X 1 to elements of Xn con- taining or not containing at least one element of Xc.
By nesting the functions introduced above, it is possible to build structural model pat- terns successively. The results of each function can be reused adopting them as an input for other functions. In order to combine different results, the basic set operators union! Since it should be pos- sible to not only combine sets of pattern matches i. These operate on the inner sets of two sets of sets respectively. The Join operator performs a union operation on each inner set of the first set with each inner set of the second set having at least one element in common.
The InnerIntersection opera- tor intersects each inner set of the first set with each inner set of the second set. The InnerComplement operator applies a complement operation to each inner set of the first outer set combined with each inner set of the second outer set. Only inner sets that have at least one element in common are considered. As most of the set operations introduced expect simple sets of elements as inputs, further operators are introduced that turn sets of sets into simple sets. The SelfUnion operator merges all inner sets of one set of sets into a single set performing a union operation on all inner sets.
The SelfIntersection operator performs an intersection operation on all inner sets of a set of sets successively. The result is a set containing elements that each occur in all inner sets of the original outer set. This pattern represents all functions that are directly succeeded by an event. The Ele- mentsOfType calls return the set of all functions and events respectively. They take the basic set O as input which represents the set of all objects contained in the model to be searched.
The second parameter specifies the type of the objects contained in the inter- mediate result sets. These are then passed on to the DirectSuccessors call returning a set of sets. Each inner set contains a function, the succeeding event and the edge between these two objects. The patterns are defined in a specification environment that is inte- grated into the meta-modelling environment of the tool. The modelling environment allows for executing the pattern matching algorithm.
All elements that belong to a par- ticular pattern match are highlighted. In the example presented in Figure 1 two pattern matches were found. Each match consists of a function, its succeeding event and the relationship between these two objects. Pattern specification environment First match Second match Figure 1: Application of the pattern matching approach 3. A nested pattern definition is represented as a search tree.
The algo- rithm performs a depth-first search on that tree calculating the result of the leaf nodes first and then returning this intermediate result to the next higher level of the tree. This structure allows for efficiently caching intermediate results, since a given sub-tree may appear multiple times within one pattern definition.
Before calculating the result on any given level in the search tree, the algorithm checks a hash table to see if the given sub- tree has already been calculated. This hash table can be read in constant time, thus al- lowing for extremely fast access. In terms of the former, the largest process model contains elements and describes the process of refunding student travel expenses. The smallest model consists of 26 elements and depicts the application for a dog licence fee.
Related Der Enterprise Service Bus in Theorie und Praxis (German Edition)
Copyright 2019 - All Right Reserved