Final Report

个人总结

学习这门课程前,我在开发小软件的时候都没有在意这些分析与设计的基本知识,开发过程不科学、不系统。学习这门课程以及亲自和组员们动手完成一个项目后,我认识到了系统分析与软件开发的基本理论与流程,并且通过作业与项目亲自体验了项目团队中需求分析、设计、实现等角色的工作和所使用的工具,让我对开发一个系统的流程有了大致的认识。

课程项目的经验也是很宝贵的,毕竟软件工程是一门需要实践的学科,书本上学习到的只是终归还是要在项目中进行实践。我在这次项目中负责部分 API 设计及后端实现。这个项目不算是小软件了,因此这次也算是体验过真正的后端是如何设计与实现的,有什么问题是需要考虑的,例如数据库与 RestfulAPI 的设计,安全性的保证,单元测试,集成等等。虽然我后端的工作大部分都是做“填空题”,填好 API 中的业务逻辑,但是在项目前期也遇到了需求没交流好、词汇表不统一、数据库字段设计不合理等问题带来的麻烦。但是经过中期小组内的会议后,给后期的工作定下了明确的需求和目标,使后面的开发能顺利进行。通过这样的实践,我也认识到了 Use case、领域模型、时序图等 UML 建模过程对后期开发的重要性。

同时也更加熟悉了 git 工具的使用。之前的项目都不太会用 git 进行管理,这次的项目真正需要用到 git 进行版本管理了,越用越顺手了。

这是一次很好的团队开发的体验。感谢伟大的 CEO & PM Mu-xsan, Joilence; 前端三巨头 MikeXuQ, James Yip, 以及 CTO ElsYeJq 还另外解决了部署,后端代码 review 以及修改文件上传; 以及一起 404 500 test FAIL 的队友 yaozhili

PSP 2.1 统计

PSP2.1 Personal Software Process Stages Time(%)
Planing 计划 5
Estimate 估计开发时间 5
Development 开发 91
Analysis 需求分析 10
Design Spec 生成设计文档 10
Design Review 设计复审 4
Coding Standard 代码规范 2
Design 具体设计 8
Coding 具体编码 30
Code Review 代码复查 7
Test 测试 30
Reporting 报告 4
Test Report 测试报告 2
Postmortem 事后总结 2

GIT 统计报告

DashBoard:

WX20180701-162029

Server:

WX20180701-161710

工作清单

技术博客清单