谭传奇学长:
  我们的弯路可能是,一开始没有从最基础的部分开始迭代开发,一开始就想的太远了一些,每一步开的有点太大了,所以可能有些东西最后就连不上,也没有能够按时完成。如果可以先做出一个能用的版本,然后再不断完善,至少不会跳票,但我们可能有的部分做的足够好,有的关键部分就没时间做,结果就是整个东西无法发布

王安然学长:

  经过第一次迭代开发,团队合作的很多问题暴露出来。

  1. 设计不足。一个软件工程的设计到实施,其实是很重要一步。在我们的项目中,为了满足游戏设计的需求,我们的软件工程设计中保留了很多的可扩展性,但是却没有足够关注到细节,没有给出所有具体的要求。在实施工程的时候经常发现有的问题在设计中找不到参考,导致开发人员的效率低下。
  2. 开发人员水平有限。分配任务的时候经常有说这个事儿做不到,或者压根不知道怎么做;验收工作频出意外,DEV写了一个模块之后,验收的时候发现模块质量不行,代码质量低是其次,无法按照给定的接口工作。
  3. 工作分配及目标不够明确,PM在分工时,没有对各项工作进行足够细致的描述,也没有设立一个明确的短期目标,使得开发人员对自己的工作目标模糊,没有验收时标准的参考。
  4. 在M1阶段,开发人员工作时和相关模块开发人员、PM的联系太少,总是PM下达任务,Dev之间缺乏联系。对于工作目标中模糊的部分采用了模糊处理,验收时代码没有达到预期的效果。M2阶段效果好了一些。
  5. 有关游戏制作的特殊性。游戏制作大家都是第一次,一个游戏玩起来基本的逻辑也许不复杂,但是难在它对交互效果要求极高,如果只能满足基本的逻辑正确而交互效果极差,那这段代码必然失败。为了提供一个优秀的游戏体验,好的美工重要,开发人员要写出交互效果良好的代码也很重要。开发人员自身需要有一定交互设计功底,并且有美术功底或者有美工的指导,这是我们的大部分组员都缺乏的,这也导致了后期的用户评价都是“游戏很好玩,但是不协调,不好看”。程序员,有心无力,没办法……
  6. 错误的预估了项目的大小。我们都没有制作游戏的经验,没有想到,这样一款比较简单的游戏都需要这么大的工作量。这导致了最后的跳票。
  7. 另外,工程项目本身也存在很多问题,使用跨平台C++游戏引擎编写的一个不好就是我们没捣鼓出来配合VS进行代码质量管理的有效方法。而且游戏程序的测试也相当复杂,我们仅能采用大量测试工程来分开游戏单位测试,保证没有意外错误和运行效果,最低限度是保证代码逻辑功能正确。

  学长感受: 我们觉得碰到这种情况,就应该把游戏设计那人吊起来,把文档写到游戏逻辑的每个角落,每个效果都有动画演示和运算函数,然后大家照着文档开始干,缺一否则皆不能安天下。否则光干游戏设计的人工作量也不够大。

总结

  从各位学长的经验教训来看,开发一个游戏确实很麻烦。我们小组目前的计划也是开发一个游戏。所以学长的经验对我们来说,十分有帮助。重要的一点是,PM的规划,DEV的执行有严重的脱节。程序编写一开始设想的过大,在大的里面又想很多细节的东西。根据学长描述,导致开发效率较低。
  我们希望能借鉴学长提出的思路,对于一个项目,先进行基本的,最简单版本开发。然后再扩展程序。计划通过3~4次快速的迭代开发,使得程序由简单变复杂。由能用变好用。在debug方面,我们希望对于整个程序进行分块,然后编写自动补全函数的辅助debug代码。来并行调试。这个样子可以使得每个人负责的程序有效的,正确的完成。

编辑:肖俊鹏

Week1 Team Homework #1 from Z.XML-总结学长经验教训的更多相关文章

  1. Week1 Team Homework #1 from Z.XML-对于学长项目《shield star》的思考和看法

    试用了一下学长黄杨等人开发的<shield star>游戏.                      其实作为一个学弟,我对cocos2d-x引擎还算是比较了解,所以对于这样一款很“典型 ...

  2. Week1 Team Homework #2 from Z.XML-Introduction of team member with photos

    <Z.XML Introduction of each team member, with photos Z=周敏轩; X=肖俊鹏&薛亚杰; M= 毛宇 & 马辰; L=  李孟 ...

  3. Week1 Team Homework #1 from Z.XML-项目选择思路--基于对曾经大作业项目的思考

    这两天试玩了一下去年学长的满分工程<shield star>游戏,再结合了一下他们团队的博客记录,有一种非常牛逼的感觉.具体对于这款游戏的一些思考和看法,毛大神已经说的很好了.因此,这里主 ...

  4. Week 1 Team Homework #3 from Z.XML-软件工程在北航

    任务名称:软件工程在北航 任务要求:要求我们采访往届师兄师姐,收集他们对于软件工程这门课程的反馈.具体作业链接http://www.cnblogs.com/jiel/p/3311403.html 任务 ...

  5. Week1 Team Homework #2 Introduction of team member with photos

    小组成员介绍 组长:黄剑锟       11061164 组员:顾泽鹏        11061160 组员:周辰光         11061154 组员:龚少波        11061167 组 ...

  6. 团队博客作业Week1 Team Homework #3软件工程在北航

    这次我们采访了一位大四的学姐,让她简单地谈了谈去年学习软件工程的经历和感受. 在完成软件工程大作业的过程中,由于计划安排与实际脱节,导致时间前松后紧,平均每周花在这门课上的时间大约有8个小时. 项目完 ...

  7. Week1 Team Homework #1: Study the projects done by previous student groups

      我们研究了学长的项目:百度3D地图API的调用.下面是我们对该项目的一些看法: 优点: 界面清晰 各类之间调用及其他关系容易理清. 缺点: 前段html代码过于冗杂,很多(div)块间的层次关系不 ...

  8. Week1 Team Homework #3: 软件工程在北航

    在组内成员的共同努力,我们采访了几个学长学姐,顺利完成任务.反馈信息如下: 平均每周花在这门课上的时间 平均写的代码总行数 学到的最有用的部分 最没用的部分 <软件工程>最应该改进的地方 ...

  9. Week1 Team Homework #2: Introduction of each team member

    王洛书 我是来自浙江的王洛书.热爱历史,热爱美食,热爱代码,热爱博物馆.很喜欢软件工程这门课的上课方式,也很喜欢组里的这些同学.希望能大家一起努力,在这门课上真正地收获能力上的提升!   陈睿翊

随机推荐

  1. 在mac上显示网速的软件——iStat Menus 5:

    在mac上显示网速的软件——iStat Menus 5: https://bjango.com/mac/istatmenus/ 注册码: Email: 982092332@qq.com SN: GAW ...

  2. Linux分享笔记:shell终端的介绍

    [1] Linux中 “shell终端” 和 “bash解释器” 的区别 shell终端是通过基于系统调用接口开发出的程序,用来让用户与系统进行对话,管理计Linux系统.它是一个命令行工具,操作类似 ...

  3. 【vlan-hybird】

    根据项目要求搭建号拓扑图如下: 分别配置pc1-5的ip地址: 配置交换机sw1: 配置交换机sw2

  4. classList属性详解

    之前我们要操作一个DOM元素的class属性,需要对这个DOM的class进行繁琐的循环判断,而现在HTML5为每个元素定义了classLlist属性,用于在元素中添加,移除及切换 CSS 类.该属性 ...

  5. BC追踪

    项目又要开始改造了,记录一下改造过程中碰到的坑和解决思路,避免以后回头看看自己的笔记都不知道写了什么. (一)敏感信息混淆 (二)活用ComponentScan (三)Swagger配置多项目共用 ( ...

  6. python+matplotlib 绘制等高线

    python+matplotlib 绘制等高线 步骤有七: 有一个m*n维的矩阵(data),其元素的值代表高度 构造两个向量:x(1*n)和y(1*m).这两个向量用来构造网格坐标矩阵(网格坐标矩阵 ...

  7. eclipse 右键没有Build Path

    如果Project Explorer右键没有build pathWindow ->show view 选择package explorer 参考https://blog.csdn.net/cod ...

  8. CRC校验8

    什么是CRC校验? CRC即循环冗余校验码:是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定.循环冗余检查(CRC)是一种数据传输检错功能,对数据进行多项式计算,并 ...

  9. 爬虫之request模块高级

    一.cookie&session cookie:服务器端使用cookie来记录客户端的状态信息 实现流程: 执行登陆操作(获取cookie) 在发起个人主页请求时,需要将cookie携带到该请 ...

  10. 分享一个根据具体的日期判断星座的PHP函数

    其实原理很简单,也就是把所有的星座月份日期范围存储到一个数组中,然后根据日期判断属于哪个范围,这样就得到是哪个星座了. 下面的这个函数写的比较精炼,可以参考一下 function constellat ...