项目 | 内容 |
---|---|
课程班级博客链接 | 班级博客 |
这个作业要求连接 | 作业链接 |
团队名称 | 这是个小队 |
团队成员分工描述 | 祁英红(组长):负责安排工作,协调各个组员的工作以及代码编写 帖佼佼:主要负责文档撰写工作以及代码编写 高文利:主要负责代码设计以及主要编写工作 李华:主要负责文档撰写工作以及代码测试审查工作 |
团队的课程学习目标 | (1)将学习的敏捷软件开发过程在实际的工程中实践; (2)更加理解燃尽图的作用以及使用方法; (3)对于软件编写进行了巩固。 |
这个作业在哪些方面帮助团队实现学习目标 | (1)促进了团队之间的合作加深,成员之间得互相借鉴学习,互助提升; (2)学会熟练使用ProcessOn,Visio等常用UML图形绘制工具; (3)学会绘制UML图等; (4)了解了软件设计模式; (5)完成了需求建模与系统设计说明书。 |
团队博客链接 | 团队博客链接 |
团队项目Github仓库地址链接 | Github仓库链接 |
任务1:按团队项目互评名单,对互评方《实验八 项目需求分析建模与系统设计(2)》的项目成果进行评价,具体要求如下:
(1)阅读互评团队项目博文作业并进行评论,评论要点包括:博文结构、博文内容、任务分工与时间耗费。将以上评论内容发布到互评团队的博客评论区。
(2)下载并阅读互评方团队项目资料。
结对方团队博客链接:https://www.cnblogs.com/dizao/p/14843944.html
结对方Github项目仓库链接:https://github.com/InTentzhou/daizao_code/tree/master
符合(1)要求的博客评论:
互评团队作业评分成绩:150(157)
任务2:团队项目系统设计迭代改进:根据OOD设计准则和面向对象设计方法,分析《XXX软件设计说明书1.2》初稿的不足,修改完善团队项目系统设计说明书,进一步细化分析系统设计模型,精化类的属性和操作,详细定义类中服务参数和具体实现逻辑,调整类的层次关系和关联关系,定义软件数据库表结构等等。并编制《XXX软件设计说明书1.3》发布在团队项目Github仓库。
【软件编码Alpha冲刺总结】结合燃尽图陈述任务2执行过程:
《XXX软件设计说明书1.3》后的截图如下:
任务3:团队软件项目编码准备,要求如下:
(1) 搭建并配置软件开发环境;
软件开发环境配置说明:
本系统在Win 10系统下使用MYSQL8.0作为数据库管理系统,ECLIPSE jdk1.8下进行开发,在Chrome、FireFox等浏览器下进行了网页测试。
1.配置java运行环境(安装Java-JDK 1.7)
2.配置Tomcat7.0运行环境(java:jdk-6u26-windows-i586,tomcat:apache-tomcat-7.0.27(免安装版))
配置环境
添加上:
3.安装MyEclipse(MyEclipse-8.5.0-Eclipse3.5.2-win64)
4.安装Tomcat插件(tomcatPluginV31)
5.在MyEclipse中运行Java语言
6.在MyEclipse里用java链接SQL Server数据库(系统用的是SQL server 2000版本,安装教程和链接过程都可百度到方法)
项目仓库中上传项目编码规范文档后的截图如下:
任务4:以团队作业的前期成果为基础,采用团队协作方式编写软件代码,创建程序开发软件关联数据库,进行必要代码测试。
Alpha 冲刺Scrum meeting导航:
日期 | 冲刺博客 | 链接 |
---|---|---|
6.11 | 部署开发环境,学习软件的操作方法 | |
6.12 | 熟悉JSP技术,实现界面设计 | 【Alpha】Scrum meeting 1链接 |
6.13 | 熟悉JSP技术,实现界面设计 | 假期放假 |
6.14 | 实现用户注册登录界面 | 【Alpha】Scrum meeting 2链接 |
6.15 | 实现系统所有界面和功能 | 【Alpha】Scrum meeting 3链接 |
6.16 | 开发数据库和连接Tomcat | 【Alpha】Scrum meeting 4链接 |
6.17 | 测试系统功能,并对问题进行整改 | 【Alpha】Scrum meeting 5链接 |
6.18 | 查漏补缺,团队总结 | 【Alpha】Scrum meeting 6链接 |
6.19 | 部署开发环境,学习软件的操作方法 | 【Alpha】Scrum meeting 7链接 |
6.20 | 熟悉JSP技术,实现界面设计 | 完成 |
刚开始对团队工作模式不熟悉,对软件的不熟悉,进度较慢。正好碰到周末涉及到上课补课,大家的时间比较分散,沟通协作能力不够,所以前三天的进度就有些缓慢。第三天开站立会议时,还只完成了注册登录界面,考虑到时间紧迫,每个人都增加了任务,追赶计划。好在团队成员在前期开发准备充分,都比较有责任心、凝聚力,利用了一天的时间完成了所有的界面菜单功能,进度明显就加快了。而且随着大家对项目的熟悉,更加就得心应手,团队配合也更加默契,如期完成了任务。从燃尽图上看,曲线总体起伏不大,在计划曲线上下浮动,得益于组长任务分配,团队齐心协力完成任务。
任务5:完成《实验九 团队作业6:团队项目编码与Alpha冲刺》团队博文作业:
提供团队项目github仓库中软件源码文件结构截图如下:
记录完成《实验九 团队作业6:团队项目编码与Alpha冲刺》各项任务实际花费的时间和分工(4分);
任务 | 估计所花时间(h) | 分工 |
---|---|---|
任务一 | 0.5 | 李华 |
任务二 | 12 | 祁英红 帖佼佼 李华 高文利 |
任务三 | 10 | 祁英红 帖佼佼 李华 高文利 |
任务四 | 32 | 祁英红 帖佼佼 李华 高文利 |
任务五 | 6 | 帖佼佼 |
由于之前在学习其他课程时就已经配置过相应的环境,耗时相对较少,针对JAVA的编码规范进行了学习并对于每一位成员的实际编码的情况进行了统一,达成一致。任务二针对每个人情况进行了不同的分工安排,大家都进行了参与。 | ||
每位成员结合任务分工总结本次实验心得,最后由项目组长进行总结陈述。(每项3分,合计9分); | ||
成员 | 心得 | |
:--: | :--: | |
祁英红 | 这次实验中,我们组各位成员表现都很棒,每个人都能完成分配给自己的任务。大家一起负责项目框架的搭建、前端与后台的连接、基本模块的编写负责数据库的建立、连接和查询方法以及《项目软件代码规范文档》的编写以及系统基本模块的编写和后期功能测试、网页界面的编写以及文档的编写。因为这次的实验是一个团队实验,所以在每个环节中所有的人都会参与进去,配合其他人尽快、更好的完成这一模块,尤其是各个模块之间的连接,需要各个模块的负责人高效、无间的配合,而负责这一模块的人起主导作用,这样就能让每个人都参与进项目的每个环节中,发挥出每个人的作用。尤其在最后的攻坚环节和系统测试环节,需要群策群力,每个人都发挥出作用才能完成。 | |
帖佼佼 | 通过本次实验,我们将敏捷流程彻底地应用在了工程项目中。在本次实验中,我负责数据库以及基本模块编写等方面的任务,在完成任务的过程中,我对敏捷流程有了更深刻的理解也了解到了团队的重要性,同时提高了自己分析问题的能力。虽然这十天的Alpha冲刺每天都在进行编码、迭代,不过好在组内分工比较明确,每个人都负责相应的模块的撰写,整体上进行的还是比较顺利的,即使在整个实现的过程中出现了一些不可避免的问题,大家也能够共同商量解决,呈现一个较为实用的软件。在撰写系统文档等文档时,对系统的了解也是更加透彻,对后面任务的完成也是很有帮助。 | |
李华 | 这次实验完成过程中,我学习到了很多,从项目的选题、需求分析,再到系统框架的设计、到最后的项目编码,尤其是在后面的冲刺环节和项目攻坚环节,团队合作的作用是毋庸置疑的。在平时的作业中,我也学会了很多,学会了如何画各种图、并且以及在编码中遇到实际的问题时的解决方法。因为能力的原因,所以组长给我分配的任务都是比较简单的,这样在完成作业的同时能够让我学习到一些其他的知识。总的来说,经过这次的团队实验,我扩展了自己的知识体系,受益匪浅! | |
高文利 | 这周开始了项目的编码实现阶段,在十天的冲刺过程中,我们小组每天都会开会交流,各成员都能完成自己的任务,互相帮助解决困难。在这次合作过程中,我主要负责系统前端界面的编写以及基本模块的编写和实验,虽然每天都有很繁重的任务,每天都会遇到很多困难,但在自己的努力以及成员的帮助下,最终完成了项目。通过这次实验,我体会到了成员合作的重要性,学会了如何与团队成员正确的交流,同时也提高了自己的编程能力,希望在后续阶段,能够继续努力,更好的完善项目。 | |
总结 | 一款好的软件的面世,背后一定有合适的开发方法,优秀的团队与良好的软件开发过程,通过本次软件工程项目的开发,我收获良多。 (1)从个人角度来看,我发现盲目进行代码堆砌对项目的开发没有太大的帮助,而是要一方面即时与团队进行沟通,尤其是业务相关的模块负责人,对接口提前约定,开发进度和开发功能点的统一,及时对接以发现问题,还有就是一定要按时完成任务,不拖团队后腿。另一方面在个人的技术选型过程中要多学习了解各种热门框架,多进行尝试,合适的框架可以使得开发事半功倍。 (2)从团队角度来看,合理的分工,合适的项目组织与流程规划都是成功项目的关键,一个项目的开发不是靠单纯的个人能力就能够驾驭的,根据不同的项目类型进行合理的开发过程规划是非常关键的,在开发的过程中,通过团队协作使得我们的软件开发更加高效。 (3)工程就是将技术转化为产品的过程,通过这次的开发,我了解到了除个人技术能力之外,团队合作的重要性。 (4)软工这门课给了我本科学习中唯一一次较为正式的项目开发实践的机会,这次大作业给我留下的印象和带来的成就感绝对是其他大作业所不能比的,这门课程也是稍有的将就技术与工程结合的课程,有助于培养优秀的软件工程素养。 |