软件系统架构时所需要考虑的一些内容(随笔)

我在架构时所需要考虑的内容:

需求及建模:用户需求分析、业务规则分析、系统实现分析、用例设计、数据建模

设计:基础架构建模(模块分析、管理方法分析、性能分析包括网络、存储、交互协议与方式、扩展性、安全性、兼容性、局限性描述)

模块图、类图、序列图、E-R图、拓扑图、物理视图、逻辑视图、与外部系统关系图

开发:代码框架及规范、使用到的技术(是否使用多语言、开源技术来支撑系统),代码的版权处理及开源协议

测试:系统支持持续集成框架,自动化测试框架

部署:是否分布式部署,发包的隔离性(代码与配置分离原则)

运维:系统性能与日志的监控,出现问题的反馈机制,预警机制等等

我在架构时所涉及到的文档:

(项目合同)、概要需求分析书、技术可行性分析报告、用例设计文档(用例图)、数据建模文档(E-R图)、主要业务流程文档(流程图)

系统部署及成本说明书(网络拓扑图及成本)、系统物理视图(从操作系统到中间件到数据库)、系统逻辑视图、系统模块图(模块及功能列表)

项目管理的相关文档(开发周期、版本的milestone、变更流程、测试计划)

我在架构工作时所用到的工具:

starUml powerDesigner navicat visio redmine jira axureRP xMind

相关推荐