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 ...

12.07.2015 Views

Chapter 3. Architectural Patterns 42source. Those patterns are not taken into consideration during next steps. Thetable contains also Publisher-Subscriber. Publisher–Subscriber is also rejectedbecause it is a known design pattern [22][34] while the table should contain onlyarchitectural patterns. This exception is important because it confirms previouslyaddressed problem that says that it can be very hard to distinguish both architecturaland design patterns from each other. Moreover, authors of the secondsource claim that all architectural patterns were checked before in terms of theiradherence to domain of architectural patterns. This finding means that othersources may also present a design pattern as an architectural pattern.3.2 CategorisationIn the previous section, nineteen architectural patterns out of thirty two werechosen. Analysis of feasibility of migration of this number of architectural patternswould require a lot of effort, consequently, the number of pattern will bereduced during the next selection. The selection is based on categorisation ofpatterns. The patterns are grouped and the most general pattern is chosen as arepresentative. This approach reduces considerably amount of patterns to analyse.The most general means that a pattern can be compared to other patternsbecause they have similar structure and purpose. Additionally, its structure isthe simplest. The representatives of each category reconsidered in next sections.This section presents process of selection of representatives of categories. Thesection is organized in following manner:1. Description of selected Architectural Patterns – the subsection provides descriptionsof patterns selected in the previous section. Each description hasfour elements: overview, elements and relationships between elements. Additionallya picture presenting an example usage of a pattern is provided.Since P. Avgerious in opposite to authors of other sources does not providedescriptions of patterns in his work, the descriptions and pictures base onremaining two sources of patterns.2. Methods of patterns categorisation – this subsection presents shortly identifiedways of pattern categorisation. Since creation of own categorisationmethod is not in scope of the work, one of presented approach is chosen.3. Allocation of pattern to categories – the purpose of this subsection is to allocatepatterns described in the first subsection to categories of categorisationmethod selected in the second subsection.4. Selection of representatives – this section provides comparison of patternswithin categories. As the result of comparison, representatives of categoriesare selected. The pattern for migration will be selected from those representatives.

Chapter 3. Architectural Patterns 433.2.1 Description of selected Architectural PatternsThis section presents descriptions of previously selected architectural patterns.The description includes short overview of the pattern, elements of the pattern,relationship between the elements and a picture presenting an example usage ofthe pattern. Figure 3.5 presents notation used in figures presented example usageof architectural patterns.Layer’s name1) 2) 3) 4)Element’s nameFigure 3.5: Notation used in example application of patternsDescription of the notation1. Unidirectional relationship– the relationship is represented by a dashed linewith an arrow on one end. An arrow on the top of the line points directionof the relationship. An element having end of line without an arrow canstart interaction with the element pointed by the arrow.2. Bidirectional relationship– the relationship is represented by a dashed linewith arrows on both ends. In this case, elements on both sides of line canstart an interaction.3. Layer– it is represented by a dash-lined rectangle. This is a grouping elementhaving abstract meaning depending on description of the pattern. Itcan be linked using both types of relationships. It can contain other layersand elements. A layer is identified by a name.4. Element– it is represented by a solid lined rectangle. An element has aspecific meaning dependent on particular pattern. An element is identifiedby a name.Architectural Patterns The architectural patterns are listed in the order theyappear in the table 3.1. Their description is following: tab:PatternSummary1. LayersOverview – This pattern imposes encapsulation of the similar functionalitiesin containing layers what helps to separate low-level functionalitiesfrom high level.Elements

Chapter 3. <strong>Architectural</strong> <strong>Pattern</strong>s 433.2.1 Description <strong>of</strong> selected <strong>Architectural</strong> <strong>Pattern</strong>sThis section presents descriptions <strong>of</strong> previously selected architectural patterns.The description includes short overview <strong>of</strong> the pattern, elements <strong>of</strong> the pattern,relationship between the elements and a picture presenting an example usage <strong>of</strong>the pattern. Figure 3.5 presents notation used in figures presented example usage<strong>of</strong> architectural patterns.Layer’s name1) 2) 3) 4)Element’s nameFigure 3.5: Notation used in example application <strong>of</strong> patternsDescription <strong>of</strong> the notation1. Unidirectional relationship– the relationship is represented by a dashed linewith an arrow on one end. An arrow on the <strong>to</strong>p <strong>of</strong> the line points direction<strong>of</strong> the relationship. An element having end <strong>of</strong> line without an arrow canstart interaction with the element pointed by the arrow.2. Bidirectional relationship– the relationship is represented by a dashed linewith arrows on both ends. In this case, elements on both sides <strong>of</strong> line canstart an interaction.3. Layer– it is represented by a dash-lined rectangle. This is a grouping elementhaving abstract meaning depending on description <strong>of</strong> the pattern. Itcan be linked using both types <strong>of</strong> relationships. It can contain other layersand elements. A layer is identified by a name.4. Element– it is represented by a solid lined rectangle. An element has aspecific meaning dependent on particular pattern. An element is identifiedby a name.<strong>Architectural</strong> <strong>Pattern</strong>s The architectural patterns are listed in the order theyappear in the table 3.1. Their description is following: tab:<strong>Pattern</strong>Summary1. LayersOverview – This pattern imposes encapsulation <strong>of</strong> the similar functionalitiesin containing layers what helps <strong>to</strong> separate low-level functionalitiesfrom high level.Elements

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!