构建之法:现代软件工程——问题所见
快速浏览《构建之法:现代软件工程》这本教材后,提出的问题如下:
(1)IT专业的大学生毕业后转变为职场人员需要些什么?怎样做一个合格的软件工程师?
(2)本科期间软件工程学到的知识杂而多,很难让同学有个清晰全面的了解,而且很多东西都是课本上的,国内的
软件工程教育的优缺点是什么?
(3)研发出符合用户需求的软件系统是软件企业的首要目标,而需求来自于实际,对应于软件工程上即需求分析,
可需求千奇百怪,软件企业如何合理地行调研和选择?
(4)一个好的软件或系统要时刻关注用户的需求,并根据其改变做出相应的调整,拿天津大学的选课系统而言,每
次大家选完课对其都颇有微词,给同学比较差的用户体验,那么学校是很难考虑全面的,遇到这种情况软件企
业如何抉择,是根据"少数服从多数的原则"?
(5)代码风格规范和代码设计规范在做一个有商业价值的项目或者在团队里工作格外的重要,但现实生活中绝大多
数程序员有着自己的编码习惯,是每次参与一个新的团队或者做一个新的项目就要重新制定一遍规范吗?
(6)结对编程能给软件项目的开发工作带来好处,可是这些好处必须经过缜密的思考和计划才能真正体现出来,而
这肯定要花费一定的时间,另外远程结对编程也会导致协作的额外时延,那么在具体的实际应用场景中结对编
程的实施难度怎么评估?
(7)"强迫大学生写乏味和没有人读的文档,简直就是扼杀同学们对软件工程的兴趣",在软件公司来说,写文档对
程序员可能也是种折磨,这是由于一般文档都有复杂琐碎的规则,那么能否写出简洁明了而又生动有趣的文档?
(8)网站或手机APP的动画效果,经常会让用户有耳目一新的感觉,而好的游戏往往能够给用户良好的体验,可其
标准很难明确制定,能否量化?
(9)软件测试方法有很多种,开发软件的过程中是要一一使用这些方法进行测试吗?有些程序的bug发生的概率极
小,那么我们可不可以忽略它而不进行相应的测试?
(10)团队协作中未免会出现不做事的人甚至是不让别人做事的人,在学校可能这种情况会少些,但真正的职场不
乏其数,作为一个做事的人该如何对待心理 上出现的偏差?是言辞恳切地让他们做事,还是任劳任怨、大包
大揽的埋头苦干?