stereotypes & framework in conceptual architecture lecture 13-15 1
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