Stereotypes & Framework in conceptual architecture Lecture 13-15 1.

Post on 01-Apr-2015

216 views 0 download

Tags:

transcript

1

Stereotypes & Framework in conceptual architecture

Lecture 13-15

2

The first alternative

1. Underline the key concepts in the requirements,

(ask yourself does this concept relates to the functionality?)

2. Copy key concepts onto a sheet of paper, (consider each one to see if it is a viable

component)

3. Draw the components and add connectors, (add arrows and labels)

3

Obtain a system narrative

Custom Shooz plan to advertise using conventional means, but want the website to be a location where customers can find out about theircustom range, get the measurement kit, and customize and ordershoes. They also want the site to interface to their accounting system.

The President of Custom Shooz, Funk O. Sole, explains:“So, what we did was develop a little measurement kit that we sendout to folks and they have to send it back. We've improved it over thelast couple of years so that it's almost foolproof. Once we have thecustomer's measurement kit in, we can produce almost any shoe from our range - all the custom stuff, like stitched-on patterns, dye coloursand finishes, laces and buckles, can be done without them ever beingwithin a thousand miles of our store!”

4

Identify key concepts

Custom Shooz plan to advertise using conventional means, but want the website to be a location where customers can find out about their custom range, get the measurement kit, and customize and order shoes. They also want the site to interface to their accounting system.

The President of Custom Shooz, Funk O. Sole, explains:“So, what we did was develop a little measurement kit that we send out to folks and they have to send it back. We've improved it over the last couple of years so that it's almost foolproof. Once we have the customer's measurement kit in, we can produce almost any shoe from our range - all the custom stuff, like stitched-on patterns, dye colours and finishes, laces and buckles, can be done without them ever being within a thousand miles of our store!”

5

Draw and connect

HTTP

Acct I/F

Order shoe

Public pagePersonal pageCustomer acct

Product range

Customise shoe

Templates

Shoe production

Customermeasurements

6

The second alternative Assign every possible concept from the

requirements to a category: Data: information that is stored,

processed, etc. Not directly a component but you might need components for data management

Function: Something done by something - typically components

Stakeholder: users, organizations - never components

7

The second alternative Assign every possible concept in a system

narrative to a category: System: external systems - sometimes

you need an interface component Hardware: physical components Abstract concept: explanation of

something - hardly ever components

8

Refine to componentsAdvertise - abstract concept X

Website - abstract concept implementation

Customers - stakeholder Customer account +

Personalised page

Custom range - Data Product range

Measurement kit - Data Customer measurements

Customise shoe - Function

Order shoe - Function

Accounting I/F - external system Acct I/F

Produce shoe - function/external system Shoe production

Patterns and finishes - part of Customise shoe

9

Refine the architecture

Add or split components

Clarify responsibilities

Identify stereotypes

Create data models

Explore behaviour

A component is a set of related

responsibilities. So, split a

component if responsibilities

are not related …

Replication can be considered at this stage,

to account for performance and availability needs

10

A stereotype indicates that a component (or in UML, a class) has certain properties or

attributes.

Conceptual stereotypes

Does a component have special types of responsibilities?

User presentation

Persistent storage

Real-time response

11

Component stereotypes Adding semantics to components through

stereotypes Tagging components to indicate certain

properties

Presentation component: interactions with users

Persistent storage: persistent/permanent data or data from external systems

Real-time components: components that handle requests quickly

12

Custom Shooz architecture with stereotypes

PublicPage

Personal Page

Customer accounts

Customer meas.

Product range

Order shoes

Customise shoes

Shoe productio

n

Browse products

TemplatesAcct I/F

HTTP

13

Data models

A data model captures the essential structure of data:

Data along connectors Persistent data

Student

ID : integer

Subject

ID : integerpoints : integer

Major

name : String

enrolled-in

currently-taking

0..*

0..*

0..*

14

What is behaviour

A system has

function, structure

and behaviour

Behaviour is the set of actions that the system performsBehaviour can be explored through:

Use Case maps Sequence diagrams

15

Extract events from narratives

Julie is interested in correlating sightings in the Northern beaches area of Sydney with bushfire patterns. She brings up tracking data for the last five years and proceeds to sort the data, and then export it into a form that it can be used by a statistical analysis package

Request Historical Tracking Data

Sort Historical Tracking Data

Export Historical Tracking Data

16

Events trigger use-case maps

Use-case maps allow us to visualise a path of action through a system A trace shows the

sequence of activities Activity is triggered

by an event Each time the trace

crosses a component, it exercises a responsibility

CompB

Data

Comp A

Comp CResp C1

EventName

RespB3

Resp A2

Use-case maps facilitate understanding of macroscopic behaviour

17

Conceptual Architecture Framework

18

Business architecture layer:

The business architecture layer contains an overview of all business activities, their objectives including the relations between each other from a business point of view.

It defines the necessary roles and organizational units that are involved in these activities.

The business architecture has to ensure that process-related to strategic decisions are based on current visions and business objectives.

Conceptual Architecture Framework

19

Conceptual Architecture Framework Application architecture layer:

The application architecture consists of “a set of applications and their interactions”

The different business processes are assigned to several functions provided by the applications.

The main focus of the application architecture lies on understanding all the functions and their interrelations that help to construct and maintain the architecture.

Beside any business constraints (like defined roles or locations) also technical constraints like standards and trends (XML, Web Services) should be considered.

20

Data architecture layer: It defines:

“what data is needed to meet user needs and how this data is conceptually structured”

It examines the completeness and correctness of source systems that are needed to obtain data and identifies the data facts and dimensions.

It also defines data models, and helps to establishes a set up for metadata infrastructure.

The data architecture defines the applicable standards concerning the data management, distribution and access.

Conceptual Architecture Framework

21

Technical architecture layer:

Here, focus is on the description of required infrastructure elements like hardware and software and their relationships, as well as possibilities for consistency and sharing between different systems.

Moreover, the technical architecture defines technologies that support applications and data management, services and protocols, as well as development methods and tools.

Conceptual Architecture Framework

22

Evolution aspects System technical aspects Quality surveillance & assurance Capacity planning User support Protection & security management Evolution control Strategy & platform