201771010119-穷吉-实验四 软件项目案例分析
项目 | 内容 |
班级课程博客链接 | https://www.cnblogs.com/nwnu-daizh/p/12369881.html |
作业要求 | https://www.cnblogs.com/nwnu-daizh/p/12369881.html |
课程学习目标 | 去学习别人的项目以及对项目进行分析 |
这个作业在哪些方面帮助我实现学习目标 | 学会基本的团队项目概念以及案例的分析 |
结对方姓名-学号 | 白玛次仁- 201771010101 |
结对方本次博客作业链接 | https://i-beta.cnblogs.com/posts/edit;postId=12655614 |
实验内容与步骤
任务1:
实验三优秀案例推荐:王之泰&韩腊梅组
https://www.cnblogs.com/hackerZT-7/p/12544280.html
https://www.cnblogs.com/hanlamei/p/12574378.html
在实验三得分100分以上作业中,任选一份作为案例,对案例项目成果进行评价,具体要求如下:
(1)对案例博文作业进行阅读并进行评论,评论要点包括:博文结构、博文内容、博文结构与PSP中“任务内容”列的关系,并将以上评论内容发布到案例作业的博客评论区。
(2)克隆案例项目源码到本地机器,阅读项目代码规范文档并运行代码,总结代码运行中存在的问题,体会案例博文是否有助于项目代码理解。
(3)总结本组实验三博客作业及代码设计存在问题与不足,列举代码中存在的bug,未实现的功能等等。
在此我们选择的是汪惠和杨野一组,我对汪惠和的博客进行了评论。
(1)博客作业链接:https://edu.cnblogs.com/campus/xbsf/nwnu2020SE;github
(2)仓库链接:https://github.com/yy202901582/DieaseSubmitSystem
(3)评论截图:
(4)下载源码到本地机器进行运行的截图:
进行提醒填报的截图:
进行信息填写的截图:
根据时间以及学生老师的信息统计图:
有无感染情况的统计图:
不同地方的统计图:
体会:运行这组的实验代码时最大的感受就是他们的运行的界面很美观,还有对统计图的实现也很美观,这点是我们组没有实现的功能以及需要我们去学习的地方。
(5)总结:在这次的实验运行中所有的运行在对他们小组的文件进行下载并导入到自己的本地机器中运行时对比于我们自己组做的来进行比较做大差别就是界面的架构设计以及界面的美观程度以及他们的是实现了通过图形直观的表达信息填写情况的统计以及各个地区以及月份内的疫情变化,我觉得稍稍不足的就是在进行提醒功能上可以添加一个声音的提醒,要不然有时候看不到消息。还有一个bug就是Excel导出的时候数据都在同一行上。
任务2:
与实验三结对伙伴协作学习:阅读《现代软件工程—构建之法》第5-6章内容,理解并掌握软件项目团队的特点、了解软件团队的模式、结合理论课学习内容理解瀑布模型及其变形、渐进交付流程、敏捷流程等典型软件过程模型特点,理解并体会卡内基梅隆大学(CMU)软件工程学院总结的TSP原则;
软件团队的模式有:
(1)主治医师模式;(2)明星模式;(3)社区模式;(4)业余剧团模式;(5)秘密团队;(6)特工团队;(7)交响乐团模式;(8)爵士乐团模式;(9)功能团队模式;(10)官僚模式
两人讨论任务截图:
任务3:
在班级博客园,有很多高校的软件工程课程要求同学们完成团队项目,请与实验三结对伙伴协商,在以下三个班级中选择一个高质量的团队项目案例进行协作学习,要求追踪该团队项目发布所有博客作业,下载项目软件代码。
(1)2016级计算机科学与工程学院软件工程 (西北师范大学)
(2) 2019秋福大软件工程实践Z班 (福州大学)
(3)2019春季计算机学院软件工程 (北京航空航天大学)
在这次选择中我们小组选择的是 (1)2016级计算机科学与工程学院软件工程 (西北师范大学)
(1)团队项目作业发布账号链接:
博客园:https://www.cnblogs.com/fjxzshwzd/
(2)团队项目仓库github链接
github链接:https://github.com/FAJIXIANHHH/FAJIXIAN
(3)陈述你选择该团队项目进行分析的理由:
我选择这个的项目的原因是因为我在进行了2016级好几个学长学姐的第一次结对项目,相比下来其他的项目这个项目实现的这个系统比较完整,而且界面也比较美观,而且他们开发的系统是我们为您在学校时会用到的教材订购系统在我们日常中会实际用到的一个软件所以比较对此比较感兴趣所以对此项目进行分析,学习和练习。
(4)结合项目系列博客文档,总结项目团队成员的分工合作情况:
姓名 | 分工 |
姜佳宇 | 进行数据库主界面输入信息编码 |
周婷 | 进行数据库书库信息编码 |
赵津莹 | 进行主界面登录界面的编码 |
叶虹 | 进行主界面登录界面的编码 |
王天悦 | 进行主界面登录界面的编码 |
我个人觉得他们团队的分工很合理各个组员也认真完成了自己要实现的分工内容,值得我们进行学习。 | |
(5)结合项目系列博客文档,评价项目的软件项目过程特点(TSP): |
1.使用妥善定义的流程,流程中的每一步都是可以重复、可以衡量结果的。
2.团队的各个成员对团队的目标、角色、产品都有统一的理解 。
3.尽量使用成熟的技术和做法。
4.尽量多地收集数据(也包括对团队不利的数据),并用数据来帮助团队做出理性的决定。
5.制定切合实际的计划和承诺,团队计划要由负责具体执行的的角色来制定(而不是从上级而来)。
6.增加团队的自我管理能力。
7.专注于提高质量,争取在软件生命周期的早期发现问题。最有效提高质量的办法是做全面而细致的设计工作(而不是在后期匆忙修复问题)。
我觉得他们的项目符合所有的TSP原则,在项目实现过程中七个特点都有。
(6)观察该团队项目github仓库的源代码文件结构,是否包含代码规范文档?:
项目的github仓库中包含代码规范文档,如图:
(7)下载团队项目代码,尝试部署项目运行环境并使用软件,描述最简单直观的使用体验,找出至少两个比较严重的功能性bug,在博客中展示截图:
以下是我下载代码后运行的部分代码的截图:
使用体验:这个项目是一个教材订购系统,在最初进行登陆时可以通过不同的角色进行登陆,并且在进行教材的购买时按学院的不同会显示不同的教材订购名。可以很方便教师以及学院或者学习委员进行教材的订购。
个人觉得要是能有个按不同学院的不同年级的教材购买的选项就会好很多,以为不同的年级所用的教材不同。我觉得他们的代码以及系统等都很好,没有什么不足之处。
(8)评价该团队项目是否值得继续开发,并陈述理由?
我觉得这个项目有开发的价值因为这个团队项目开发的软件为我们学生以及老师,学校在日常中所能用到的一个系统可以方便用户去进行书本的预定以及购买。这样可以根据学校以及班级自己的情况进行教材的购买。所以我觉得具有继续开发的价值。
总结:这次的实验主要是对软件项目的分析,我先对本班同学汪慧和和杨野一组的项目进行了分析,在通过运行他们的代码中发现他们的不仅界面跟美观而且老师要求的任务他们大部分都完成了,老师要求的统计的柱状图也很美观,可以直接的看清楚系统信息填写以及疫情的情况,还实现了提醒部分的功能。并且通过这次实验的任务2进行了对软件项目团队模式的了解以及对瀑布模型及其变形、渐进交付流程、敏捷流程等典型软件过程模型特点的了解,并清楚TSP原则。
项目案例分析时间记录表
内容 | 时间(min) |
任务1的实现 | 360 |
任务2的实现 | 240 |
任务3的实现 | 270 |