solution architecture tips & tricks by roman shramkov
TRANSCRIPT
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 involvesselection 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
QAImplementation
Physical
Logical
Conceptual
Contextual
Business ApplicationInformation/
DataTechnology
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 & ConnectorsLogical Diagram
BE SIMPLE
Stay pragmatic
Be organized
Next steps
Grow as Generalist
Content UI/UX Java Web Cloud Integration
Cross-Discipline Competence
Deep-DisciplineCompetence
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