初学软件工程
作者:互联网
怎么学好软件工程?
(1)首先必须了解一下软件工程的道、术、器
“器”就是软件工程中的各种工具。
“术”就是软件工程中的各种方法。例如如何做需求分析?如何对需求变更做变更管理?
“道”就是软件工程知识的核心思想、本质规律。例如为什么要有需求分析?需求变更产生的深层次原因是什么?项目中决策的依据是什么?
(2)何为工具?何为方法?何为过程?
1️⃣ 什么是过程?
要构建高质量软件,则要解决软件过程中的混乱,将软件开发过程中的沟通、计划、建模、构建和部署等活动有效地组织起来。而软件过程,就是在软件项目的生命周期内,也就是软件从诞生到结束这期间,在开发与构建系统时要遵循的步骤。
有两种过程框架你一定经常听到,那就是瀑布模型和敏捷开发。这是在软件工程多年的发展中,逐步形成的两种主流的软件过程指导框架。
2️⃣ 什么是方法?
方法是指在整个过程中,如何构建系统的方法学。比如说,如何分析用户需求;如何对产品进行测试验收;如何进行系统架构设计等。
3️⃣ 什么是工具?
知道了过程,掌握了方法,那么具体落到操作层面,就会涉及到工具的使用。
我们需要工具来辅助方法的执行,提高效率。通过工具,可以把一些手动的工作自动化,比如自动化测试工具,自动构建部署工具;通过工具,可以帮助把一些流程规范起来,比如 Bug 跟踪、源代码管理;还可以通过工具,帮助提高编码效率,比如各种编辑器 IDE、各种高级语言。
如果现在再回头总结一下,软件工程的核心知识点,就是围绕软件开发过程,产生的方法学和工具。
你可以用一个简单的公式来理解软件工程,那就是:软件工程 = 工具 + 方法 + 过程。
如何学习软件工程?
学习软件工程的四重境界
第一重:用器
“器”就是工具,工具规则简单,上手就可以用,也很快就能看到效果。比如,原型设计工具可以帮助你确定需求,持续集成工具可以帮助你简化测试和部署的流程。对工具的学习是最为简单的,也是最基础的。
第二重:学术
“术”就是方法,学会方法,你就能应用方法去完成一个任务,例如用需求分析的方法,你去搞清楚用户想要什么,用 Scrum 去组织项目开发过程。
掌握了术,甚至是可以脱离器的,例如你没用原型设计工具,你用纸和笔,用白板,一样可以去沟通确认需求。
第三重:悟道
“道”就是本源,软件工程知识的核心思想和本质规律。就像敏捷开发,本身并不是一种方法,而是一套价值观和原则,领悟了这个道,就可以成为你在处理项目过程中各种问题决策的依据。道是可以产生术的,你掌握了敏捷开发的道,你就可以领悟出 Scrum、极限编程这样的术。
第四重: 传道
当你能把复杂的知识通过浅显易懂的方式传授给别人,那就说明你对知识的领悟已经到了更高的境界。同时,教学也是最好的学习方式,通过传授别人知识,可以让你对知识本身有更深入的理解。
分享你学到的知识。将你从专栏学习到的知识写成微博或博客等,分享给大家。写作是一种特别好的总结和学习方式,在你写的过程中,很多不清楚的问题就想明白了。
做几次内部分享或培训。如果你从来没做过公司内部的分享或培训,不妨迈出第一步,把你学到的知识,写成 PPT,小范围地讲给你的同事或朋友。如果你已经做过类似的分享,那么就再做几次软件工程相关的。准备 PPT 的过程,就是你最好的学习过程。
把你学习的知识应用起来。学到的知识只有用起来才能变成你自己的经验,尝试着把在专栏中学到的知识应用到你的项目中去。多问多思考。有疑问就提出来;看到其他人问的问题,也可以去思考为什么,一起探讨问题的答案。
参考:极客时间-软件工程之美
标签:知识,过程,可以,初学,软件工程,工具,方法 来源: https://www.cnblogs.com/Zbj-Public/p/16201554.html