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

王安然学长:

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

  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. Vue nodejs商城项目-商品的分页、排序、筛选

    .分页 ,要查第3页的数据,则跳过2*8条数据,然后返回8条数据. 在实现滚动加载时,页面刚一加载完成并不需要请求所有数据,当用户下拉到页面底部时,再去请求数据并拼接到商品数据列表中. 通过vue-i ...

  2. dedecms基础整理,

    需求3: 在添加某个商品的时候,我们希望多一个信息,就是付费方式,还希望多一个邮资信息,我们又该怎样处理? 引出修改内容模型的问题 每个模型的字段管理的所有信息 都属于附加表. 步骤: 点击 核心-& ...

  3. xcode7--iOS开发---将app打包发布至app store

    时隔3个月再次接触应用打包,又是一顿折腾 说说这次的感受吧: 变得是打包时间减少到4小时(其中大部分时间还是xcode7或者是iOS9的原因),不变的是还是一如既往的坑!! 好了,废话不多说,下面讲讲 ...

  4. ETO的公开赛T2《宏聚变》 题解(BY 萌萌哒123456 )

    我们注意到这道题中最多有 $(n+q)$ 个数被加入,而每个数最多被删除一次,因此每次操作 $O(logn)$的复杂度是可以接受的. 我们对于$1..100000$之间每个数分别开一个set,维护这个 ...

  5. django+xadmin在线教育平台(十七)

    8-1 课程列表 拷贝课程列表页到template目录 创建课程相关的urls.py Mxonline2/urls.py中声明包含到course的url中: # 课程app的url配置 url(r&q ...

  6. 前端javaScript经典面试题

    1.alert(1&&2),alert(1||0) alert(1&&2)的结果是2 只要“&&”前面是false,无论“&&”后面是t ...

  7. java的动态验证码单线设计

    1.java的动态验证码我这里将介绍两种方法: 一:根据java本身提供的一种验证码的写法,这种呢只限于大家了解就可以了,因为java自带的模式编写的在实际开发中是没有意义的,所以只供学习一下就可以了 ...

  8. js函数的节流和防抖

    js函数的节流和防抖 用户浏览页面时会不可避免的触发一些高频度触发事件(例如页面 scroll ,屏幕 resize,监听用户输入等),这些事件会频繁触发浏览器的重拍(reflow)和重绘(repai ...

  9. 【php】php 生僻知识点认知

    资料引用来源:http://www.runoob.com/php/php-tutorial.html ​ 表单提交中, 变量名中的点和空格被转换成下划线.例如 <input name=" ...

  10. pyspider -- 禁止请求非200响应码抛异常

    在pyspider中若crawl()网址时出现非200的异常信息,会抛出一个异常. 可以在对应的回调函数上面通过@catch_status_code_error 进行修饰,这样就能不抛出异常正常进入回 ...