Chapter 12. Selecting the right NoSQL solution

 

This chapter covers

  • Team dynamics in database architecture selection
  • The architectural trade-off process
  • Analysis through decomposition
  • Communicating results
  • Quality trees
  • The Goldilocks pilot

Marry your architecture in haste, and you can repent in leisure.

Barry Boehm (from Evaluating Software Architectures: Methods and Case Studies, by Clements et al.)

If you’ve ever shopped for a car, you know it’s a struggle to decide which car is right for you. You want a car that’s not too expensive, has great acceleration, can seat four people (plus camping gear), and gets great gas mileage. You realize that no one car has it all and each car has things you like and don’t like. It’s your job to figure out which features you really want and how to weigh each feature to help you make the final decision. To find the best car for you, it’s important to first understand which features are the most important to you. Once you know that, you can prioritize your requirements, check the car’s specifications, and objectively balance trade-offs.

12.1. What is architecture trade-off analysis?

12.2. Team dynamics of database architecture selection

12.3. Steps in architectural trade-off analysis

12.4. Analysis through decomposition: quality trees

12.5. Communicating the results to stakeholders

12.6. Finding the right proof-of-architecture pilot project

12.7. Summary

12.8. Further reading