Technical leadership and the balance with agility
This book is 90% complete
Last updated on 2018-09-25
About the Book
This book is a practical, pragmatic and lightweight guide to software architecture, specifically aimed at developers, and focussed around the software architecture role and process.
If you're looking for the C4 model, this has been moved to Software Architecture for Developers: Volume 2 - Visualise, document and explore your software architecture.
About the book
- Why did I write the book?
- A new approach to software development?
- About the author
- About the book
1. What is “software architecture”?
- Architecture as a noun - structure
- Architecture as a verb - vision
- Types of architecture
- Towards a definition of “software architecture”
- Enterprise architecture - strategy rather than code
- Architecture vs design
- Is software architecture important?
- Does every software project need software architecture?
2. Architectural drivers
- 1. Functional requirements
- 2. Quality Attributes (non-functional requirements)
- 3. Constraints
- 4. Principles
- Understand their influence
- 1. What is “software architecture”?
3. The software architecture role
- 1. Architectural drivers
- 2. Designing software
- 3. Technical risks
- 4. Technical leadership
- 5. Quality assurance
- Software architecture is a role, not a rank
- Create your own definition of the role
4. Technical leadership
- Controlling chaos
- Collaborative technical leadership is not easy
- Do agile teams need software architects?
- Software development is not a relay sport
- Mind the gap
5. Software architects and coding
- A step back in time
- Should software architects write code?
- The tension between coding and being senior
- Software as an engineering discipline
6. The skills and knowledge of a software architect
- Technology skills
- Soft skills
- Domain knowledge
- From developer to architect
- 3. The software architecture role
7. Managing technical risks
- Quantifying and prioritising risks
- Identifying risks
- Mitigating risks
- Risk ownership
8. Software architecture in the delivery process
- Technical vs functional design
- The conflict between agile and architecture
- Software architecture provides boundaries
- Separating architecture from ivory towers and big up front design
- Up front design
- Firm foundations
- Contextualising just enough up front design
- Introducing software architecture
- The essence of software architecture
- 7. Managing technical risks
9. Appendix A: Financial Risk System
- Functional Requirements
- Non-functional Requirements
- 9. Appendix A: Financial Risk System
The Leanpub 45-day 100% Happiness Guarantee
Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
See full terms...