通读《构建之法》
通读《构建之法》
一,表示个人观点:每个人的个人观点不一样,思想不一样,但问题很多总有十万个为什么,我不敢说自己问题问的有什么高深之处,说不定很脑残,不会写,不会提问,感觉自己只有在遇到实在问题,才可能诱发出一系列的问题,一系列的观点,下面的观点并不是我个人观点,而是在网上看看个个博主的观点,感觉赞成他们的提出的问题,虽然这有些不对,但实在感觉提出的问题,和别人的有点大相近同。
二,问题很多,就像只要有人想问,就会引发一系列的问题,就像十万个为什么,站在不同的角度有不用的解决方法。
问题:
1.软件的开发的有许多种,怎么去衡量一个开发流程是否符合当前项目/团队合适?(《构建之法》第6章)
2.为什么一定要用敏捷的思想,如果敏捷的思想,一旦中间有一个人拖累进度,出现了问题,导致最后研发不正确该怎么处理?(《构建之法》第7章)
3.为什么不用按照每个人对这个项目的技术强弱制定一个计划,并不是每个人的能力都很强,然后再分配?(《构建之法》第7章)
4.MSF和敏捷那个方法更加好适应团队和项目?(《构建之法》第6.7章观看完每个想法提出的)
1.软件工程师与程序员有什么区别?
我的看法:因为高级工程师在软件开发方面的经验,还有对各个领域的知识与经验都还没有掌握,不仅新入门的程序质对代码的熟炼度以及项目的流程熟练度不够,而且写出的代码的质量也不够,程序员也是一步步地向软件工程师,在自个项目实战中积累经验、才能走软件工程师的道路。刚入职的程序员缺少团队合作的意识和高级工程师的团队合作是有区别的。我在《构建之法》这本书中也看到了关于工程师与程质的区别是关于代码的规范程度,说明程序员和软件工程师在这一方面也是区别的。
2.用户体验需要注意哪些方面?
1.操作的连续性,当用户为了完成某一任务而需要经过一系列操作时,系统应该尽量避免出现任何打扰用户行为出现,就算出于其他需要,也必须保证任务可以继续顺利完成。
2、在软件功能模块及操作命名上要尽量通俗易懂,软件界面要保持统一。
3、操作简便,易于上手。
4、拥有良好的用户引导,可使用户对当前操作的过程和结果产生心理预期,从而避免由于系统操作时间过长、流程复杂等因素,导致用户失去耐心而放弃当前操作。
3.IT人的职业道德包含哪些?
答:我觉得创新应该是职业道德的一部分,而且应该占到很大的比重,抄袭本身就是道德的缺失,我们不能说把不侵犯别人的隐私,保护国家或者公司的机密当做计算机行业道德的全部,发掘自身的优势和特色,可以说这是一份责任,跟随只会停滞不前。关于职业道德在保护个人隐私这方面,计算机领域现在完全是两大对立势力,病毒制造者和杀毒软件制造者,但后者明显表现的有些力不从心,现在病毒产生的速度确实是太快了,已经走在杀毒软件的前面,杀毒软件现在只是在疲于跟随,所以现在才会提出“云安全”这个概念,因为杀毒软件制造者已经受够了被人领着跑的日子了,所以开始发动群众的力量,可能也是借鉴了历史,革命要想成功就必须发动群众的力量。
4.程序的功能设计应该遵循哪些原则?
答:
1、必须要有先进的技术和标准。
2、以功能实用性为主导思想,开发实现整个规范建设需要展示的内容,实现按照信息发布机制管理,满足展示和管理的实用性。
3 、开放性和可扩展性,满足将来不断提升的信息系统建设需求。
4 以安全性为设计要求,系统设计充分考虑"安全性"。因系统投入后将长期使用,必须保证系统长期正常稳定的运行。采用有效的技术实现方式提高安全系数。
5.软件团队存在哪些角色?
1、管理角色包含项目经理、配置经理、部署经理等。
2、分析角色包含业务过程分析设计、统计分析、需求分析
3、开发角色包含软件结构师、设计员、界面设计、数据库设计人员、实现人员等。
4、测试角色包含测试分析与测试设计人员等。
5、制造与支持角色。
反问:
1.第6章敏捷流程中讲的敏捷流程效率高,但我感觉这只适用于小团队,人少才好管理,如果很多人的团队,能否再用敏捷流程?会不会加大工作难度适得其反?
2.需求分析是一个项目的开端,对于我们现在接触的项目大部分需求都是老师给我们的任务,那么我们是不是同样需要进行需求的分析?
3.对于软件测试书中也只是概述了整体的测试方法,比如黑盒/白盒之类的,想要具体的通过实例了解测试,毕竟按照书中所说,测试是很好融入团队的开始,这部分技能很重要,该怎样提高?
4.软件工程的开发过程中的团队模式和开发流程,其中书中重点讲述的是敏捷流程,学习之后我觉得这样的开发流程比较高效,那他是否是最优的呢?还是说没有最优只有最实用的开发流程?