2020-02-23

岁酱吖の 提交于 2020-02-24 04:20:17

读《软件工程实践者的研究方法》

随着互联网时代的兴起,不仅人与人之间的距离被拉近,世界也因此变得触手可及,在这样一个大环境里,软件承担着十分重要的角色,作为一名还在学习阶段的准软件开发者,有幸阅读了这本书。
一款好的软件必定能经过实践的考验,但是要开发出一款好的软件也是不容易的一件事,正如书中所言,软件是设计开发的,不是传统意义上生产制造的,这就使得软件开发要以不同于传统的方法去打造它,其工程包含过程,方法和工具。
软件过程框架里定义了五种框架活动–沟通、策划、建模、构建以及部署。我想,这一系列的过程缺一不可,通过这些过程的逐步拓展与修正,是保证软件整体可靠性的重要方法。软件项目确定,首先就会遇到一个难点,即当问题回归本源,我们要学习的是需求分析,也就是为什么要开发软件,作为开发过程中最难的部分,简单的照搬照抄是不可取的,需求工程的应用使得需求分析的理解更加全面,在设计和构造之间建立起联系的桥梁,需求建模使得开发过程更加清晰,结构化分析,UML和统一过程等等。不同于传统的制造业,设计的实物可以直观的感受,而软件的设计,更偏向于虚拟化,简单来说,也就是一款设计得出色的软件,拥有更好的体验,更高的效率和更方便的维护,因此,使代码的逻辑合理化,过程尽量简单化,是开发者应该具备的能力,而且开发者也应该能看出代码的质量。此外,好的设计不仅体现在一行行代码中,与用户交互界面的设计也十分重要,毕竟软件是给大部分普通用户使用的,界面的美观,操作逻辑的合理性,用户的学习成本等等,都直接关系到用户的使用体验,如果本该方便用户,提高工作效率的工具,反而成为了负担,也就意味着这是失败品了,所以不论是专业领域的软件,还是普通软件,都要遵守用户界面设计的一些基本原则,因此对于前端工程师来说,具有一定的审美能力显得尤为重要,这似乎与理工男,程序员这类群体又有些矛盾,或许女生在前端开发会更有优势。
软件在开发完成后,涉及到质量问题,软件测试与质量是评估软件的方法和标准,通过大量的模拟和预设,将软件可能会涉及的场景和问题,一一列出测试,保证软件在后来的实际使用中不会出现问题,专业的用例测试技术例如白盒测试和黑盒测试,是非常普遍的方法,这些只是通过模拟的方法,把视角从开发者转移到用户中去,其实,测试是永无止境的,谁也不能保证交付的软件不会出现问题,这就使得很多软件会提供测试版给用户提前使用,用户在实际使用中进行反馈,是直接且高效的途径。软件后期的维护成本也十分昂贵,软件开发者从一开始就应该本着方便后期维护的原则进行部署,此外,软件开发人员的变动,也会给下一任的维护带来障碍,这些普遍而难以解决的问题,应该提醒越来越多的程序员,共同做好开发规范的重要性和必要性。
随着计算机,手机等硬件的普及,使得软件的使用更加频繁,软件已经成为了大多数人生活的一部分,软件使交流更加方便,使信息更加及时,使工作效率更高。正如书本开头提及的“软件真的死了吗?”当我们更深的走进21世纪,会发现,软件本身不仅没有死,随着新一代开发者的不断努力,软件仍然会在更广阔的领域继续发展。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!