Arteon: Architectural and Technology Ontology

Post on 14-Jun-2015

102 views 0 download

Tags:

Transcript of Arteon: Architectural and Technology Ontology

GESSISoftware Engineering for Information Systems Group

Arteon

ARchitectural and TEchnology ONtology

2

Arteon presentation

Outline• Context• Method• Arteon• Ongoing work

3

Arteon presentation

CONTEXTThe things we must know before we enter into details

4

Arteon presentation

Context: Related concepts

5

Arteon presentation

Context: Related concepts

6

Arteon presentation

Context: Overview

Knowledge

Arteon

SRSNF

Current and other systems

Human support

Architectural decisions

ArchiTech

Method

Architectural views

LogicalDeployment

PhysicalProcess

Code

SRSF

Views Generation

7

Arteon presentation

Context: Method

Requirements analysis

Human support

SRSNF

Current and other systems

Constraints and Quality

goals

Architectural decision making

Architectural decisions

ARTEON

8

Arteon presentation

METHODUnderstanding the method with examples

9

Arteon presentation

Method: The requirements

Requirements analysis

Human support

SRSNF

Current and other systems

Constraints and Quality

goals

Architectural decision making

Architectural decisions

ARTEON

10

Arteon presentation

Method: The requirements• Non-Functional Requirements:

NF1: The system should be developed with Open Source Software (OSS)

NF2: The data should be stored in each organization

NF3: The system should allow operation from each organization

11

Arteon presentation

Method: Requirements analysis

Requirements analysis

Human support

SRSNF

Current and other systems

Constraints and Quality

goals

Architectural decision making

Architectural decisions

ARTEON

12

Arteon presentation

Method: Requirements analysis• Requirements analysis:

NF1: The system should be developed with Open Source Software (OSS)• C1: Property “License type” equal to “OSS”• G1: Community involvement

NF2: The data should be stored in each organization• C2: Property “Persistence” equal to “distributed”

• G2: Security

NF3: The system should allow operation from each organization• C3: Property “Access type” includes “remote access”

• G3: Availability

13

Arteon presentation

Method: Decision making

Requirements analysis

Human support

SRSNF

Current and other systems

Constraints and Quality

goals

Architectural decision making

Architectural decisions

ARTEON

14

Arteon presentation

Method: Decision making• Making decisions (two ways):

Constraint satisfaction decisions (quantitative)• Constraints over properties of the elements of the

system

Quality-oriented decisions (qualitative)• Knowledge of decisions• Relation between decisions and quality attributes

• We think that both ways can be used together

15

Arteon presentation

Decide to use

elements

Add new constraints

Evaluate constraints

Decision making: 1st way• Constraint satisfaction decisions (1st way)

• Four iterations: Architectural styles Architectural

components

Technological styles Technologies

16

Arteon presentation

1st way

Arch. styles C1 C2 C3

3-Layer

SOA

Blackboard

Pipe and filter

MVC

• C1: Property “License type” equal to “OSS”• C2: Property “Persistence” equal to “Distributed”• C3: Property “Access type” includes “Remote access”

AllowDeny

Human support

Evaluate constraints

Decide to use

elements

Add new constraints

17

Arteon presentation

AllowDeny

1st way

Arch. Components C1 C2 C3 C4 C5 C6

Presentation layer

Remote presentation

Persistence layer

Distributed persistence

Domain layer

• C4: “3-Layer” requires “Presentation layer”• C5: “3-Layer” requires “Domain layer”• C6: “3-Layer” requires “Persistence layer”

Evaluate constraints

Decide to use

elements

Add new constraints

18

Arteon presentation

1st way

Tech. styles C1 C2 C3

Java

LAMP

.NET

• C1: Property “License type” equal to “OSS”• C2: Property “Persistence” equal to “Distributed”• C3: Property “Access type” includes “Remote access”

• No new constraints.

Human support

Evaluate constraints

Decide to use

elements

Add new constraints

LAMP is an acronym of a set of software subsystems used to build a global solution.

AllowDeny

19

Arteon presentation

1st way• C7: “LAMP” requires “Web server” implemented by “Apache”

• C8: “LAMP” requires “DBMS” implemented by “MySQL”

Technologies C7 C8

Web server

Apache

DBMS

MySQL

Evaluate constraints

Decide to use

elements

Add new constraints

AllowDeny

20

Arteon presentation

Decision making: 2nd way• Quality-oriented decisions (2nd way)

Select decisions

Increase knowledge

Evaluate quality

21

Arteon presentation

2nd way• Which are the quality goals?

Community involvement Security Availability

• In a real case it will be similar to: 50% security related requirements 30% usability related requirements 20% efficiency related requirements

Human support

Evaluate quality

Select decisions

Increase knowledge

22

Arteon presentation

2nd way• Security related decisions

Authentication facilities Secure communication User account management …

• Selecting one or more decisions will impact on new constraints E.g. secure communications will require some

technology such as SSL.

Evaluate quality

Select decisions

Increase knowledge

23

Arteon presentation

2nd way• Two ways to increase the knowledge:

Learning: when a new decision is made from a constraint imposed by a NFR. The decision is related to the quality property where the NFR was classified.

Reliability: when a decision is selected in the quality-oriented decisions process its reliability is increased in relation to the quality property.

Evaluate quality

Select decisions

Increase knowledge

24

Arteon presentation

ARTEONModel representation of Arteon

25

Arteon presentation

Arteon: Overview• We have 3 in 1 ontologies

Requirements Architectural elements Reasoning

• The ontology is build in UML

• More than 20 interrelated concepts

26

Arteon presentation

Arteon: Requirements• Totally simplified to reuse existing works

• The ontology can represent all kinds of requirements, but we only consider NFRs.

• The requirements (NFRs) should be: Measurable / Checkable Classified in a quality model Formalized (e.g. i*)

27

Arteon presentation

Arteon: Architectural elements• “3-Layer”, “Layered”• “3-Layer” specializes “Layered”• “Presentation layer”, “Domain layer”, etc.• “3-Layer” use “Presentation layer”, etc.• “Distributed persistence”, “Remote presentation”• “Distributed persistence” combinable with “Remote

presentation”• “Distributed persistence” variation for “3-layer”

28

Arteon presentation

Arteon: Architectural elements• “LAMP”, “Stack solution”• “LAMP” specializes “Stack solution”• “BDMS”, “Web server”, etc.• “Stack solution” use “BDMS”, etc.• “Distributed DBMS”• “Apache”, “MySQL”, etc.• “DBMS” implementable by “MySQL”

29

Arteon presentation

Arteon: Architectural elements• There are many similarities between

architecture and technology

• So, we put it all together

30

Arteon presentation

Arteon: Reasoning• Which is the relationship with requirements?

31

Arteon presentation

Arteon: Reasoning• Which is the relationship with architectural

elements?

32

Arteon presentation

Arteon: Reasoning• C1: Property “License type” equal to

“OSS”

• Element “LAMP” have the property “License type” with the

value “OSS”

33

Arteon presentation

Arteon: Reasoning• C1 is satisfied by element “LAMP”

• We make the decision “D1” to use element “LAMP” We know that the “Community involvement” quality is helped by

the decision “D1” (Knowledge acquisition!)

Human support

34

Arteon presentation

Arteon: Reasoning• “LAMP” requires “SGBD”

• Really means: “LAMP” impose the decision to use “SGBD”

35

Arteon presentation

ONGOING WORKWhat are we going to do from now on

36

Arteon presentation

Ongoing work• Exploratory work: Survey, interviews• Ontology design improvements• Analysis of the ontology quality• Population of the ontology (knowledge)• Validation (case of study)• Tool support

GESSISoftware Engineering for Information Systems Group

Comments and questions

David Ameller <dameller@essi.upc.edu>