SlideShare a Scribd company logo
1 of 30
© Balandor Oy 2017
System Description asSystem Description as
a Map for Developmenta Map for Development
Tom Weckström, Balandor OyTom Weckström, Balandor Oy
FiSMA Scope Manager ForumFiSMA Scope Manager Forum
12.12.201712.12.2017
© Balandor Oy 2017
Balandor Oy – Management Advisor
●
Lean- and Agile -thinking as a basis
● Packaged services as a solution, e.g.:
•Offering Audit
•CX assessment
•Scalability booster
●
Systems thinking behind all the solutions.
● More info: http://balandor.fi/en/
© Balandor Oy 2017
System
© Balandor Oy 2017
© Balandor Oy 2017
© Balandor Oy 2017
© Balandor Oy 2017
© Balandor Oy 2017
© Balandor Oy 2017
Which of these systems isWhich of these systems is
the most likely to bethe most likely to be
produced without aproduced without a
description document?description document?
© Balandor Oy 2017
Description”a spoken or written account of
a person, object, or event”
- Apple Dictionary -
ORIGIN: from Latin
descriptio(n-), from describere
‘write down’.
© Balandor Oy 2017
System DescriptionSystem Description
IS it needed?IS it needed?
WHAT would YOU NEED in it?WHAT would YOU NEED in it?
WHAT does it HELP to have one?WHAT does it HELP to have one?
© Balandor Oy 2017
Map
© Balandor Oy 2017
Being parachuted to unknownBeing parachuted to unknown
territory...territory...
© Balandor Oy 2017
No sign of where you are...No sign of where you are...
© Balandor Oy 2017
You start walking and findYou start walking and find
a road and a man with aa road and a man with a
car and a map...car and a map...
© Balandor Oy 2017
Case examples from aCase examples from a
few software companiesfew software companies
© Balandor Oy 2017
Case 1:Case 1:
● Very little original system description - only if customers asked,
was something created
●
High-level architecture diagram worked as a starting point. The
next level was source code.
● Code base was slow to learn and considered complicated.
●
Later, automated tools were used to create better understanding
of the function calls, code base, etc.
© Balandor Oy 2017
Case 2:Case 2:
● System architeture drawings were used.
●
Also some written material about software components existed.
●
Verbose written documentation was used in the planning phase
and wasn't often updated later on.
● Some senior developers used color-coded system diagrams to
quickly communicate status of large new sub-system development.
© Balandor Oy 2017
Case 3:Case 3:
● A well documented system was easily handed over for
maintenance, thanks to the customer's system description
template.
● Architecture drawings helped us plan major system upgrades.
●
All the used 3rd
party software components were listed, and kept
up-to-date.
© Balandor Oy 2017
Case 4:Case 4:
●
No drawings, but a bunch of URLs for each system component.
● No code base documentation. Fragmented code-base with layers
of old and new code, different languages, etc.
●
Knowledge about the system was verbal folklore.
● One sub-system had detailed drawings, and a list of components
used, which enabled sub-contracting efficiently.
© Balandor Oy 2017
Case 5:Case 5:
● No manually created or automated system descriptions were
available - "Ask the architect and he will tell you".
●
Even after more than a year working on the system, a developer
might not know, which parts of the system are affected by his
code.
●
Monolithic approach: "Most of the stuff is handled in this big
black box very few of us understand".
© Balandor Oy 2017
Case 6:Case 6:
● Not even a high-level description existed.
●
Employee turnover was high, and new people were dependent on
very few old-timers, who knew the system.
● When a technical architecure assessment was done by an external
consultant, the work started with interviewing the software
architects and photographing the whiteboard drawings.
●
Customers' quality criteria mandated better descriptions for some
products.
© Balandor Oy 2017
Case 7:Case 7:
●
Developers took initiative and used the system description as an
architecture planning tool.
●
Architecture was very long-lasting (10+ years) and efficient.
●
Everyone understood easily, what part of the system another
person was talking about, even years later.
● Good system description and automated tools for updating the
code base documentation helped adding a new OEM source code
business model.
● System descriptions were effectively used as a part of induction
training for new employees.
© Balandor Oy 2017
What would you like toWhat would you like to
see in Systemsee in System
Descriptions?Descriptions?
© Balandor Oy 2017
I have seen these:
●
Code architecture: modules, classes, APIs, services
● Logical structure
●
Physical structure
●
Data flow
● Protocol descriptions
●
System Maintenance process / responsibilities
●
Own and third party systems that are related/connected
● Terminology
© Balandor Oy 2017
I missed these:
●
Business Processes
● Personas
●
More Diagrams – A picture tells a thousand words
© Balandor Oy 2017
System DescriptionSystem Description
IS it needed?IS it needed?
WHAT would YOU NEED in it?WHAT would YOU NEED in it?
WHAT does it HELP to have one?WHAT does it HELP to have one?
© Balandor Oy 2017
References
https://systemsandus.com/foundations/what-is-a-system/
https://en.wikipedia.org/wiki/Software_architecture
https://en.wikipedia.org/wiki/Map
https://en.wikipedia.org/wiki/History_of_cartography
https://fi.wikipedia.org/wiki/Tietoj%C3%A4rjestelm%C3%A4arkkitehtuuri
https://startupsventurecapital.com/you-fired-your-top-talent-i-hope-youre-happy-cf57c41183dd
© Balandor Oy 2017
Tom Weckström
tom@balandor.fi
@TomWexi
+358 40 77 230 77
Balandor Oy
Got a Map?
© Balandor Oy 2017
Tom Weckström
tom@balandor.fi
040 – 77 230 77
Balandor Oy
Valmiina tasapainoiseen muutokseen?

More Related Content

Similar to System Description Map Development

AdminCamp 2018 - ApplicationInsights für Administratoren
AdminCamp 2018 - ApplicationInsights für AdministratorenAdminCamp 2018 - ApplicationInsights für Administratoren
AdminCamp 2018 - ApplicationInsights für AdministratorenChristoph Adler
 
CPIN 269 Final Documentation
CPIN 269 Final DocumentationCPIN 269 Final Documentation
CPIN 269 Final DocumentationJennifer Cordes
 
Arvind Pal_Resume
Arvind Pal_ResumeArvind Pal_Resume
Arvind Pal_ResumeArvind Pal
 
Bank Management System Desktop Application
Bank Management System Desktop Application Bank Management System Desktop Application
Bank Management System Desktop Application Ibadullah Khan
 
[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...
[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...
[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...WSO2
 
Clean architecture
Clean architectureClean architecture
Clean architecture.NET Crowd
 
Microservices as an evolutionary architecture: lessons learned
Microservices as an evolutionary architecture: lessons learnedMicroservices as an evolutionary architecture: lessons learned
Microservices as an evolutionary architecture: lessons learnedLuram Archanjo
 
Software engineering lecture notes
Software engineering   lecture notesSoftware engineering   lecture notes
Software engineering lecture notesGarima Singh
 
Sasikumar Selvaraj CV- Mainframe
Sasikumar Selvaraj CV- MainframeSasikumar Selvaraj CV- Mainframe
Sasikumar Selvaraj CV- Mainframesasikumar s
 
Automatic Graphical Design Generator
Automatic Graphical Design GeneratorAutomatic Graphical Design Generator
Automatic Graphical Design GeneratorIRJET Journal
 
Beyond Gerrit @ Gerrit User Summit 2017, London
Beyond Gerrit @ Gerrit User Summit 2017, LondonBeyond Gerrit @ Gerrit User Summit 2017, London
Beyond Gerrit @ Gerrit User Summit 2017, LondonJacek Centkowski
 
Big Data LDN 2017: How Big Data Insights Become Easily Accessible With Workfl...
Big Data LDN 2017: How Big Data Insights Become Easily Accessible With Workfl...Big Data LDN 2017: How Big Data Insights Become Easily Accessible With Workfl...
Big Data LDN 2017: How Big Data Insights Become Easily Accessible With Workfl...Matt Stubbs
 
A framework used to bridge between the language of business and PLCS
A framework used to bridge between the language of business and PLCSA framework used to bridge between the language of business and PLCS
A framework used to bridge between the language of business and PLCSMagnus Färneland
 
Not my problem - Delegating responsibility to infrastructure
Not my problem - Delegating responsibility to infrastructureNot my problem - Delegating responsibility to infrastructure
Not my problem - Delegating responsibility to infrastructureYshay Yaacobi
 

Similar to System Description Map Development (20)

Rajesh Kumar Bharathan
Rajesh Kumar BharathanRajesh Kumar Bharathan
Rajesh Kumar Bharathan
 
AdminCamp 2018 - ApplicationInsights für Administratoren
AdminCamp 2018 - ApplicationInsights für AdministratorenAdminCamp 2018 - ApplicationInsights für Administratoren
AdminCamp 2018 - ApplicationInsights für Administratoren
 
CPIN 269 Final Documentation
CPIN 269 Final DocumentationCPIN 269 Final Documentation
CPIN 269 Final Documentation
 
Arvind Pal_Resume
Arvind Pal_ResumeArvind Pal_Resume
Arvind Pal_Resume
 
Bank Management System Desktop Application
Bank Management System Desktop Application Bank Management System Desktop Application
Bank Management System Desktop Application
 
[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...
[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...
[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...
 
Clean architecture
Clean architectureClean architecture
Clean architecture
 
Microservices as an evolutionary architecture: lessons learned
Microservices as an evolutionary architecture: lessons learnedMicroservices as an evolutionary architecture: lessons learned
Microservices as an evolutionary architecture: lessons learned
 
Software engineering lecture notes
Software engineering   lecture notesSoftware engineering   lecture notes
Software engineering lecture notes
 
Uday Job Profile
Uday Job ProfileUday Job Profile
Uday Job Profile
 
Sasikumar Selvaraj CV- Mainframe
Sasikumar Selvaraj CV- MainframeSasikumar Selvaraj CV- Mainframe
Sasikumar Selvaraj CV- Mainframe
 
Automatic Graphical Design Generator
Automatic Graphical Design GeneratorAutomatic Graphical Design Generator
Automatic Graphical Design Generator
 
Beyond Gerrit @ Gerrit User Summit 2017, London
Beyond Gerrit @ Gerrit User Summit 2017, LondonBeyond Gerrit @ Gerrit User Summit 2017, London
Beyond Gerrit @ Gerrit User Summit 2017, London
 
Resume_Ranjana
Resume_RanjanaResume_Ranjana
Resume_Ranjana
 
YasirNew
YasirNewYasirNew
YasirNew
 
Divya
DivyaDivya
Divya
 
IT ENGINEER
IT ENGINEERIT ENGINEER
IT ENGINEER
 
Big Data LDN 2017: How Big Data Insights Become Easily Accessible With Workfl...
Big Data LDN 2017: How Big Data Insights Become Easily Accessible With Workfl...Big Data LDN 2017: How Big Data Insights Become Easily Accessible With Workfl...
Big Data LDN 2017: How Big Data Insights Become Easily Accessible With Workfl...
 
A framework used to bridge between the language of business and PLCS
A framework used to bridge between the language of business and PLCSA framework used to bridge between the language of business and PLCS
A framework used to bridge between the language of business and PLCS
 
Not my problem - Delegating responsibility to infrastructure
Not my problem - Delegating responsibility to infrastructureNot my problem - Delegating responsibility to infrastructure
Not my problem - Delegating responsibility to infrastructure
 

Recently uploaded

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 

Recently uploaded (20)

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 

System Description Map Development

  • 1. © Balandor Oy 2017 System Description asSystem Description as a Map for Developmenta Map for Development Tom Weckström, Balandor OyTom Weckström, Balandor Oy FiSMA Scope Manager ForumFiSMA Scope Manager Forum 12.12.201712.12.2017
  • 2. © Balandor Oy 2017 Balandor Oy – Management Advisor ● Lean- and Agile -thinking as a basis ● Packaged services as a solution, e.g.: •Offering Audit •CX assessment •Scalability booster ● Systems thinking behind all the solutions. ● More info: http://balandor.fi/en/
  • 3. © Balandor Oy 2017 System
  • 9. © Balandor Oy 2017 Which of these systems isWhich of these systems is the most likely to bethe most likely to be produced without aproduced without a description document?description document?
  • 10. © Balandor Oy 2017 Description”a spoken or written account of a person, object, or event” - Apple Dictionary - ORIGIN: from Latin descriptio(n-), from describere ‘write down’.
  • 11. © Balandor Oy 2017 System DescriptionSystem Description IS it needed?IS it needed? WHAT would YOU NEED in it?WHAT would YOU NEED in it? WHAT does it HELP to have one?WHAT does it HELP to have one?
  • 12. © Balandor Oy 2017 Map
  • 13. © Balandor Oy 2017 Being parachuted to unknownBeing parachuted to unknown territory...territory...
  • 14. © Balandor Oy 2017 No sign of where you are...No sign of where you are...
  • 15. © Balandor Oy 2017 You start walking and findYou start walking and find a road and a man with aa road and a man with a car and a map...car and a map...
  • 16. © Balandor Oy 2017 Case examples from aCase examples from a few software companiesfew software companies
  • 17. © Balandor Oy 2017 Case 1:Case 1: ● Very little original system description - only if customers asked, was something created ● High-level architecture diagram worked as a starting point. The next level was source code. ● Code base was slow to learn and considered complicated. ● Later, automated tools were used to create better understanding of the function calls, code base, etc.
  • 18. © Balandor Oy 2017 Case 2:Case 2: ● System architeture drawings were used. ● Also some written material about software components existed. ● Verbose written documentation was used in the planning phase and wasn't often updated later on. ● Some senior developers used color-coded system diagrams to quickly communicate status of large new sub-system development.
  • 19. © Balandor Oy 2017 Case 3:Case 3: ● A well documented system was easily handed over for maintenance, thanks to the customer's system description template. ● Architecture drawings helped us plan major system upgrades. ● All the used 3rd party software components were listed, and kept up-to-date.
  • 20. © Balandor Oy 2017 Case 4:Case 4: ● No drawings, but a bunch of URLs for each system component. ● No code base documentation. Fragmented code-base with layers of old and new code, different languages, etc. ● Knowledge about the system was verbal folklore. ● One sub-system had detailed drawings, and a list of components used, which enabled sub-contracting efficiently.
  • 21. © Balandor Oy 2017 Case 5:Case 5: ● No manually created or automated system descriptions were available - "Ask the architect and he will tell you". ● Even after more than a year working on the system, a developer might not know, which parts of the system are affected by his code. ● Monolithic approach: "Most of the stuff is handled in this big black box very few of us understand".
  • 22. © Balandor Oy 2017 Case 6:Case 6: ● Not even a high-level description existed. ● Employee turnover was high, and new people were dependent on very few old-timers, who knew the system. ● When a technical architecure assessment was done by an external consultant, the work started with interviewing the software architects and photographing the whiteboard drawings. ● Customers' quality criteria mandated better descriptions for some products.
  • 23. © Balandor Oy 2017 Case 7:Case 7: ● Developers took initiative and used the system description as an architecture planning tool. ● Architecture was very long-lasting (10+ years) and efficient. ● Everyone understood easily, what part of the system another person was talking about, even years later. ● Good system description and automated tools for updating the code base documentation helped adding a new OEM source code business model. ● System descriptions were effectively used as a part of induction training for new employees.
  • 24. © Balandor Oy 2017 What would you like toWhat would you like to see in Systemsee in System Descriptions?Descriptions?
  • 25. © Balandor Oy 2017 I have seen these: ● Code architecture: modules, classes, APIs, services ● Logical structure ● Physical structure ● Data flow ● Protocol descriptions ● System Maintenance process / responsibilities ● Own and third party systems that are related/connected ● Terminology
  • 26. © Balandor Oy 2017 I missed these: ● Business Processes ● Personas ● More Diagrams – A picture tells a thousand words
  • 27. © Balandor Oy 2017 System DescriptionSystem Description IS it needed?IS it needed? WHAT would YOU NEED in it?WHAT would YOU NEED in it? WHAT does it HELP to have one?WHAT does it HELP to have one?
  • 28. © Balandor Oy 2017 References https://systemsandus.com/foundations/what-is-a-system/ https://en.wikipedia.org/wiki/Software_architecture https://en.wikipedia.org/wiki/Map https://en.wikipedia.org/wiki/History_of_cartography https://fi.wikipedia.org/wiki/Tietoj%C3%A4rjestelm%C3%A4arkkitehtuuri https://startupsventurecapital.com/you-fired-your-top-talent-i-hope-youre-happy-cf57c41183dd
  • 29. © Balandor Oy 2017 Tom Weckström tom@balandor.fi @TomWexi +358 40 77 230 77 Balandor Oy Got a Map?
  • 30. © Balandor Oy 2017 Tom Weckström tom@balandor.fi 040 – 77 230 77 Balandor Oy Valmiina tasapainoiseen muutokseen?