HaveFunWithEmbeddedSystem/Chapter3_项目管理与团队协作/3.2_项目流程.md

2.3 KiB

3.2 项目流程

一个项目从提出到结束,包含以下几个主要流程:

  • 需求分析
  • 需求分析评审
  • 预研
  • 设计
  • 设计评审
  • 实施
  • 测试
  • 验收和移交

在提出项目的最初阶段,甲方会对项目提出需求,但甲方的需求通常是不明确的,因此需要乙方进行需求分析。需求分析应包括:

  • 功能分析
  • 性能分析
  • 安全和稳定性分析

需求分析是个反复的过程,通常要跟甲方或其他相关人员进行沟通。在完成了需求分析后,需要跟甲方进行需求分析评审,以确认乙方对需求分析的正确性。

需求分析和需求分析评审是个反复进行的工作。在完成需求分析后,我们对整个项目进行研究,可能某些技术是当前不具备的,或某些可能的设计是需要验证的,此时需要进行预研。在预研阶段,将会验证整个项目的技术可行性,并且评估技术风险。

在预研通过后,设计人员就可以根据需求分析结果和预研结果完成项目的设计。设计分为:

  • 总体设计
  • 模块设计
  • 接口设计
  • 界面设计
  • 通讯设计
  • 算法设计
  • 安全设计

整体是由模块构成的,模块间通过接口进行交互。模块可能不止一个层次,某模块可能由多个子模块构成。

在完成设计后,应由有经验的人员和甲方参与评审,针对设计中的缺陷或不足提出修改建议。因此设计和设计评审也是一个往复的过程。

当设计评审通过之后,就可以进入项目实施阶段。对于软件而言就是编码实现的过程。

测试是为了验证项目实施的正确性。对于软件项目,就是验证软件的功能、性能、稳定性和可靠性是否满足需求分析。

软件测试分为:

  • 单元测试(单体测试)
  • 集成测试
  • 稳定性测试
  • 健壮性测试
  • 安全测试
  • 产品测试

其中,单元测试不是一个完全独立的过程。单元测试通常贯穿在项目实施阶段,每完成一组单元程序的开发后,通常就会进行一遍单元测试。

一旦产品通过了最后的产品测试,就可以开始编写用户使用手册等说明文档,之后将文档和产品一并移交给甲方。至此,一个项目的生命周期结束。