前言:这应该是最后一章了,故事虽然到这就结束了,但现实里还要继续下去,希望在很久的以后来回顾时,能因自己学生时代有这样的经历而欣慰。
说明:故事中的人物均是化名,故事情节经过些许加工,故事情节并没有针对任何人,仅以此纪念自己的成长。
回顾上一章:详情请猛戳该链接:http://www.cnblogs.com/dasusu/p/5158868.html


第四章:Beta收官


  三个多周的Alpha冲刺,一个周左右的休息调整时间。紧接着也就是Beta阶段的冲刺了。

  在Alpha版本中,虽然你们预期的功能基本都实现了,但仍然有很多不足。比如界面太丑,代码模块化太烂等等。瓜哥跟你在那一周的休息调整时间里都表示过,要在Beta阶段大干一场,好好的将这些问题都解决掉。然而,现实总是残酷了,当然,这是后话,暂且不提。

  在Alpha结束后,你写了篇总结。也就是总结了下在Alpha阶段的一些感想,里面你提到了你们的项目因准备不足而陷入各种难题,提到了队友因意见不合而不断争吵的问题。总之,这三周过来,或多或少都学到了很多。

  在Alpha刚开始的编程时,你记得懂哥说项目要学会使用在框架的基础上进行开发,而不是所有代码都自己来书写。带着这种观念,你在写界面的时候引入了一大堆第三方库。需要一个点击效果,好,引入。需要一个弹窗效果,好,引入。然而你并没有真正的深入去学习你所引入的第三方库,导致很多库之间其实已经有冗余的功能了。

  更糟糕的是,队友因为你引入这么多库,从而导致在编译项目时花费了大量时间。因此,你打算在Beta阶段时将多余的库都删除掉。

  另一个项目的问题是,当初因为没认真考虑,而引入了一个不熟悉的数据库框架。到后面进行开发时,才发现你们需要的很多功能那个框架都实现不了,但已经有很多基础的数据库功能是基于那个框架上面编写的,如果要换掉那个框架,将是一个工作量巨大的任务。但如果不换掉,想要的功能又没办法实现。

  为了解决这个问题,你查了各种资料,做了各种尝试,熬到了半夜两三点。最后用一种特别暴力的方法去暂时的解决掉,搞定后你特别想去睡一觉,这种活简直了!日后需要怎么做再留给瓜哥去头疼吧。

  Beta期间也有两三周的时间,但懂哥只要求进行七次会议记录而已。瓜哥为了能让项目保持一种稳定,平均的进展,安排了每过两三四天开一次会议。但计划总是赶不上变化。

  第一周还好,因为大家第一周里面都没有什么考试,进展也还算顺利,一些Alpha遗留的问题也渐渐的解决了。但到了第二周时,有的队员有考试,而且是接连两三场考试,基于此,瓜哥最后表示,这周就先把项目放一边,大家好好复习,准备考试,等最后一周再来继续项目。

  本来以为,放一周的时间去调整,不做项目可以让大家到最后一周时能更有干劲。但事实却是,一周没碰过项目,导致大家对于项目的热情大大的降低了。不仅如此,对于项目很多地方都渐渐的感到陌生了,更可怕的是,你居然忘记了某块有合作的代码当初到底是不是你编写的。

  日后瓜哥也提过,当初因为放了一周,导致他也对于项目的进展掌握出现了很多问题。当然,这是后话,暂且不提。第二周的Beta过去了,大家都在忙着复习,确确实实都把项目扔一边去了。等到了第三周时,第一次会议上,大家甚至都不知道要说什么话。

  离最后的时间也就只剩下一周左右了,你突然觉得来不及了。自己无聊时不断地手工测试你们的软件,你发现似乎还存在一大堆问题,但就是不知道怎么把这个问题描述出来。你觉得队友应该也会自己去手工测试,然后发现相同的问题,但事实上队友基本没提过你发现的问题。

  在一次会议上,你直接表示出了厌烦,你表示说这样下去项目根本做不出来,现在仍然存在很多问题。瓜哥要你说出具体有哪些问题,但你又说不出来,你说自己跑一遍就会发现一堆问题了,但瓜哥却表示,你说有问题却又不把问题说清楚。这样,在Alpha阶段发生的一次冲突到现在又出现了一次。只是这次你没有继续接话下去,因为你突然很不想说话了。

  甚至,你出现了厌工。你总觉得,软件只有你一个人在测试,在找Bug,但事实上很多Bug都被你因为自己的心情烦躁而放大了。你不知道这是不是因为情绪不好,还是因为时间快临近截止,还是因为缺少跟队友的沟通,从而导致了你对于项目厌工的心情。

  你甚至出现过,你不做了的想法,放一边去,反正等最后验收时没办法完成作品那责任也不是你自己去担。

  然而,就在你自己胡思乱想,乱发脾气时。瓜哥又对总仓库进行了一次提交,你去看了下瓜哥的提交代码。你发现,瓜哥居然把你一直很苦恼的一些BUG解决了。瞬间,你冷静下来了。每个人都在为这个项目不断的熬夜,不断的努力。在别人埋头修BUG的时候,你却在抱怨,却在厌工。

  那天你没敲什么代码,就只是早早结束熬夜,提前上床。你想平静下自己,想让自己恢复到Alpha阶段时的状态。你觉得如果你继续以这种情绪下去的话,特别对不起瓜哥。当初是你把瓜哥拉进队伍里来的,瓜哥对于项目也一直很负责,你不能只是因为自己的情绪不好就厌工。这对项目,对瓜哥,对队员都很不公平。

  调整了状态后,你继续做项目下去。每次的会议上,你也很少再带有情绪,而是静静的听着瓜哥的安排。然后根据瓜哥安排的任务,尽可能的保证在规定时间内完成。

  Beta阶段的主要任务是实现跟网页端小组的项目的互联互通。使用同一个数据库,对数据库中表的设计,字段的设计,瓜哥都去找网页端的负责人讨论,然后再把结果告诉你们。但实现的过程中仍然碰到很多问题,为了解决这些问题,基本都把时间放在上面。

  导致了你们一开始计划在Beta阶段对界面进行大修改,对项目进行大重构的安排完全被丢到一边去了。

  在Beta的演示验收上面,又出现了各种问题,更奇葩的是这问题竟不带重复的。Alpha阶段演示验收时你们就碰上了无网络,服务器崩了,数据线连接没反应等问题导致被迫下台,先让下一组演示。而这一次的演示上,居然碰上了服务器连接不上,重启不了,演示时漏掉演示某部分功能~~

  Beta的演示验收是由各小组互评加懂哥点评结合完成的。其他小组对于你们的项目看法基本都是功能太单一了,太简单了!好吧,其实是没演示。

  演示验收完毕,这学期的软工实践算是告一段落了。也是时候再写篇总结了。

  不同于以往的数据库实践之类的课程,这门课确实让你经历了很多。见客户、每日会议、分工开发、Github团队合作、争吵讨论、编码规范、写文档等等。懂哥说过,他最大的希望就是通过这门课程,可以让他的学生能有能力接私活。你突然很期待起来,好想自己接一次私活看看。那么,就再继续充实自己吧,让自己可以拥有接私活的能力。加油吧。

  (完结。再次向懂哥,范老师表示致敬)

【软工神话】第五篇(Beta收官)的更多相关文章

  1. 【软工神话】第四篇(Alpha冲刺)

    前言:咳咳,一个多月了,最近忙这忙那,都把这个故事给落下了,昨晚刚回到家,白天得干活,晚上赶紧把这个故事写完,以此纪念自己的软工. 说明:故事中的人物均是化名,故事情节经过些许加工,故事情节并没有针对 ...

  2. 软工实践第五次作业-WordCount进阶需求

    软工实践作业(五) GitHub 作业链接 结对博客 031602240 具体分工 PSP表格 代码规范 解题思路与设计说明 爬虫使用 代码组织与内部实现设计(类图) 算法关键 实现方法 流程图 附加 ...

  3. Fzu软工第一次作业-准备篇

    (0)一些想说的话 我叫陈浩,是16级计算机一个很普通的学生.我是补选选软工实践这门课的.选软工实践这门课我想了很久.因为学长学姐告诉我这是一门很锻炼人又很辛苦的课程,需要大量的时间和精力.然而如今的 ...

  4. 软工2017第五周——个人PSP

    10.13 --10.19本周例行报告 1.PSP(personal software process )个人软件过程. 类型 任务 预计时间 开始时间                结束时间 中断时 ...

  5. 福大软工1816 · 第五次作业 - 结对作业2_map与unordered map的比较测试

    测试代码: #include <iostream> using namespace std; #include <string> #include <windows.h& ...

  6. 福大软工1816 · 第五次作业 - 结对作业2_EXE图片_备用

    1_每日推荐界面.png 2_论文搜索界面.png 2_论文搜索界面_搜索功能.png 3_流行趋势_十大热词排名统计图.png 4_人物界面.png 5_我的收藏界面.png 6_设置界面.png ...

  7. BUAA2020软工作业(五)——软件案例分析

    项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 软件案例分析作业 我在这个课程的目标是 进一步提高自己的编码能力,工程能力 这个作业在哪个具体方面 ...

  8. 软工+C(4): Alpha/Beta换人

    // 上一篇:超链接 // 下一篇:工具和结构化 注:在一次软件工程讨论课程进度设计的过程中,出现了这个关于 Alpha/Beta换人机制的讨论,这个机制在不同学校有不同的实施,本篇积累各方观点,持续 ...

  9. 【2017集美大学1412软工实践_助教博客】团队作业10——项目复审与事后分析(Beta版本)

    写在前面的话 转眼轰轰烈烈本学期的软工实践就结束了,这个过程中想必在熬夜敲代码,激烈讨论中留下诸多回忆的同时,也收获了不少.恭喜所有团队完成了本阶段冲刺,此外,由于大家的贡献分给的都很平均,将个人贡献 ...

随机推荐

  1. 透彻讲解,Java线程的6种状态及切换

    Java中线程的状态分为6种. 1. 初始(NEW):新创建了一个线程对象,但还没有调用start()方法.2. 运行(RUNNABLE):Java线程中将就绪(ready)和运行中(running) ...

  2. 常见的web攻击手段

    XSS:跨站脚本攻击 -典型实例为: 当用户在表达输入一段数据后,提交给服务端进行持久化.如果此用户输入的是一段脚本语言,而服务端 用户输入的数据没有经过转码.校验等就存入了数据库,在其他页面需要展示 ...

  3. 《你不知道的JavaScript(中卷)》读书笔记

    中卷有点无聊,不过也是有干货的,但是好像要背一下的样子.不过作者大大都夸我是“优秀的开发人员”了,肯定要看完呀~~ 开发人员觉得它们太晦涩,很难掌握和运用,弊(导致bug)大于利(提高代码可读性).这 ...

  4. SQL三表左关联查询

    今天在开发的时候遇到了一个需求就是三遍关联查询,表A包含有表B和表C的uid,然后使用left join左关联查询: SELECT c.`uid`, `fromuseruid`, `touseruid ...

  5. mysql 导入 CSV文件命令行 ERROR 13 (HY000): Can't get stat of

    一定要查看好CSV字段结构是否和文件的表结构字段一致 load data local infile 'F:/MySqlData/test1.csv' --CSV文件存放路径 into table st ...

  6. 微服务架构下分布式事务解决方案——阿里GTS

    1 微服务的发展 微服务倡导将复杂的单体应用拆分为若干个功能简单.松耦合的服务,这样可以降低开发难度.增强扩展性.便于敏捷开发.当前被越来越多的开发者推崇,很多互联网行业巨头.开源社区等都开始了微服务 ...

  7. Jenkins技巧:如何启动、停止、重启、重载Jenkins

    ----------------------------------------------------------------- 原创博文,如需转载请通知作者并注明出处! 博主:疲惫的豆豆 链接:h ...

  8. Java I/O : Java中的进制详解

    作者:李强强 上一篇,泥瓦匠基础地讲了下Java I/O : Bit Operation 位运算.这一讲,泥瓦匠带你走进Java中的进制详解. 一.引子 在Java世界里,99%的工作都是处理这高层. ...

  9. 【杂谈】没有公网IP的电脑如何与外部通信

    前言 前几天突然想到的问题,自己先猜测推理了一番,最后在谢希仁版<计算机网络>找到了权威的解答.这里记录一下自己的思考过程. 网站是如何找到我们的? 我们知道,互联网中的两台电脑要进行通信 ...

  10. 5-15 bootcss 之 modal 以及 jquery ui 之datepicker 小记

    最近公司在用bootstrap和Jquery UI做项目,类似与OA的东西前两天碰到点问题,记录一下.希望读者不要在遇到和我一样的问题. 1 datepicker.不知道怎么自己下载的bootcss里 ...