Experiences from the Architectural Change Process Josef Nedstam Even-André Karlsson Martin Höst Dept of Telecom, Lund University, Sweden www.telecom.lth.se/Personal/josefn/lic
Jan 02, 2016
Experiences from the Architectural Change
ProcessJosef Nedstam
Even-André Karlsson Martin Höst
Dept of Telecom, Lund University, Swedenwww.telecom.lth.se/Personal/josefn/lic
The Product LifecycleMarket Penetration
Time
Releases
Introduction
Growth
MaturityDecline
Architecture Work Changes over the Product
Lifecycle
Time
Releases
EstablishArchitecture
Use Architecture
NewArchitecture
Market Penetration
Process Improvement vs Process Change
Time
Releases
Projectoriented
Line oriented
Next productgeneration – New process
Market Penetration
Research Question
• Requirements -> Functions -> Modules: Fairly well understood
• Problem -> Technically optimal architecture solution: Fairly well understood
• Existing system -> Changing Driving Requirements -> Architecture Changes?
F1
Fn
M1
Mn
Req Design Impl Integration Sys Test
?
MethodRound 1: General
interviews”Hypothesis”:
There’s a process
Analysis: Does the process
apply?
3 Companies
Round 2: Specific
interviews7 Cases
Round 1: Interviews
• 1-2 Architects at 3 companies
• How are architectural changes decided?
• Identifying and discussing current architecture changes
Round 1: Interviews
• 1-2 Architects at 3 companies
• How are architectural changes decided?
• Identifying and discussing current architecture changes
Round 1: Interviews
• 1-2 Architects at 3 companies
• How are architectural changes decided?
• Identifying and discussing current architecture changes
A Generic Architecture Change Process
1. A need emerges2. Initial decision preparation
– Document background– Identify stakeholders/decision
makers
3. Decision: Go/no-go4. Decision preparation
– Analyze technical alternatives– Analyze process and organization
impact– Return on investment
5. Decision: Rollout6. Rollout
42
35
61
Round 2: Interviews
• Architects involved in the 7 changes
• What was the architecture change?
• Why was the architectural change needed?
• Who initiated it?• How was the
associated decision made?
Round 2: Interviews
• Architects involved in the 7 changes
• What was the architecture change?
• Why was the architectural change needed?
• Who initiated it?• How was the
associated decision made?
Round 2: Interviews
• Architects involved in the 7 changes
• What was the architecture change?
• Why was the architectural change needed?
• Who initiated it?• How was the
associated decision made?
Round 2: Interviews
• Architects involved in the 7 changes
• What was the architecture change?
• Why was the architectural change needed?
• Who initiated it?• How was the
associated decision made?
Round 2: Interviews
• Architects involved in the 7 changes
• What was the architecture change?
• Why was the architectural change needed?
• Who initiated it?• How was the
associated decision made?
The Changes
Company A: Control systems1. Protocol Framework2. Real-Time Operating System
Company B: Platforms for consumer electronics3. Data Router4. HAL Split5. Include-file Reorganization
Company C: Development tools6. Communication Mechanism7. Editor Framework
42
35
61
The ChangesChg
Driver Source
1 Distribute development
Corporate, mergers, TtM
2 Cut nbr of OSes Corporate, costs
3 Save memory Architects, HW costs
4 Simplify HW changes Developers, TtM
5 Restore tool support All, tool failure
6 Increase nbr of editors Architects, integration
7 Reuse editor elements Architects, distribution, TtM
Protocol Framework:
RTOS switch:
Data Router:
HAL Split:
Include-file reorganization:
Communication mechanism:
Editor Framework:
42
35
61
1: A Need Emerges
• Initiators: All Levels• Technical implications from
organizational changes/business decisions come as a surprise
• More knowledge needed regarding impact of decisions
• People should be encouraged to start analyzing architecture changes
42
35
61
2: Initial Decision Preparation
• Low cost step – hopefully possible for anyone to initiate
• Background, stakeholders, decision-makers, impact
• Will change be accepted?
42
35
61
3: Decision Point:Go/No-Go
• First decision to commit resources
• Initiator: Convince• Decision maker: Prioritize
resources• Who can commit resources?• Tie preparations to people
affected
42
35
61
4: Decision Preparation
• Technical alternatives• Process/organizational impact• Return on investment• Performed as Implementation
Proposal• Company: Make right decision• Initiator: Show need for change
42
35
61
5: Decision Point: Rollout
• As Tollgate 2• But who will implement changes?
(Technical / process / organziational)
• Tradeoff: Amount of architectural change vs amount of new feature content
• When will rollout happen?
42
35
61
6: Rollout
• Technical aspects: Product-oriented projects– Solutions developed separately by
architects may not be embraced– Finding a project that will accept
responsibility
• Organizational/Process aspects:– Organization seldom exists– Synchronize with technical change
Differences Functional/Architectural
Changes• Functional
– Needs come from customers
– Established organization and process for managing change
– Feature by feature _
– Limited effects– Part of standard
work
• Architectural– Needs can emerge
from many sources– Changes often not
tied to architecture organization, no established process _
– Often spans many features
– Affects organization– Affects how people
work
Rollout
• How to implement technical parts?
– Separate project– Parallel project– Part of standard
project– New product
generation
• How to implement organizational changes?– Insufficient long-
term view in projects?
– Insufficient ability to influence projects from line management?
Architectural Changes lead to Process and
Organizational Changes
Process
Project
Architecture
Features
Line
How work is done
Product
OrganizationQuality
Thesis: Changes of Processes and Architectureswww.telecom.lth.se/Personal/josefn/lic
Further Work
• The balance between line and project
• Survey: Categorization of architecture changes: Drivers, initiators, success factors, organization, implementation environment
• Deep dive into the organizational change
• Empowering architects
Further Work
• Architecture Investment Business Cases?
Cost
Time
ReleasePreemptiveArchitectureInvestment
UnscheduledArchitectureFix
My Solution
The PM Pointer
Upcoming Ideas:PM Rearview MirrorPM Kick-in-the-butt
Discussion Issues
• How to organize architecture work? (Line/Project)
• When to do architecture work? (Preemptive/Just-in-time/The bottom line)
• How to perform neccessary reorganizations?
• How to develop?– Line: Effective, specialized– Project: Teamwork, from start to finish, clear
goals