架构:小议应用开发架构

背景

每个系统都有自己的架构,看过一些书以后,觉得架构关乎两件事:决策和分解。

架构:小议应用开发架构_分享

常见应用开发架构决策

  • 使用何种应用架构风格?
  • 在技术维度,系统如何分层?
  • 每个层有哪些元素?
  • 层与层之间如何交互?
  • 如何选择每个层的实现技术?
  • 在业务维度,系统如何分区?
  • 区与区之间如何交互?
  • 都使用哪些应用架构模式?
  • 如何管理事务?
  • 如何管理并发?
  • 如何使用异常?
  • 如何使用日志?
  • 是否使用IOC容器?
  • 是否使用AOP技术?如何使用?
  • 如何处理安全性?
  • 如何处理性能问题?
  • 如何处理易用性?
  • 如何处理可用性(稳定性)?
  • 如何处理可伸缩性?
  • 如何处理可扩展性?
  • 如何处理可重用性?
  • 处理处理可维护性?
  • 如何处理互操作性?
  • 如何处理可移植性?
  • 如何处理可测试性?
  • 是否支持移动应用?如何支持?
  • 是否支持云计算?如何支持?
  • 是否支持开发性?如何支持?
  • 使用何种报表平台?
  • 是否有可以复用的基础应用?还是需要重新开发?

应用开发架构关乎分解

架构:小议应用开发架构_分享_02

 

框架地址:http://happy.codeplex.com