Migration of a Chosen Architectural Pattern to Service Oriented ...
Migration of a Chosen Architectural Pattern to Service Oriented ... Migration of a Chosen Architectural Pattern to Service Oriented ...
Chapter 3. Architectural Patterns 58Client Implicit Mechnism ServerFigure 3.24: Example usage of Implicit Invocation pattern3.2.2 Methods of patterns categorisationLiterature presents several different methods of pattern categorisations [8][38]which are meant to underline specific aspects of patterns like their structure,properties or applications. The reason why particular aspects are underlinedmay also vary in addition, may include for instance justification for architectureselection e.g. highly adaptive architectures adaptation. Source literature forarchitectural pattern section provides several different ways of pattern categorisation.Buschmann [21] presents following approaches:1. Domain –This categorisation groups all patterns that are often used in aspecific domain. An example domain can be for instance: scientific application.Most of those scientific applications need a lot of disc space toshare common data and a high performance algorithm to do calculations.In many cases, algorithms are distributed over many computers that haveto work together. This set of requirements and constrains can impose a setof most adequate patterns.2. Partition –Groups all the patterns that present a system as a stack of tiers.For instance, there can be a business tier and an integration tier. Integrationtier contains all patterns that enable easy integration and adaptation.Business tier groups patterns that improve maintainability and extendability.3. Intent –This category groups patterns in very narrow and high–specializedgroups. Each group consists of patterns that solve the same problem or helpto reduce it. For instance Intent may enclose a group of patterns that solvea problem of system distribution or a group that collects only patterns thatenables easy exchange of data.Presented categorisations of patterns start from very general idea of a domainand go deeper through grouping of pattern having structure presented as a stackof tiers. Finally, patterns having the same application are put together.The second source [38] provides only one categorisation, namely categorisationby domain of application. This approach is in fact a clarification of the domain
Chapter 3. Architectural Patterns 59category presented by F. Bushamnn. Author distinguishes seven main domainsand allocates patterns to each of them. If allocation fails then pattern is treatedas ’Other’. The domains are following:1. Embedded Systems –Systems dedicated for special machines. The machinesmay have also a dedicated hardware what may set additional limitations.2. Dataflow and Production –This category enclose systems designed for processmonitoring and logistic.3. Information and Enterprise Systems –Enterprise systems that have to manageand present data.4. Web–based Systems –This category includes all the systems that are designedfor web interaction.5. Case and Related Developer Tools –This category contains all the applicationsthat help developers.6. Games –The category contains patterns applied in computer games.7. Scientific Approaches –Include all the patterns that do support calculationsfor scientific purpose.However the descriptions are not to detailed, the names of domains explain littlebit more. An interesting fact is that there is no category that in opposite to“Others” could group solutions that do not match to only one category. Thosepatterns could be assigned to category “MIXED”. The categorisation by domainsassumes that each pattern can belong to only one domain. An example of mixbetween domains can be a mix of Web based and Enterprise system because suchsystems are not unusual.The last literature source presents different perception of pattern categorisation.Author presents categorisation by View, which in fact is a mixture ofconcept of Intent presented by F.Bushman[21] and an approach based on structureof patterns. P. Avgeriou and U. Zdun distinguish following categories [8]:1. Layered View – In this approach architecture is presented as a complexentity that can be decomposed into interacting parts. A special emphasisis laid on description of particular parts and their mutual interaction.The view also requires strong decoupling of parts of pattern and takes intoaccount attributes of the pattern like scalability and modifiability.2. Data Flow View – The next view gathers data flow related patterns. Thepatterns are composed from elements performing transformations, carryingdata streams and connections between them. Essential attributes aremodifiability and integrity.
- Page 17 and 18: Chapter 1. Introduction 7do not pro
- Page 19 and 20: Chapter 1. Introduction 9Chapter 4
- Page 21 and 22: Chapter 2. Related Work 11This chap
- Page 23 and 24: Chapter 2. Related Work 13(b) Chara
- Page 25 and 26: Chapter 2. Related Work 15Figure 2.
- Page 27 and 28: Chapter 2. Related Work 17Drawbacks
- Page 29 and 30: Chapter 2. Related Work 19Figure 2.
- Page 31 and 32: Chapter 2. Related Work 21Advantage
- Page 33 and 34: Chapter 2. Related Work 23between a
- Page 35 and 36: Chapter 2. Related Work 252. Applic
- Page 37 and 38: Chapter 2. Related Work 274. Mediat
- Page 39 and 40: Chapter 2. Related Work 292.3 Summa
- Page 41 and 42: Chapter 3. Architectural Patterns 3
- Page 43 and 44: Chapter 3. Architectural Patterns 3
- Page 45 and 46: Chapter 3. Architectural Patterns 3
- Page 47 and 48: Chapter 3. Architectural Patterns 3
- Page 49 and 50: Chapter 3. Architectural Patterns 3
- Page 51 and 52: Chapter 3. Architectural Patterns 4
- Page 53 and 54: Chapter 3. Architectural Patterns 4
- Page 55 and 56: Chapter 3. Architectural Patterns 4
- Page 57 and 58: Chapter 3. Architectural Patterns 4
- Page 59 and 60: Chapter 3. Architectural Patterns 4
- Page 61 and 62: Chapter 3. Architectural Patterns 5
- Page 63 and 64: Chapter 3. Architectural Patterns 5
- Page 65 and 66: Chapter 3. Architectural Patterns 5
- Page 67: Chapter 3. Architectural Patterns 5
- Page 71 and 72: Chapter 3. Architectural Patterns 6
- Page 73 and 74: Chapter 3. Architectural Patterns 6
- Page 75 and 76: Chapter 3. Architectural Patterns 6
- Page 77 and 78: Chapter 3. Architectural Patterns 6
- Page 79 and 80: Chapter 3. Architectural Patterns 6
- Page 81 and 82: Chapter 3. Architectural Patterns 7
- Page 83 and 84: Chapter 3. Architectural Patterns 7
- Page 85 and 86: Chapter 4. Service Oriented Archite
- Page 87 and 88: Chapter 4. Service Oriented Archite
- Page 89 and 90: Chapter 4. Service Oriented Archite
- Page 91 and 92: Chapter 4. Service Oriented Archite
- Page 93 and 94: Chapter 4. Service Oriented Archite
- Page 95 and 96: Chapter 4. Service Oriented Archite
- Page 97 and 98: Chapter 4. Service Oriented Archite
- Page 99 and 100: Chapter 4. Service Oriented Archite
- Page 101 and 102: Chapter 4. Service Oriented Archite
- Page 103 and 104: Chapter 4. Service Oriented Archite
- Page 105 and 106: Chapter 4. Service Oriented Archite
- Page 107 and 108: Chapter 4. Service Oriented Archite
- Page 109 and 110: Chapter 4. Service Oriented Archite
- Page 111 and 112: Chapter 4. Service Oriented Archite
- Page 113 and 114: Chapter 5. Guidelines 1035.1 Patter
- Page 115 and 116: Chapter 5. Guidelines 105Descriptio
- Page 117 and 118: Chapter 5. Guidelines 107Result Con
Chapter 3. <strong>Architectural</strong> <strong>Pattern</strong>s 58Client Implicit Mechnism ServerFigure 3.24: Example usage <strong>of</strong> Implicit Invocation pattern3.2.2 Methods <strong>of</strong> patterns categorisationLiterature presents several different methods <strong>of</strong> pattern categorisations [8][38]which are meant <strong>to</strong> underline specific aspects <strong>of</strong> patterns like their structure,properties or applications. The reason why particular aspects are underlinedmay also vary in addition, may include for instance justification for architectureselection e.g. highly adaptive architectures adaptation. Source literature forarchitectural pattern section provides several different ways <strong>of</strong> pattern categorisation.Buschmann [21] presents following approaches:1. Domain –This categorisation groups all patterns that are <strong>of</strong>ten used in aspecific domain. An example domain can be for instance: scientific application.Most <strong>of</strong> those scientific applications need a lot <strong>of</strong> disc space <strong>to</strong>share common data and a high performance algorithm <strong>to</strong> do calculations.In many cases, algorithms are distributed over many computers that have<strong>to</strong> work <strong>to</strong>gether. This set <strong>of</strong> requirements and constrains can impose a set<strong>of</strong> most adequate patterns.2. Partition –Groups all the patterns that present a system as a stack <strong>of</strong> tiers.For instance, there can be a business tier and an integration tier. Integrationtier contains all patterns that enable easy integration and adaptation.Business tier groups patterns that improve maintainability and extendability.3. Intent –This category groups patterns in very narrow and high–specializedgroups. Each group consists <strong>of</strong> patterns that solve the same problem or help<strong>to</strong> reduce it. For instance Intent may enclose a group <strong>of</strong> patterns that solvea problem <strong>of</strong> system distribution or a group that collects only patterns thatenables easy exchange <strong>of</strong> data.Presented categorisations <strong>of</strong> patterns start from very general idea <strong>of</strong> a domainand go deeper through grouping <strong>of</strong> pattern having structure presented as a stack<strong>of</strong> tiers. Finally, patterns having the same application are put <strong>to</strong>gether.The second source [38] provides only one categorisation, namely categorisationby domain <strong>of</strong> application. This approach is in fact a clarification <strong>of</strong> the domain