abs 02 architecture and the role of the architectwrichter/handouts/abs 02 architecture... ·...

13
1 Architecture of Business Systems Architecture and the Role of the Architect Sandro Schwedler Wolfram Richter 3 Sandro Schwedler, Wolfram Richter 09.10.2012 Lecture Outline Building Block: Integration Technologies (W) Building Blocks: Introduction, Application Server (S) SOA (W) Building Block: UI Server (S) Architecture Design (W) Building Block: Content Management Systems (S) Process of Software Architecting, Requirements (W) Building Block: Security Components (S) Building Block: Databases (S) Introduction (W) Lecture Overview Architecture & role of the Architect Views and Viewpoints

Upload: buidiep

Post on 02-Apr-2018

214 views

Category:

Documents


1 download

TRANSCRIPT

1

Architecture of Business Systems

Architecture and the Role of the Architect

Sandro Schwedler

Wolfram Richter

3 Sandro Schwedler, Wolfram Richter09.10.2012

Lecture Outline

Building Block: Integration Technologies (W)

Building Blocks: Introduction, Application Server (S)

SOA (W)Building Block: UI Server (S)Architecture Design (W)

Building Block: Content Management Systems (S)

Process of Software Architecting, Requirements (W)

Building Block: Security Components (S)

Building Block: Databases (S)

Introduction (W)– Lecture Overview

– Architecture & role of the

Architect

– Views and Viewpoints

2

4 Sandro Schwedler, Wolfram Richter09.10.2012

Goals of this presentation

� After this lecture, you...

– Understand the concept of IT architecture and how it differs from design

– Understand the role of the IT architect and the skill set required to fulfil it

– Can differentiate the role of an (IT) architect from other typical project roles

5 Sandro Schwedler, Wolfram Richter09.10.2012

What is Architecture?

Architecture (Latin architectura, from the Greek ἀρχιτέκτων – arkhitekton, from ἀρχι-

"chief" and τέκτων "builder, carpenter, mason") is both the process and product of planning, designing and construction. […]

"Architecture" can mean:

– A general term to describe buildings and other physical structures.

– The art and science of designing and erecting buildings and other physical structures.

– The style and method of design and construction of buildings and other physical structures.

– The practice of the architect, where architecture means the offering or rendering of professional services in connection with the design and construction of buildings, or built environments.[1]

– The design activity of the architect, from the macro-level (urban design, landscape

architecture) to the micro-level (construction details and furniture).

– The term "architecture" has been adopted to describe the activity of designing any kind of system, and is commonly used in describing information technology.

http://en.wikipedia.org/wiki/Architecture

3

6 Sandro Schwedler, Wolfram Richter09.10.2012

What is IT Architecture?Definitions according to ISO/IEC 42010 (IEEE 1477) (1/2)

� architect: The person, team, or organization responsible for designing systems

architecture.

� architectural description (AD): A collection of products to document an

architecture.

� architecture: The fundamental organization of a system embodied in its

components, their relationships to each other, and to the environment, and the

principles guiding its design and evolution.

� designing: The activities of defining, documenting, maintaining, improving, and

certifying proper implementation of an architecture.

http://en.wikipedia.org/wiki/ISO/IEC_42010

7 Sandro Schwedler, Wolfram Richter09.10.2012

What is IT Architecture?Definitions according to ISO/IEC 42010 (IEEE 1477) (2/2)

� system: A collection of components organized to accomplish a specific function or

set of functions. The term system encompasses individual applications, systems in

the traditional sense, subsystems, systems of systems, product lines, product

families, whole enterprises, and other aggregations of interest.

� system stakeholder: An individual, team, or organization (or classes thereof) with

interests in, or concerns relative to, a system.

� view: A representation of a whole system from the perspective of a related set of

concerns.

� viewpoint: A specification of the conventions for constructing and using a view. A

pattern or template from which to develop individual views by establishing the

purposes and audience for a view and the techniques for its creation and analysis.

http://en.wikipedia.org/wiki/ISO/IEC_42010

4

8 Sandro Schwedler, Wolfram Richter09.10.2012

What is IT Architecture?Definitions according to TOGAF / The Open Group

TOGAF embraces but does not strictly adhere to ISO/IEC 42010:2007 terminology.

In TOGAF, "architecture" has two meanings depending upon the context:

– A formal description of a system, or a detailed plan of the system at component level to guide its implementation

– The structure of components, their inter-relationships, and the principles and guidelines governing their design and evolution over time

http://pubs.opengroup.org/architecture/togaf9-doc/arch/chap02.html

9 Sandro Schwedler, Wolfram Richter09.10.2012

Architecture vs. Design

All architecture is design, but not all design is architecture.

Architecture represents the significant design decisions that shape a system, where significant is measured by cost of change.

-- Grady Booch, IBM Fellow

‚‚

5

10 Sandro Schwedler, Wolfram Richter09.10.2012

Why IT Architecture?

� Methodology to tackle unknown challenges

� Reduce project risk / higher probability of project success

� Improve quality of deliverables: enables sound decisions

� Time-to-market: do not have to reinvent the wheel with regards to documentation,

project participants

� Long-term viability: allows others to understand what has been built

� Allow projects to scale: technique to distribute tasks over many shoulders

� Can do complex projects with less (expensive) resources

� ...

12 Sandro Schwedler, Wolfram Richter09.10.2012

The role of the IT architect1. Architects understand end-to-end development

� Consultant: Identifies new business and technology environment opportunities. Aligns processes to technology using knowledge assets and experts. Teams with clients to provide lasting value

� IT Architect: Defines solutions to client business problems through the reasoned application of information technology

� IT Specialist: Supports solution construction working in a team with IT Architects Focuses on the detail of getting things done. Validates the solution in the context of the solution sale

� Project Manager: Initiates, plans, executes, controls, and closes projects. Ensures that projects are completed on time, within budget, and with high customer satisfaction.

Roles in typical client projects, mapped to RUP/OpenUP Disciplines

6

13 Sandro Schwedler, Wolfram Richter09.10.2012

The role of the IT architect2. Architects understand their Role

14 Sandro Schwedler, Wolfram Richter09.10.2012

The role of the IT architect3. Architects Manage Risk and Manage Change

7

15 Sandro Schwedler, Wolfram Richter09.10.2012

Architecture Stability

%Resources derived from information in “Software Project Management – A Unified Framework” [Royce]

16 Sandro Schwedler, Wolfram Richter09.10.2012

The role of the IT architect4. Architects Communicate with Stakeholders

8

17 Sandro Schwedler, Wolfram Richter09.10.2012

The role of the IT architect5. Architects Reuse Assets

18 Sandro Schwedler, Wolfram Richter09.10.2012

The role of the IT architect6. Architects Right-Size their Involvement

9

19 Sandro Schwedler, Wolfram Richter09.10.2012

The role of the IT architect6. Architects Right-Size their Involvement

• Requirements, Functional, Deployment,

Validation, Performance and Security

viewpoints are used to document the architecture. An Information Viewpoint is

added to emphasize this particular aspect

of the architecture.

• Requirements, Functional,

Deployment and Performance

viewpoints are used to document the architecture.

Work product

• An Architecture Overview is created as a

formal work product that is maintained.

• An Architecture Overview is created

as a sketch on a whiteboard and then

photographed (it is not kept up to

date).

Task

• Different individuals are assigned to each

of the architecture roles of Lead Architect,

Application Architect, Infrastructure

Architect and Data Architect. In addition,

the team also includes a Security Architect.

• A single person is assigned to play

the roles of Lead Architect,

Application Architect, Infrastructure

Architect and Data Architect.

Role

Large ProjectSmall Project

20 Sandro Schwedler, Wolfram Richter09.10.2012

The role of the IT architect7. Architects Influence the Requirements

ScheduleResources

Stakeholder input

ScalabilityPerformance

DistributionPlatforms

MaintainabilityPortability

10

21 Sandro Schwedler, Wolfram Richter09.10.2012

The role of the IT architect8. Architects Derive Solutions from Business Needs

�Developed at Rational Software (now IBM

Rational)

�Architecturally-significant requirements drive the

architecture

�Each iteration considers the key architectural

elements of the solution, before realizing the requirements across them

The

Rational Unified Process (RUP)

�Developed at Siemens Corporate Research

�An analysis of global factors drives the architecture

� Iteratively addresses challenges across four views (conceptual, execution, module and code architecture)

Siemens’ 4 Views

(S4V) method

�Developed at the Software Engineering Institute

�Quality attributes drive the architecture

�Underpinned by architectural tactics and patterns

Attribute Driven Design

(ADD) Method

22 Sandro Schwedler, Wolfram Richter09.10.2012

Within the industry there are several IT architect “disciplines”*

Business Process

Information

Applications

Middleware

H/W Infrastructure

The Enterprise Architect

focuses on IT concerns that

must be addressed

consistently across the

entire enterprise. Coverage

is comprehensive though

generally not highly detailed.

Generally expressed as

principles, models and

standards (and possibly

services).

11

23 Sandro Schwedler, Wolfram Richter09.10.2012

Within the industry there are several IT architect “disciplines”

Business Process

Information

Applications

Middleware

H/W Infrastructure

The Solution Architect

focuses on the architecture

of a complete IT solution,

including business process

implications, to a business

problem, need or

opportunity, consistent with

the principles, models,

standards and shared

services defined by an

Enterprise Architecture.

24 Sandro Schwedler, Wolfram Richter09.10.2012

Business Process

Information

Applications

Middleware

H/W Infrastructure

Business Process

Information

Applications

Middleware

H/W Infrastructure

Business Process

Information

Applications

Middleware

H/W Infrastructure

Business Process

Information

Applications

Middleware

H/W Infrastructure

Business Process

Information

Applications

Middleware

H/W Infrastructure

Business Process

Information

Applications

Middleware

H/W Infrastructure

Within the industry there are several IT architect “disciplines”

Business Architect

Software Architect

Information Architect

Middleware Architect

Application Architect

Infrastructure Architect

12

25 Sandro Schwedler, Wolfram Richter09.10.2012

T-Shape / Skills required to become an architect

� Breadth

– Know a wide range of technologies and be able to

discuss it with the various specialists

� Depth

– Know how to develop in a technology

� Soft Skills

– Working with people

– Communication

– Build consensus

– Conceptual thinking

– Project Management (needs to know PM but should

not act as PM)

– Politics

� Business Acumen

– Cost

– Licensing

� An IT Architect should not be:

– A “top-level” software designer

– The project manager

– A technology expert

– A product expert

– A lone scientist

http://blog.opengroup.org/2011/02/17/t-shaped-people/

B r e a d t h

Depth

26 Sandro Schwedler, Wolfram Richter09.10.2012

Further Reading

� http://en.wikipedia.org/wiki/ISO/IEC_42010

� http://en.wikipedia.org/wiki/Software_architecture

� The Tao of the Software Architect

http://www.ibm.com/developerworks/rational/library/4032.html

� http://en.wikipedia.org/wiki/Software_architect

� Software Engineering Radio http://www.se-radio.net/

– Episode 110: Roles in Software Engineering I

ISBN 978-0-321-35748-9 ISBN 978-0201835953

13

27 Sandro Schwedler, Wolfram Richter09.10.2012