8th 对软件工程的理解(读构建之法有感)
对于任何一个学计算机的人来说,软件都不陌生,甚至于一个普通的朝九晚五的上班族,他的每日生活工作也都与软件有着密不可分的关系。然而,程序又是如何从一行行指尖留下的代码,机器存储的数据变成快捷高效的软件的呢?这中间我们所经历的一系列过程的总和,我们称之为软件工程。
从本科开始学习计算机,我们就不可避免的接触了形形色色的软件,了解大量的软件开发工具,我那个时候甚至没有软件工程这个概念,只认为,我们所用的软件就是开发工具编译、执行、包装、发布的产物。后来,开设了软件工程这门课程,才开始系统地接受软件工程方面的教育,然而,教科书太过死板,给我们的印象中大多留下的是一个个生涩的概念和工程的流程图。直到接触了构建之法,我才真正理解了什么是软件工程,软件经过了怎样的流程来到用户的手中并为其服务的。
构建之法这本书写得生动且贴进实际,对相关的定义有其独特的阐释,让我们更为了解软件工程,就比方说,书中对软件这一名词的定义:软件 = 程序 + 软件工程,这很直观地表示了软件的两个方面:一个是软件的载体,是程序;另一个是软件形成手段工具,软件工程。倘若你到传统的教科书中去寻找,或是临时为了考试而抱佛脚而百度,可能得到的答案是这样,软件:与硬件相对,是一系列按照特定顺序组织的计算机数据和指令的集合(见百度百科)。这个定义好高大上,从硬件本质的基础上来解释什么叫软件,然而会令刚入门的一头雾水。笔者对软件开发的不同阶段的介绍也很风趣,使用飞机行业的发展来类比软件产业的前进,既简明贴切,又让人茅塞顿开。笔者在书中也多次提及曾经的工作经历用以佐证:比如笔者用他二十多年的从业经历中所见过的软件项目的特点和目的来证明计算机科学与软件工程是密切相关的两个部分。
作者对于软件工程的定义是:把系统的、有序的、可量化的方法应用到软件的开发、运营、和维护上的过程。介绍了软件工程所包含的领域:软件需求分析、软件设计、软件构建、软件测试、软件维护,并从工程的角度去理解软件工程,即设计和建造的过程中涉及大量的计算、计划、各类角色的协作,以及成千上百的人、动物、机械经年累月的劳作。也用实例来描述软件工程的目标:用户满意度高、可靠性强、软件流程质量高、可维护性强。先是从个人角度来讲,通过个人的锻炼成为合格的软件工程师,其中介绍了程序的单元测试、效能分析和个人软件开发的整个流程。之后从个人升级为结对编程,开始学会协作开发。最终在合作的过程中学会如何进行团队合作,开始参与一个团队来开发软件,进入真正的软件工程。书末介绍了很多有利于更好地推动软件工程的策略方法:比如敏捷流程、Scrum会议。
通过这本书,我对软件工程的理解由书本定义进入到实际应用,也因而对此有了更进一步的了解。
8th 对软件工程的理解(读构建之法有感)的更多相关文章
- 学习JAVAWEB第三十七天(读构建之法有感)
读<构建之法>有感 我今年暑假回去就要升入大二了,在今年的专业分流时,我选择了软件工程专业,起初的想法很简单,做一款优秀的,能拥有大量用户的软件,甚至还想通过自己的软件改变人们的生活.读了 ...
- 2nd 阅读构建之法有感
阅读构建之法有感 利用这一周的时间,我大致了解构建之法一书,这本书带我走进了一个全新的领域.它让我以一种新的视角去了解软件产业的发展和工作,领略软件工程的独特魅力,更给出了简单易懂的方式去理解何为软件 ...
- 201771030115-牛莉梅 实验一 软件工程准备-<初学《构建之法--现代软件工程》的疑问>
项目 内容 课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/nwnu2020SE 这个作业要求链接 https://www.cnblogs.com/nwnu- ...
- 201771010128王玉兰实验一软件工程准备——<阅读《构建之法——现代软件工程》初步了解软件工程>
|||||||||||||| |:--|:--| |项目|内容| |软件工程|https://www.cnblogs.com/nwnu-daizh/| |作业要求在博客里|https://www.cn ...
- week1读构建之法-读书笔记
最开始听见杨老师说邹欣老师这个名字总觉得很熟悉,后来看见博客上老师的头像恍然大悟,原来机缘巧合已经在微博上关注邹老师许久,一直觉得邹老师是个很有意思的人,兴趣一定十分广泛,看了老师的书确实能感觉到邹老 ...
- 201771010111-李瑞红 实验一 软件工程准备-<构建之法-现代软件工程-基础认识和理解>
|||||||| | :--
- 201771030106-葛佳诚 实验一 软件工程准备-<初读《构建之法——现代软件工程》有问>
项目 内容 课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/nwnu2020SE 作业要求链接 https://www.cnblogs.com/nwnu-da ...
- 读着读着《构建之法》(Build To Win) 越精神的白雪儿的思考
哲学家的宗旨是:我思,故我在 科学家的宗旨是:我发现,故我在 工程师的宗旨是:我构建,故我在 ——<工程学--无尽的前沿> 序言:珍惜角色“人”,注重实践“物” <构建之法>, ...
- 201771010135-杨蓉庆 实验一 软件工程准备—用Markdown写构建之法
项目 内容 软件工程 https://www.cnblogs.com/nwnu-daizh 博客园 https://www.cnblogs.com/nwnu-daizh/p/12369881.h ...
随机推荐
- 20155236范晨歌 Exp2后门原理与实践
## 实验二 后门原理与实践 1.Windows获得Linux Shell 在windows下,打开CMD,使用ipconfig指令查看本机IP ncat.exe -l -p 5236监听本机的523 ...
- 【转载】COM 组件设计与应用(十七)——持续性
原文:http://vckbase.com/index.php/wv/1264.html 一.前言 我们写程序,经常需要实现这样的需求: 例一.程序运行产生一个窗口,用户关闭的时候需要记录窗口的位置, ...
- HTML5新增核心工具——本地存储
除了Canvas元素外,HMTL5另外一个新增的非常重要的功能是可以在客户端本地存储数据库的Web Storage.本文就介绍下Web Storage以及SQLLite操作. Web Storage分 ...
- Jmeter(二十一)_完整Demo
1:创建一个线程组 2:添加一个cookie管理器 3:设置你的信息头管理器:application/json;text/plain;charset=UTF-8 44 4:添加一个用户 ...
- 【Python Learning第一篇】Linux命令学习及Vim命令的使用
学了两天,终于把基本命令学完了,掌握以后可以当半个程序员了♪(^∇^*) 此文是一篇备忘录或者查询笔记,如果哪位大佬看上了并且非常嫌弃的话,还请大佬不吝赐教,多多包涵 以下是我上课做的一些笔记,非常的 ...
- @RestController注解
@RestController注解其实就是@@Controller和@ResponseBody的组合:RESTFUL风格 看下源码: 当@ResponseBody放到Controller类上,改Con ...
- CentOS查看一共安装了多少软件包,是那些软件包
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/48292853 一.如何得知共安装了多少个软件包 [root@localhost ~ ...
- dstat 性能测试工具常用选项
dstat常用的选项有: -c 显示cpu使用情况 -d 显示磁盘使用情况 -g, 显示页面数据 -i 启用中断数据 -l 平均负载统计(1分钟,5分钟,1 ...
- centos7以上安装python3,一条命令搞定。
直接复制下面的命令就搞定 yum install python34 python34-pip python34-setuptools 使用方法: python3 ---.py pip3 install ...
- SparkRDD编程实战
通过spark实现点击流日志分析案例 1. 访问的pv package cn.itcast import org.apache.spark.rdd.RDD import org.apache.spar ...