软件工程(QLGY2015)第三次作业点评(含成绩)
相关博文目录:
团队信息
本页点评团队1-22,其他组见:http://www.cnblogs.com/xiaozhi_5638/p/4490764.html
团队编号 | 博客园团队博客 |
---|---|
1 | FOR THE DREAM |
2 | 思甜雅 |
3 | 平常心 |
4 | 沉睡魔咒 |
5 | 蓝色梦想 |
6 | 进击的代码 |
7 | 追梦人 |
8 | One Piece |
9 | 四傻大闹齐工大 |
10 | 粉末 |
11 | Dream high |
12 | 软件工程学习小组 |
13 | 蹿吧 妮儿 |
14 | 代码海洋 |
15 | KING |
16 | 奔跑的蜗牛 |
17 | 狩猎的时间到了 |
18 | 非常4+1 |
19 | 19 |
20 | 天天向上 |
21 | 翱翔的飞鹰 |
22 | 团队博客206 |
NABCD点评
团队项目里一下子要做的几个都是比较抽象的东西:
- 协作与分工
- 立项(NABCD大法。。)
- 功能设计
- 用例图、类图、时序图等
- 测试计划
前两次作业分别是PSP和结对编程,上述几个内容都没有得到充分的有效训练,导致同学们做这几个环节整体流于形式。不能抓住重点。
简单确定团队成员之后,不应该直接就分工了。一般来说立项是第一位的,如果不能确定软件要不要做,要做什么,分工有个屁用。而立项,根据《构建之法》,我们知道NABCD是一种有效的模型,大家称为NABCD大法
。不过我的角度看来,大家还只是在字面意义上去使用NABCD了,有NABCD和没NABCD区别在哪?我认为以上的其他部分都可以围绕NABCD的去做。
那好,我们就说用NABCD了:
N,我认为N一定要分析目标用户群,搞清楚:谁是用户,他们的需求是什么,现有的软件解决了他们的什么问题,没解决的问题是什么,然后,我们的Team才决定去做一个软件解决这些用户的需求。用户可以是自己,也可以是班上的同学,也可以是网络上的其他人,但一定要有用户。没人用,你做的都是无用功。一般来说,能搞明白面向的用户是谁、能解决的核心问题,就是最基本的。需求也不是自己拍脑袋想出来的,多半你还是需要去和你的用户沟通,做用户需求分析,否则你想象出来的需求根本不存在,在整个项目周期内,需要反复从用户哪里得到反馈。
A,这个地方你大可以针对N里的需求做分析、设计。分析的话可以做个基本需求分析、高级需求分析、扩展需求分析等。设计,才是你们需要用上用功能设计、用例图、类图、时序图的地方。
B,好不容易做了分析、做了设计。总得说下如果要去实现的话,做好了这个软件。用户会不会被吸引去使用,怎样才能被吸引?B要思考的就是我们的软件经过A之后,会不会根本不够吸引用户去使用,如果是的话,那就要返回去思考N和A是否有问题。如果有问题,就一定要回归分析、设计了。如果连自己都说服不了,不值得写代码。
C、如今早就是满世界都是软件了,你做一个一模一样,完全功能都一样,甚至更全的软件估计都没什么竞争价值了。那么问题来了,怎样才有竞争力,竞争力意味着别人死活都比不过你。这个就要绞尽脑汁的。
D、请返回看你的N,如何让他们用上软件,解决他们的问题,并让它们得到B,你的软件他们会用多久呢?
以上几个点,并非一次了事的事情,会贯穿整个软件生命周期,需要随时更新和调整。然后,就开始开工了,无论是瀑布模型还是敏捷开发,尽早往github上提交代码啊。写了一堆东西,一行代码都没看到呢?第一天就可以初始化项目目录,工程文件,赶紧往github上提交呗。一个月时间不抓紧怎么能做出高质量的软件。在经验不够的多的情况下,能一个team在一起协作多写代码才更真实吧,那些抽象的名词也没办法不写代码只写博客就能理解。尽早做出有人用的软件才是真正的目标。
评分
7月8日更新,重要:
- 程序部分里的代码提交部分单独拆出评分,请还没提交或者提交不完整的团队,补交完整项目代码,截止日期2015年7月15号。Fixed!
- 博客作业逾期(超过一周)未提及的,会直接倒扣分数。
团队编号 | NABCD(10) | 程序(10) | 运行与总结(10) | 代码提交(10) | github | 备注 | 总分(3:2:3:2) |
---|---|---|---|---|---|---|---|
截止时间 | 5月24 | 6月14 | 6月21 | 6月21 | |||
19 | 8 | 8 | 8 | 8 | 完整 | 80 | |
4 | 6 | 8 | 7 | 8 | 完整 | 71 | |
2 | 6 | 8 | 7 | 8 | 完整 | 71 | |
3 | 7 | 6 | 7 | 7 | 完整 | 68 | |
7 | 7 | 7.5 | 7 | 5 | 完整(7月10号更新提交) | 67 | |
13 | 7 | 7.5 | 7 | 4 | 提交了单个文件,无后缀名 | 请提交完整项目工程 | 65 |
14 | 6 | 7.5 | 7 | 4 | 提交了一个txt文件 | 请提交完整项目工程 | 62 |
20 | 5 | 7.5 | 7 | 4 | 提交了一个Md文件 | 请提交完整项目工程 | 59 |
12 | 7 | 7.5 | 7 | 0 | 无,博客有代码 | 请提交完整项目工程 | 57 |
18 | 5 | 7.5 | 6 | 4 | 项目不完整 | 请提交完整项目工程 | 56 |
22 | 4 | 5 | 6 | 7 | 完整 | 54 | |
6 | 6 | 7.5 | 6 | 0 | 无,博客有代码 | 请提交完整项目工程 | 51 |
10 | 6 | 7.5 | 6 | 0 | 无,博客有代码 | 请提交完整项目工程 | 51 |
11 | 6 | 5 | 4 | 4 | 提交了单个文件,无后缀名 | 请提交完整项目工程 | 48 |
15 | 3 | 3 | 7 | 5 | 有未实现代码 | 请提交完整项目工程 | 46 |
16 | 5 | 7.5 | 4 | 2 | 提交了单个文件,无后缀名(7月15号更新提交) | 命令行版变成GUI版?请提交完整项目工程;7月15更新:重写了命令行版的总结。 | 46 |
9 | 6 | 7.5 | 4 | 0 | 无,博客有代码 | 请提交完整项目工程 | 45 |
17 | 4 | 2 | 5 | 5 | 完整(7月10号更新提交) | 41 | |
21 | 6 | 2 | 6 | 0 | 无,博客有代码 | 请提交完整项目工程 | 40 |
1 | 5 | 3 | 5 | 0 | 无,博客有代码 | 请提交完整项目工程 | 36 |
5 | 5 | 4 | 2 | 3 | 提交了单个文件,无后缀名 | 命令行版变成GUI版?,请提交完整项目工程 | 35 |
8 | 7 | -5 | 2 | 2 | 提交了单个文件,无后缀名(7月10号更新提交) | 命令行版变成GUI版?,请提交完整项目工程,面向对象程序设计超过一周未提交 | 21 |
优:
- 总体上每个团队还是坚持到了最后,完成了大部分必要的环节
- 一部分同学至少学会了完整提交github,如果能整个开发周期都在github上协作就更好了
- 项目的立项和分析,NABCD环节,总体上有了个初步的接触,想必以后做其他项目的时候大家会想到这个大法
- 无论自己写的还是基于已有代码做的,都至少做了一些
劣:
- 老师布置的环节有的团队没做完整,比如面向对象程序设计,运行和总结
- 只要少数几个团队认真提交了github,一部分提交了单文件,另一部分没提交,还有的没看到代码,也说明了团队的程序开发并没有全程使用github的版本化功能
- 有很多博客内容摘抄的痕迹明显,其实如果是引用别人的文章,至少要加引用说明,可以引用,但是一定要有结合自己项目理解并认真写的部分,列个参考资料也比直接抄强
- 整个团队项目过程中,可能是由于期末同学们忙于各种考试的原因,体现出工程方法的比较少
- 团队的博客里应该说明团队里每个成员的实际做的事情,以及协作解决问题的过程中如何使用工程方法解决的,但很多团队博客只写了博主自己干了什么
- 团队项目代码做的质量并不如结对编程的代码质量,可能是由于期末的原因吧,多人协作的项目至少要有足够的代码数量吧,很多太简单了,还不如结对项目
- 如果是基于已有项目的代码,至少应该说明下,本项目基于之前谁谁谁的哪个版本的代码上开始做,自己做的部分主要添加了哪些东西,最重要的是,自己做的部分是什么
未来改进点
- 第一周个人项目的时候,一定要严格考核每个同学的Git使用能力。比如可以设置只有通过Git考核的才能进入下一个环节(结对编程)项目,而不进入下一个环节就不能得下一个环节的分数,这样宁缺毋滥的要求下,必然不会出现到了团队项目还不会正确使用Git以及在Github上协同开发。单元测试也要严格通过。
- 结对编程的时候,一定要严格考核每个小组的编码规范能力,以及两人协同开发的能力。如果一个班级都采用一种语言开发,比如Java,那么此时可以要求在教师指定的编码规范里挑选一种并且严格执行。协同开发,在Github上必须有两人协作开发的fork-pull-request记录。
- 团队项目的时候,必须一开始就说明团队博客地址+团队项目的Github仓库地址。必须为团队项目在第一天就建立团队项目的Github仓库,并且每个阶段都必须有所有团队成员的fork-pull-request提交记录。
- 选题要说明是重新开发的项目还是在已有项目上开发,如果是在已有项目上开发,应该在NABCD里重点说明已有项目的背景,及其需要改进的点,或者哪些新需求,这样才能有的放矢,在后续的环节里明确说明团队改进和新增部分的内容,而不能用已有项目本身的代码充数。
- 对于学生来说,还是应该围绕可运行的项目代码为核心,任何一个环节都应该保证Github上提交的代码是当前可执行的。
- 可以的情况下,应该要求必须反馈助教或者老师的建议,不反馈者直接扣分,否则给出的建议都没有跟进。
软件工程(QLGY2015)第三次作业点评(含成绩)的更多相关文章
- 17秋 软件工程 团队第三次作业 预则立&他山之石
题目:团队作业-预则立&&他山之石 团队: 我说嘻(xì)哈(hà)你说侠 17秋 软件工程 团队第三次作业 预则立&他山之石 1.确立团队选题,建立和初步熟悉团队git的协作 ...
- 软件工程(GZSD2015) 第三次作业提交进度
第三次作业题目请查看这里:软件工程(GZSD2015)第三次作业 开始进入第三次作业提交进度记录中,童鞋们,虚位以待哈... 2015年4月19号 徐镇.尚清丽,C语言 2015年4月21号 毛涛.徐 ...
- 软件工程(GZSD2015) 第三次作业
时间: 2015/4/17-2015/4/23 基本要求: 在之前编写的四则运算程序基础之上做如下改进: 请参照教材Page57:4.2-4.3节中内容,修改原程序,使之符合 "代码风格和设 ...
- 软件工程(QLGY2015)第二次作业点评(随机挑选20组点评)
相关博文目录: 第一次作业点评 第二次作业点评 第三次作业点评 说明:随机挑选20组点评,大家可以看看blog名字,github项目名字,看看那种是更好的,可以学习,每个小组都会反应出一些问题,希望能 ...
- 软件工程(QLGY2015)第一次作业小结(含成绩)
相关博文目录: 第一次作业点评 第二次作业点评 第三次作业点评 Github项目提交 github的代码提交,大部分人都只是提交了单个文件,存在几个问题 请提交完整的项目文件到github 问题:为什 ...
- 软件工程(QLGY2015)博客点评总结
目录 第一次作业(2015.5.9) 第二次作业(2015.5.21) 第三次作业(2015.6.11) 2015上半年软工助教总结 第一次作业(2015.5.9) 存在主要问题 1)书写这种练习博客 ...
- 软件工程(GZSD2015)第三次作业提交进度
第三次作业题目请查看这里:软件工程(GZSD2015)第三次作业 开始进入第三次作业提交进度记录中,童鞋们,虚位以待哈... 2015年4月19号 徐镇.尚清丽,C语言 2015年4月21号 毛涛.徐 ...
- 248&258--高级软件工程第三次作业
0 小组成员 马帅 / 2017202110248 齐爽爽 / 2017282110258 1 项目 GitHub 地址 GitHub:https://github.com/whumashuai/QT ...
- 2016福州大学软件工程第五、六次团队作业-Alpha阶段成绩汇总
1.本次作业成绩统计结果: 本次Alpha阶段团队作业公布如下: 表格说明: PE:贡献百分比 YS:演示评分(满分15分) BK:博客评分(满分15分) SH:事后诸葛亮环节(满分5分) P:个人分 ...
随机推荐
- 初涉Linux ----------> 打造自己的 Vim IDE
一. 开篇前言 (图片显示越界的话,请刷新) 装好Ubuntu15.04系统之后呢,玩了玩 Ubuntu,感觉还是很不错的.比windows快,一开机就可以打开你想要的程序,但是在windows下你 ...
- AngularJS性能优化
几个概念 域$scope和更新周期DigestCycle AngularJS的域本质上是一些JavaScript对象,它们从一些预定义的对象继承而来.基本上,小的域比大的域运行要快. 每创建一个新的域 ...
- ganglia安装简记
首先需要安装EPEL的源. yum install -y ganglia.x86_64 ganglia-gmetad.x86_64 ganglia-web.x86_64 ganglia-gmond.x ...
- Java Web之Servlet技术
1.Servlet基础 针对Servlet技术开发,Sun公司提供了一些列接口和类,其中最重要的是javax.servlet.Servlet接口,两个重要的包是javax.servlet和javax. ...
- Qt基础之开发环境部署
将 Qt 5.6 集成至 VS2015 摘要: 由于VS2015不再支持addin,所以要用其他手段. 这里给出64位系统下的安装步骤,32位类似. 一.安装VS2015 过程略.值得注意的是要选择需 ...
- MSDN论坛被垃圾信息刷爆了!!!
https://social.msdn.microsoft.com/Forums/zh-CN/caab1275-103e-470e-8888-ca39d1c48364/linehx2888?forum ...
- memcache的安装和使用
Memcache Memcached是一个高性能的分布式缓存系统.memcached自身不会实现分布式,分布式是由程序来实现的. Memcached一旦安装之后,自身进行管理!预申请一个很大的内存空间 ...
- GNU make规则的命令④书写命令
命令回显 通常, make 在执行命令行之前会把要执行的命令行输出到标准输出设备.我们称之为"回显",就好像我们在 shell 环境下输入命令执行时一样. 如果规则的命令行以字符& ...
- SQL2012连接字符串
安装了sqlserver2012数据库,测试一包代码,搜索网上的方法,死活连接不上,最后偶然测试通过,居然是连接字符串的问题. “如果开发软件的时候是在局域网或者是在本机,并且数据库不在远程计算机上面 ...
- nmap脚本扫描使用总结
nmap的脚本默认目录为:/usr/share/nmap/scripts/ Nmap提供的命令行参数如下 -sC: 等价于--script=default,使用默认类别的脚本进行扫描 可更换其他类别 ...