“物品复活”软件开发体会总结

“物品复活”软件开发体会总结

任务需求:

对照软件工程的知识,对开发该程序的体会进行总结。

软件工程的知识:

  1. 软件工程概论
  • 本项目完全采用了面向对象方法学和敏捷过程、极限编程的思想
  1. 个人软件过程
  • 本项目遵循PSP,实现了良好的代码风格
  1. 可行性分析
  • 本项目在初期就进行了可行性研究,通过系统流程图、数据流图、数据字典等方法证明了本项目的可行性;
  1. 需求
  • 本项目在一开始就明确了系统核心需求,并随软件迭代不断满足着新的需求
  1. 形式化方法
  • 本项目广泛运用形式化方法,例如符号执行、定理自动证明等
  1. 总体设计
  • 本项目遵循了模块化、抽象、逐步求精、信息隐藏和局部化,模块独立等设计原理,尽量实现了高内聚、低耦合
  1. 详细设计
  • 本项目采用行业先进标准,以现代化前端技术构建图形用户界面
  1. 软件测试
  • 本项目实现了后端API单元测试100%覆盖率
  1. 软件维护
  • 本项目使用了Github Actions实现持续集成
  1. 面向对象方法
  • 本项目所有API在编写时即使用了OpenAPI 2.0标准自动撰写文档,使得后续的各种UML图都可以一键导出
  1. 面向对象分析
  • 本项目全程采用了面向对象分析的方法,以动态模型分析了系统的信息流和控制流
  1. 面向对象设计
  • 本项目采用C-S架构,通过高度软件重用降低了代码的重复率
  1. 面向对象实现
  • 本项目完全使用面向对象语言和强类型语言实现,各种操作都进行了全面的健壮性分析
  1. 项目管理(S)
  • 本项目通过全面的项目管理软件和容器化技术,实现了良好的软件配置管理

体会:

  • 容器化能减轻软件部署时的复杂性,但是也会增加软件维护和开发的成本。
  • 在没有显著优势和严重性能瓶颈的情况下,不要主动引入复杂性组件。
  • 持续集成也是一种容器化,而且还更难在本地调试。
  • 前端很好看,但是写着容易上瘾。
  • 当需求总是在变的时候,测试过不去很多时候是测试写错了。
  • 用户需求不总是合理的,有些通不过可行性分析的需求就应该果断毙掉。
posted @ 2025-01-04 20:13  {{2*3}}  阅读(7)  评论(0)    收藏  举报