201571030116 初读《构建之法》
新学期伊始,有幸在大学的看课堂里第一次接触到这么别具一格的教学方法,之前所学专业课知道了:软件=程序+软件工程,但是侧重点更多的是在程序,至于软件工程到底是什么,并没有深究。经过老师第一周课堂的概论讲解和自己私下里对老师推荐的这本《构建之法》大概的阅读之后,我对“软件工程”这个概念有了更具体、更深入的认识。之前总是认为:代码大于天。编程才是软件里最重要的一步,但是经过这两周的研究学习,我发现除了编程之外还有更为重要的很多环节才能构成一个真正的软件。比如:用户需求分析、团队合作、用户体验、质量保障等之前从来没有考虑过的因素。
这本书中,我个人比较感兴趣的方面在于:用户需求分析、用户体验、团队的分工合作等。因为现代社会各种新奇的软件层出不穷,但是质量却是参差不齐。究其原因除了程序的稳定性不高之外,还有就是设计软件之初对于软件设计这一块有缺陷。比如大家比较常用的游戏软件,经常会有身边人吐槽某某游戏体验极差这种话。我对于游戏软件的初步印象还是《微微一笑很倾城》里面肖奈团队做的“新倩女幽魂”手游的开发。结合这门课所学的知识,突然发现很多方面都似乎对的上,也值得深究。比如团队作业中分的:程序员组、美工组、办公组、测试组等,都与这本书中所提到的知识有所关联,这更增加了我对这门课程的兴趣。
写了这么多废话铺垫,但是对于现在这个水平的我自己来说能提出来的问题还是比较幼稚和浅薄的,希望能在以后的学习过程中加深内涵,真正学到精髓。目前初步找出了5个我比较疑惑并且感兴趣的问题。如下:
问题1:需求分析都需要运用到哪些手段;需求分析要经过哪些步骤,才能做出跟同类竞争软件相比用户不会直接要求但是上市之后用户确实需要的软件。
问题来源:p157 写到:例如:没有用户说“我希望有一个偷菜的软件,我可以偷别人家的菜”。但是,成功的团队还是可以从“用户需要和朋友玩游戏,用户有证明自己能力的需求”这些角度出发发掘需求。
P168 写到:在互联网时代,一个软件团队有很多机会做出影响世界的产品,但是似乎所有想法都被别人想到过了,做出来了......那么后来的团队除了羡慕别人生的早,还有什么办发呢?
问题2:软件团队各种模式的优劣性、如何选择合适的团队模式、如何避免在软件开发的各个过程中各个阶段的“吵架”问题?
问题来源:第5章中提到的各种团队作业的模式和各种团队作业的优缺点
问题3:用户体验的评价标准到底是什么?怎样的软件才能算得上是用户体验良好的软件,需要具备些什么样的特性?
问题来源:书中第12章举的几个用户体验的例子。书中的例子典型、写实。真实的反应了影响用户体验的多方面因素。虽然书中一一给出了解决方案和答案,但是这还是一个需要探究的问题
问题4:软件测试的各种测试方法。相对来说比较感兴趣的是:场景/集成/系统测试。测试应该是在什么阶段开始?是越早越好么?软件中各个不同模块的测试方法有什么异同吗?
问题来源:p288 应该在什么时候做集成测试?是不是越早越好。
虽然书中已经给了解答,但是了解的还不是很深入
问题5:IT行业创新的困境、鸿沟和机遇
问题来源:本书的第16章具体论述了最近几年社会上兴起的“创新”浪潮,关于“创新”也是从进大学之后时刻都会听到的词。但是到底应该从何入手,怎么作为一个“冒险家”能够冒险成功.....都是我们应该认真思考的问题。