理顺软件开发各个环节-10(开发管理-整体设计-1)

5.3软件需求分析

  参见需求管理关于软件需求分析的章节,此处再也不赘述。程序员

5.4软件整体设计

  整体设计,又称为系统设计,其包括架构设计,是软件系统的顶层设计,是软件开发不可逾越的阶段。
  整体设计最能体现分析人员的水平,不只须要良好的综合能力,从整体上把握需求,还须要较宽广的知识面,对流行的架构、插件和组件技术、数据库等能熟知优劣,从而设计出符合软件需求的设计方案。
  知足软件需求的设计方案确定不止一种,但我认为好的设计方案应知足:数据库

  • 知足目前已知的需求;
  • 具备良好的扩展灵活性;
  • 符合技术发展趋势。

5.4.1软件整体设计节点关键信息

  责任人:开发项目经理。架构

  执行人:系统分析员、高级程序员或架构师。运维

  关键行为:分析和沟通。数据库设计

  • 分析:对软件需求进行分析,完整把握需求;
  • 整体设计:结合团队的技术栈,知足需求集合,有前瞻性;
  • 必要时,开发原型来验证设计思想。

  输入性能

  • 产品需求规格书;
  • 软件需求规格书(SRS);
  • 数据字典(DD);
  • UI&UE交互设计原型(若是有);
  • 用户故事集合;
  • 其它需求资料。

  输出测试

  • 软件产品整体设计文档;
    • 系统结构设计(架构设计);
    • 子系统/功能模块设计;
    • 接口设计;
    • UI&UE设计;
    • 数据库设计;
    • 通讯协议设计(若有需求)。

  职责要求插件

  • 完整地分析软件需求;
  • 整体设计;
  • 尽可能基于目前已知需求的最大集合,提升设计方案的扩展灵活性;
  • 把握成熟技术与新技术之间的平衡;
  • 对性能需求和质量属性有敏感性,系统架构能适应非功能需求;
  • 关键技术,必要时,开发原型来验证设计思想;
  • 提请软件整体设计评审:
    • 系统设计人员:主讲人,负责讲解和答复各类质询和疑问;
    • 产品经理:评估产品需求是否被设计的系统完整地知足;包括后期的需求的知足性;非功能需求的支持状况;
    • 项目经理:了解有哪些子系统,是否须要跨部门协做;
    • 开发项目经理及高级技术人员:关注技术方案的可行性、灵活性;非功能需求的支持状况;
    • 开发技术人员:了解软件的设计思路,便于开发实现;
    • 测试技术人员:了解软件的设计思路,以及其对测试的影响;
    • 运维人员:评审软件部署方案的可行性。
相关文章
相关标签/搜索