Software Architecture Workshop Summary A. Barletta ASL Sony Corporate Laboratories Europe
Summary Architecture (what you do) l Architecting (how you do – the process) l Architects (who they are) l Conclusions l
2
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
1
Architecture
What is an Architecture ? (I) Technology Visionary Gigantic Expensive
New
Multi tier Immortal
4
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
2
What is an Architecture ? (II) l
Definitions: “There are 3 reasons why Software Architecture is important … a) communication among stakeholders, b) early design decisions, and c) transferable abstraction of the system” “Architecture is the structure of the system, comprised of a) components or building blocks, b) externally visible properties of those components and the relationships among them”
5
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
When do we need an Architecture ? (I) l
Large/Complex System – – –
l
Multiple Interactive Applications –
6
Number of people (communication) Time Frame Size of the artifacts Different technical/engineering areas
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
3
When do we need an Architecture ? (II) l
Product Family –
l
Technology Architecture –
l
Ex: Sony Home Devices -> Symphony ! Java 2EE, .Net, CORBA,etc
Domain Standard/Reference Models – –
7
Harmonization of a large domain UML, ISO-OSI, etc
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
Software Architecture Domain l
Technology – –
l
Environment or Context – –
l
Engineering: Java, C++, digital signal processing Is it good ? team, company structure, resources, etc Is it right ?
Political – –
Finance, Engagement Is it successful ?
Tensions & Conflict
8
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
4
Big Stones First !! in the Jar the BIG stones first l Architectural Principles l Architectural Styles l Important Properties l Put
9
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
Divide et Impera l Reduce
complexity l Constraint infinite choices l Focus on priorities Ø Intellectually
manageable Ø Socially manageable 10
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
5
Architecting
Architecting l l
It is the step-by-step process to build a proper Architecture starting from the contextual forces l l l
l
to the final solution l l
Ø
12
problems to solve environment skills Architectural principles, styles, attributes, etc Architect document (components, interfaces, protocols, etc)
The process is a framework to be used properly. SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
6
Software Architecture Model (I) l l
Meta-Architecture Architecture –
Conceptual Architecture
–
Logical Architecture
–
Execution Architecture
“identification of components and allocation of responsibilities” “design of component interactions, connection mechanisms, protocols” “physical allocation of resources and process”
l
13
Architecture Guidelines and Policies
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
Software Architecture Model (II)
14
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
7
Software Architecting Init/Commit Architectural Requirements
System Structuring
Architecture Validation
15
Deployment
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
Architects
8
Architect(s) Role
l
Domains of competency What you know ? What you do ? What you are ?
l
How many do you need ?
l l l
17
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
Domains of Competency Framework What you KNOW
What you DO
What you ARE
Leadership Consulting Organizational Politics Business Strategy Technology
18
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
9
Domains of Competency l
Leadership –
l
Consulting –
l
19
Who is in control of What
Business Strategy –
l
Willing to provide support
Organizational Politics –
l
Technical, Intellectual
Visionary but with the feet on the ground
Technology SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
What you know ? l l l l
20
Understanding what technical issues are the key to success Modeling techniques & development methods Organization’s business strategy and rationale Understand where are the Key players in the organization
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
10
What you do ? l l l l l
21
Communicate, Communicate and … Communicate Modeling, tradeoff analysis, prototype, experiment, system viewpoint Prepare architectural documents and presentations Translate business strategy into technical vision and strategy Motivate and make decisions SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
What you are ? l l l l l
22
Investigative, Creative and Practical Visionary Ambitious and driven, patient and not Good mentor, teacher Committed, dedicate, passionate
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
11
Conclusions l
Architecture – –
l
Architecting –
l
Architecture Model and Process
Architects – –
23
Structure of the solution: good, right and successful “Divide et Impera”, reduce complexity
What you DO, you KNOW, you ARE Communication
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
References l
24
http://www.bredemeyer.com/papers.htm
SCLE Colloquium - March 2003 - Software Architect Workshop Summary V 1.0
12
Thank you very much for your patience J
Any Question ?
13