组员:邹世超:202031101743
张卜中:202031103189
通过第一节理论课,我们对软件项目管理有了一个大致的了解:软件项目管理需要从更宏观的层次来指导软件项目的设计和开发。本次实验的任务是:根据你上学期在“软件工程”课程中开发的“作业管理系统”,从软件项目管理的视角来规划你的项目,从项目管理的知识领域(详见下页所示)来思考如何加以改进。
Scope Mgt
要小组成员开会讨论要明确项目边界,即明确哪些工作是包括在项目范围之内的,哪些工作是不包括在项目范围之内的。对项目执行工作进行监控,确保所有该做的工作都做了,而且没有多做。对不包括在项目范围内的额外工作说“不”杜绝做额外工作。防止项目范围发生蔓延。这次的作业管理系统有一部分锦上添花的内容因为时间原因放弃掉了,说明我们对项目范围的把控还不够好。
Schedule Mgt
在软件开发之前,必须将整个项目按时间分成各个阶段的目标,要严格把控每个阶段的时间和任务完成度,才能保证最终软件开发的质量。此次项目中就因为种种原因,并没有重视进度的重要性,很多东西都是放在最后几天赶忙完成,导致此次项目有很多美中不足的地方。
Cost Mgt
需要管理好时间成本和金钱成本。时间成本需要根据老师的截止日期亦或是甲方的要求来决定项目的工作量,从而控制时间成本。当我们在使用别人的收费的接口或者服务器时,就会产生金钱成本,要根据相应的条件来控制金钱成本。
Quality Mgt
小组开会规定在项目的哪个阶段进行评审及如何评审、规定在项目的那个阶段应当产生哪些报告和计划、规定产品方面测试应达到的水品、在每次评审和测试中发现的错误和如何修正。
Stakeholder Mgt
干系人一定要对项目的各个成员非常了解,因为每个成员都有自己的知识体系,自己的个性甚至当时的情绪,种种因素都会影响项目的开发进度。所以干系人必需要协调好成员之间的合作和情绪,对应每个人分配好相应的工作。同时也要时刻把握开发的进度和成本,掌握好节奏,鼓励督促开发进度等。我觉得在此次项目中并没有明确一个干系人身份的存在,因为大家都是一个寝室的熟人,项目相对也比较小,就没有那么多东西协调了。但下次注意还是要确立一个干系人。
Resource Mgt
对于人力资源管理,应该合理安排工作具体到每个模块,避免有成员拖慢进度,并且每个模块应该由能力强的同学带能力弱的成员一同开发,通过团队推进度;对于软件资源管理,需要提前商量好使用的编程语言、环境、版本、库等,使全体成员都在同一基础上进行开发,对于一些模块也可以代码复用,使用之前项目编写的代码。
Comm Mgt
为了实现良好的沟通,团队应该定时开会,讨论进度和遇到的困难,并商量如何解决,而会议内容、平常交流需要一个软件进行记录,方便随时查阅比如飞书、钉钉等软件,团队需要一个代码管理平台,例如GitHub,成员可以随时上传代码或修改并且需要允许才会合并到主线路。
Risk Mgt
在项目开始前进行风险评估,作业管理系统主要为技术风险,由于刚开始接触做项目,许多技术需要慢慢摸索,对于模块的设计和技术使用需要斟酌,提前查阅文献博客等了解技术的复杂程度,是否符合团队在这段时间完成的承受能力,对于一些模棱两可的技术,可以先让一部分人尝试,当可行时再一起使用。
Procurement Mgt
提前制定采购计划,将需要的物品一一列出,再分析市场,找到最有性价比的产品进行采购
Intergration Mgt
主要项目负责人进行管理,由项目负责人对项目进程规划,并且妥善进行人员调配,监督成员按时完成任务,从而保证项目顺利交付。