答:经过一学期的学习,现在我认为还是要团队一起讨论。毕竟是团队合作,要有福同享,有难同当,既然决定了要一起做项目,就应该努力完成,无论结果是好是坏,对于我们无论团队还是个人都是一次好的经历。
答:现在我觉得在开发项目之前估计的价值很大。在软件开发之前,做好足够的准备工作,能够减少开发过程中的风险,也能使开发思路清晰,过程更轻松。
3、书中第五章93页所讲的秘密团队开发,一个公司秘密地同时让两三个团队开发一个项目,说一个团队的成员如果有很大的自由度,又有独特的使命,这对于大家来说是很大的驱动力。但是我认为,一个公司,一个项目让多个团队进行秘密开发,总有速度快的,也有质量好的,那么公司该如何采用他们的作品?就算最终选出一个,剩下的团队等于是被淘汰了,那么这些员工会做何感想?这样是否浪费了人力资源?是否同时寒了员工门的心?
答:现在我觉得公司这样做也有一定的必要。同时安排多个开发小组,有利于让各个小组竞争,能够开发出更好的产品。
答:现在我认为应该去创新。作为新生代的软件开发人员,在前辈的基础上,我们不能一直坐享其成,而要努力进步创新,为未来软件的发展做出贡献
5、在看完第九章之后,我对自己未来的发展方向又有了新的选择。现在感觉做PM似乎也是一个不错的前景,但是做一个好的PM,似乎要承担的东西太多了。既要有扎实的专业知识,又要有强大的管理能力(这是否意味着还得去学习经济学院管理学的知识-。-)同时还要有强大的内心,强大的心里素质,以及承担风险的责任心。想到这些,感觉想要成为一个优秀的PM好难,如果大学期间定下这样一个目标,到底应该怎么完善自我,成为一个优秀的PM到底都需要具备哪些方面的能力呢?
答:现在我认为,要做好一个PM,要先有扎实的基础,才能够驾驭软件团队。同时还需要有强大的管理能力。
经过一学期的技能,学会了如何在软件开发之前写详细分析,需求分析等,这些计划对于软件的开发有极大的帮助。同时,还学会了如何更好的融入到团队当中开发软件项目。
201731082206+邓召春
1、我看了课本第12章253页(微软公司有“吃狗食”的传统),有这个问题(“吃狗食”是什么意思?)。经过查阅资料,是内部检测的意思,但我依然有一个疑问(为什么内部检测叫做“吃狗食”?)
2、我看了课本第16章343页(高级语言要比汇编语言要灵活和有效得多),有这个问题(高级语言和汇编语言分别是什么?有什么区别?)。经过查阅资料
3、课本第16章347页(正是这种看似简单的无状态的网页,改变了世界。),有这个问题(无状态的网页是什么意思?)。经过查阅资料,并没有理解是什么意思,也不知道它是如何改变世界的。
答:经过上网查询得出结论(无状态即各自维护自身的状态,如会话信息都在客户端,服务端并不保存状态信息,那么我们可以说服务端是无状态的。)但是依然半知不解的。
4、课本第16章360页(SWOT表格是一个简单有效的分析工具),有这个问题(SWOT是用来干嘛的?)。经过查阅资料,SWOT是一种分析方法,用来确定竞争优势(strength),竞争劣势(weakness),机会(opportunity)和威胁(threat)的。但是我依然有一个疑问(为什么说SWOT简单有效?除此之外还有什么方法?)
答:经过多方式的查询,并没有得出准确的结论。
5、看完课本和材料。我有一个疑惑(当自己的工作实际情况和预想差距很大,有很多矛盾时,应该如何抉择
答:经过和同学、学长、家人的交流,我觉得首先得想办法解决矛盾,尽量向自己预想的方向靠拢,不必强求完全达到。
在软件开发的过程中如何进行合理的任务分配才能使项目开发进度最快
经过这一学期的学习以及团队项目,我觉得自己对软件工程有了进一步的了解,对软件开发的整体流程也有了大概的了解。除此之外,还收获了同学情谊,加深了对同学的了解,结识了一些新朋友,也获得了一段有趣丰富的经验。除了收获,我还有一些体会是自己的专业能力和学习能力太差,需要大大加强。最后,在团队项目中,合作分工、积极配合非常重要,只要齐心协力,可以解决很多问题。
201731102211+方旭瑞
1、该如何选择结对的人
答;之前一直存在一个误区,觉得以技术为依托而选择。但后来经过实践,发现志同道合才是最重要的。两个能交流得来的人,更适合结对
2、对“特工集合”与“团队”两者的区别存疑
答:在看了《复仇者联盟》后,我觉得虽然“特工”散落各地,但他们的目标都是一样的,就可以成为一个团队。
3、计划和估计真的很重要吗?是否任何工作都需要有计划地完成?
答:还是那句话“凡事预则立,不预则废”,同时在经过团队项目的洗礼之后,更加体会到这句话的内涵,认为计划和估计真的很重要。当一个工作需要分步骤完成就需要计划
4、“对下一个导致构建失败的成员,授予‘构建大师’称号”,我对于这种做法的可靠性存疑
答:虽然这个人构建失败,但此做法可以变相督促激励他进步
5、关于迷思“要成为领域的专家才能创新”
答:没有任何新的想法。
无
1、知道如何开发一个小程序
2、了解了如何去管理一个项目的开发过程
因为我是我们组的PM,不可避免地要对小组成员进行任务分配并监督项目进程。在这个过程中,也不是很顺利,甚至到现在也觉得我这个PM还是做的不太称职,但体验了一次项目管理的过程,让我在此逐步了解了如何管理。
经过了一个学期的学习,我更加发现自己并不太适合学习软件工程,所以越发坚定了跨专业考研的决心。
201731082208+黄亚恒
1、(6章P110)在敏捷流程中决定当前冲刺中提到订单任务是队员根据自己的情况来认领,如果对于能够主导自己人物的估计和分配,那么他们的能动性会得到比较大的发挥。但是在这个过程中,可能不乏有一部分队员预估错误,我们到底应当如何把控任务分配合理,并且保证大家都能高效有质量的完成呢
2、(8章需求分析P153和P162)8.1软件需求中其讲到对软件的不同方面的划分,其中包括非功能性需求,同时在P162竞争中产品竞争一图也表明我们和竞争对手的产品其实都有很多对用户无用的功能。那就是现在的一些软件上的功能其实也是比较鸡肋的甚至是无用,但是我们还需要耗费资源,人力、物力去做这样的一些性价比也很低功能吗?或者说面对这样的情况我们应当如何去面对呢?
答:对于软件中的一些功能,对于用户来说可能是很少会用到。但是对于项目开发人员来说,对功能的开发都是因为存在这样的用户需求。增加可能不会增加更多的用户,但是,如果缺少这样的一些基本的功能却可能失去很多用户。
3、(10章软件质量)在这一章中,软件的质量被不断细分,讲到我们需要从多个方面去判断一个软件质量是不是好,人们也有多种方法来保障软件的质量,那么我们这些判断和保障质量的方法是不是也和软件一样有着颠覆性和改良性的创新呢?
答:关于质量的问题,我也没有弄明白如何判断
答:我认为,我在问题中提到的人,其实大部分原因大家能够发先一些创新性的点主要是因为没有被一些专业的知识陷入为主。这样才会更容易产生一些创新的点的想法
答:我认为没有确切的答案,对于创新,两者都很重要,但是我认为做重要的是思想上的创新,我们可以用技术上的创新来辅助完成我们的思想上的想法。
1、如果一直在一个领域学习,但是一直没有进展,或者一直没有产生兴趣,那应该继续学习或者继续坚持吗?
2、如何能够有效快速增长自己的技术?在学习中如何使自己能够一直保持一种积极乐观的态度去学习和增长自己的技术?
3、学习了分析详细设计、概要设计和需求分析等。
201731082408+肖莉
1、书中第六章第一节提到了敏捷流程的简介,总共有四步,每一步都不可缺少,看上去十分简洁完美,但其中也存在着一些问题,书中第二节也提出了每一步流程中的问题与一些解法,对此,我还想问:在流程的第三步冲刺阶段,怎样才能确保每日立会高质量的进行?或者还有别的形式能代替每日立会更好的提高工作效率吗?
3、书中第十一章第五节第235页提到了每日构建,并以盖楼房为例阐述了软件构建的重要性,书中说:“不会做构建程序员,就像不会搭手脚架的小工。。。”,对于构建的具体含义我还不是很清楚。
答:我很同意管理专家的建议,团队人数应视具体的工作需要而定,老师上课时也提到,团队人数过多会增加协调成本(呈级数增加的成员连结),通过网上查阅我看到了这个公式:,这个公式表现了团队成员间的关系是如何增加的,我试着用了几个数字带进去计算了几次,发现人数增多确实能提高团队整体工作效率,但增长率却逐渐降低。
201731062534+肖磊
问题:我当时认不清楚何为软件工程,头脑里只有模糊的概念即:软程=程序+软件工程。当时所提出的问题也是针对邹欣老师所著《构建之法》这本书中不明了的问题,并没有建设性的问题,现在回想起来稍微有趣一点的问题是“那些互联网商业巨头例如Amazon,Google,Microsoft等等是否能创立许许多多类似的“软件作坊”去创立新的东西,加之自身庞大的资源及商业背景就能够很好地将这些成功的创新或者颠覆性技术推广出去产生更大的效益。”现在看来这些商业巨头确实有许许多多的“小作坊”
1.第十六章中提到了很多经典案例,其中索尼公司的另辟蹊径获得成功和Nokia由巅峰迅速衰败,我不由提出一个问题,到底怎样才是创新,怎样又是投机呢?如何最大程度的分辨真正的创新和虚幻的泡沫,也许我所一直坚持的方向,终点等待我们的却是一条严严实实的死胡同。
答:不管是投机还是创新,都是跟随形势而变化的,无论投机还是创新都需要强大的技术支持,只要是这种技术是正面的,确实对人类进步有好处的,那么这都是一种突破,这个时代正式需要这种弄潮儿。
2.第二章中介绍了软件工程师度量模型PSP,它根据很多方面综合评价一名软件工程师是否合格,但是,从个人能力以及效率上来看,这个人可能是合格的,但是做出来的东西是否会被用户认同,以及这名工程师个人能力优秀,但是在团队中有扮演什么样的角色呢?会不会出现个人能力很强,但是却破坏团队的情况呢?
答:个人能力模型在团队任务中是否仍然具有意义。这个答案在书里提到过:团队的成员应该少而精。个人能力在团队表现中也同样重要,因为软件工程不是传统工业,人多力量大的道理在软件工程中不是那么适用,团队成员个人的能力越强对整个团队是由很大的积极作用的。
3.第三章第五节说到了学习区,书上提到很多人学了一些皮毛就想追求最深层次的问题,最终胡因为没有能力,心理准备也不够,从而导致“拖延症”此类现象的产生,我觉得我们现在很多人真的是这样,包括我自己都有过类似的经历,但是,如何根据书中所提构建适合自己的学习区并且慢慢的将学习区变成自己的舒适区呢?
答:我身边很多同学都有的问题——习惯问题,因为软件工程确实是一门有难度的学科,学起来很吃力,但是经过自身努力,也在逐渐挣扎出舒适区,去学习自己不会的东西,并且改掉晚起的毛病,只有坚持才能穿键出自己新的舒适区。
4.第164页,需求分析这一章节,感性决定勾起了我的好奇心,当我们被分配去干某个任务的时候,我们可能真的是下意识的觉得,既然分配到我了,那么我就去做,但是分配到某个人这件事情是如何决定的呢,现代软件工程中,成本是很重要的一部分,人力又是其中很重要的组成,那么如何分配可以讲礼仪最大化,成本最小化呢?真的是理性决定的吗?
答::同样在书中我找到了答案,团队中最差的那一个人决定了团队的下限,团队中应尽量减少这种人的存在,保证每一个人都能应对各种问题,精简人力成本。
5.第六章,敏捷流程,为何是敏捷流程,而不是优化流程,在敏捷流程中那些点体现了与优化流程的不同?
答:敏捷流程表现了它的特点——灵活,敏捷流程是以用户的需求为核心不断迭代的过程,可以适应工作中遇到的变化,更加灵活,二优化过程没有这种特性。