Solution Architecture,
touching base
Roman Shramkov, Kharkiv 2015
About Me
• Developer and Architect in enterprise Java
sector for many years
• Engineer and Practitioner by heart
• Solution Architect in EPAM’s Java
Competency Center
• Spare time Manager
Why Architecture is important?
An opinion
Software Architect is just a fancy title. In Agile there are no architects
and it rocks!
Chaotic Design
Disciplined Design
Is it easy? It is hard.
• Vision
• Will
• Leadership
• Competency
• Focus
Who is a Solution Architect?
Definition
The solutions architect is responsible for translating the requirements
created by functional analysts into the architecture for that solution and
describing it through the set of architecture and design artifacts.
Those artifacts are then used by the rest of the development team to
implement the solution.
The process of defining architecture by the solutions architect often involves
selection of the most appropriate technology for the problem being solved.
https://en.wikipedia.org/wiki/Solutions_Architect
Product Delivery
Services
Conceptualization
Architecting
ConstructionDevelopment
Release
Solution Architect’s
place
Solution
Architect
Business
Architect
Software
Developer
Database
Developer
System
Administrator
Devops
Technology
Architect
Information
Architect
Enterprise Architect
Software Architect
QA
Implementation
Physical
Logical
Conceptual
Contextual
Business Application
Information/
Data
Technology
Business
Analyst
Solution Architect
Expectations
• Understand my business needs and propose solutions
• Know trends and fill my technology knowledge gap
• Know typical and proved solutions
• Propose different options, compare them and help me chose
• Help with actual implementation planning
Solution Architect
Values
• Clear, completed and confirmed requirements
• Low cost of solution selection through models and prototypes
• Wide vision and expertise for educated choices
• Shared final solution understanding
• Architecture governance
Solution Architect
Skills
• Clarification, analysis and documentation
• Communication, negotiation and facilitation
• Visualization and explanation
• Technical Leadership
• Des of technologies and solutions
Lessons learned
Change your mindset
Context Diagrams
Concept Diagrams
Blocks & Connectors
Logical Diagram
BE SIMPLE
Stay pragmatic
Be organized
Next steps
Grow as Generalist
Content UI/UX Java Web Cloud Integration
Cross-Discipline Competence
Deep-Discipline
Competence
Q n A
References
SA
• https://en.wikipedia.org/wiki/Solutions_Architect
• https://en.wikipedia.org/wiki/Solution_architecture
• http://www.ibm.com/developerworks/rational/library/mar06/eeles/index.html
• http://stackoverflow.com/questions/524941/whats-the-difference-between-solutions-architect-and-applications-architect
PDS2.0
• https://dev.by/lenta/main/epam-bolshe-ne-epam
EDU
• http://www.sei.cmu.edu/
• https://www.opengroup.org/togaf/
• http://www.amazon.com/Software-Architecture-Practice-3rd-Engineering/dp/0321815734/ref=sr_1_3?s=books&ie=UTF8&qid=1443684547&sr=1-
3&keywords=documenting+software+architectures
• http://www.amazon.com/Documenting-Software-Architectures-Views-Beyond/dp/0321552687/ref=sr_1_1?s=books&ie=UTF8&qid=1443684547&sr=1-
1&keywords=documenting+software+architectures
• http://www.amazon.com/Evaluating-Software-Architectures-Methods-Studies/dp/020170482X/ref=sr_1_1?ie=UTF8&qid=1443684649&sr=8-
1&keywords=evaluating+software+architecture

Solution Architecture tips & tricks by Roman Shramkov