第一章:概论

本章主要是讲了软件工程的基本概念,软件工程的最终目标是创造“足够好”的软件。

提出问题:什么是BUG?(出自1.2.5节)

答:就我个人而言,在许多游戏中也有许多的BUG,BUG这一词在网络游戏中属于高频率的词,中文意思就是“漏洞”,在游戏中这些BUG漏洞往往会带来给玩家很大的伤害,会造成游戏的不公平,游戏也是个大型的软件,所以一个游戏每个星期几乎都会进行维护更新,主要就是修复这些游戏里的BUG。而书中所说,BUG,简单地说是软件的行为和用户的期望值不一样,就叫BUG。通俗易懂,BUG会在一次次测试中出现,一个程序它可能是一个人写出来的,也可能是一个团队,或是更大的团队,即使如此,但当他投入市场给用户使用时,面对的就是更大的群体。人各自有各自的想法,在使用你的软件时就会有不一样的看法,就会产生BUG,所以我们编写软件的人或团队,要虚心地收集用户们的BUG,最后让做的软件更加地接近于用户的满意值,这样的软件才能做的长久。

第二章:个人技术和流程

提出问题:什么是单元测试?(出自2.1.1节)

答:在我看来,测试是一个软件必不可少的环节,而单元测试我初步理解是设置一个适用于“一个问题”的测试方法,即这个方法适用于你输入各种数据,测试是否符合标准。我曾在深圳一家外企“昱科环球”里做过一个多月的暑假工,在里面我是做操作员。这个公司是做计算机硬件的公司,主要是做存储数据的碟片(西部数据),而操作员也有着很多不同的分工,一个空磁片要经过拆封,清洗,润油,打磨,紫外线照射,测试,包装。每个环节都需要学习了相应知识的操作员,而我恰好被分配到了测试的环节,其中测试的环节是最为重要的,这决定了一个磁片是否能达到正常的指标才能包装销售。每个操作员都要经过一个星期的学习进行考核后才能有资格进行操作。在测试环节中是一台台机器在进行测试碟片,整个无尘操作间几乎90%以上是机器在运转,当然机器也是人做的,每台机器都有两台电脑,每个进来的碟片都要进过物理测试(Glad)和性能测试(Mag),符合规定的指标才能出厂。我认为每台机器就像是个单元测试。而我觉得软件的单元测试虽然没有这么大型的机器,但性质是差不多的。

在百度上找到了官方的定义如下:

单元测试是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为。例如,你可能把一个很大的值放入一个有序list 中去,然后确认该值出现在list 的尾部。或者,你可能会从字符串中删除匹配某种模式的字符,然后确认字符串确实不再包含这些字符了。

第三章:软件工程师的成长

提出问题:现在的我具备了一个软件工程师的能力了吗?(出自3.1节)

答:衡量自己的能力是成长非常重要的过程,人要有自知知名“知己知彼方能百战百胜”。现在的我若像书中扭魔方的例子,觉得自己还在第一层,还在基础层,现在的我基础还不是很牢固,所以要更加努力地打好基础,为以后人生的道路做好铺垫。所以,现在的我显然是还不具备一个软件工程师德能力的。

第四章:两人合作

提出问题:如何在两人合作中提高工作效率?(出自4.6节)

答:在练习二中,我与我的小伙伴进行了结对编程,收获了挺多。一开始,两人要提出各自的看法,互相尊重对方的建议,写出初步的方案(像书中的萌芽阶段);之后在写代码的过程中会出现意见分歧,要控制好自己的情绪,把各自的意见进行比较,或者结合两人的意见提出新的思路(像书中的磨合阶段)。最后在程序敲完之后会要进行测试,一些代码格式的规范,漏洞问题,或是新的idea,都可以在这一阶段加入进去(规范阶段),最后完成程序(创造阶段)。做好这四个环节,我相信能很有效地提高两人合作的工作效率。在两人合作的过程中,我很享受其中的过程,乐在其中。所以,有个好心态去做事情也是不错的。

第五章:团队和流程

提出问题:团队软件开发是用什么模式好呢?(出自5.2节)

答:书中提供了很多模式,有窝蜂模式,主治医师模式,明星模式,社区模式,业余剧团模式,秘密团队,特工团队,交响乐模式,爵士乐模式,功能团队模式,官僚模式等等。那么多的模式让我很困惑,如何选择相应的模式才能使团队开发顺利的进行呢?他们在不同的模式中又是如何分工的呢?

Practice3 阅读《构建之法》1-5章的更多相关文章

  1. 20150409作业3 阅读《构建之法》1-5章 (Update:2015-04-16

    以下是我看<构建之法>1-5章列出来的知识点和一些自己对部分知识的理解以及一些吐槽...和感受 1.1 软件 = 程序 + 软件工程 (软件工程 = 软件 - 程序(我知道软件是什么,也知 ...

  2. 2nd 阅读构建之法有感

    阅读构建之法有感 利用这一周的时间,我大致了解构建之法一书,这本书带我走进了一个全新的领域.它让我以一种新的视角去了解软件产业的发展和工作,领略软件工程的独特魅力,更给出了简单易懂的方式去理解何为软件 ...

  3. <构建之法>第十三章到十七章有感以及这个项目读后感

    <构建之法>第十三章到十七章有感 第13章:软件测试方法有哪些? 主要讲了软件测试方法:要说有什么问题就是哪种效率最高? 第14章:质量保障 软件的质量指标是什么?怎么样能够提升软件的质量 ...

  4. 阅读<构建之法>第三10、11、12章并提出问题

    <构建之法>第10.11.12章 第10章: 问题:对我们了解了用户的需求后,但是我们想法和做出来的软件会和用户的需求有偏差,比如风格.界面的修饰等等,那么我们程序猿怎样才能让自己的想法更 ...

  5. Week2-作业一——《构建之法》三章精读之想

    Week2-作业一——精读<构建之法> 前言 其实我本人是不经常看书的,电子书倒是看了不少,实体书真的不经常看,但是为了这次作业的需求,我还是选择静下心来阅读一下这本<构建之法> ...

  6. SE_Work1_阅读构建之法&项目管理实践

    项目 内容 课程:北航-2020-春-软件工程 博客园班级博客 要求:阅读<构建之法>并回答问题 个人博客作业 我在这个课程的目标是 提升团队管理及合作能力,开发一项满意的工程项目 这个作 ...

  7. <构建之法>第十一章、十二章有感

    十一章:软件设计与实现 工作时要懂得平衡进度和质量.我一直有一个困扰:像我们团队这次做 男神女神配 社区交友网,我负责主页的设计及内容模块,有个队友负责网站的注册和登录模块,有个队友负责搜索模块,有个 ...

  8. c++生成算式并计算(《构建之法》第一章课后第一题)

    c++实现计算器(自动生成算式并计算) 要满足的需求有以下几个: 自动生成随机的四则运算算式,包含括号和小数. 对生成的算式计算出结果. 算式.结果分别存储到不同的文件. 一 生成算式 由上述需求可知 ...

  9. Practice4 阅读《构建之法》6-7章

    关于第五章后面的阅读已经在Practice3中有所感悟,下面是6-7章的读书笔记. 第6章 敏捷流程这一章讲了“敏捷流程”这一概念,关于这一名词我是很陌生的,在阅读之后有了一定的理解.敏捷流程是提供了 ...

随机推荐

  1. 阿里八八β阶段Scrum(2/5)

    今日进度 黄梅玲:尝试修复日程界面的不可点击问题 李嘉群:修改数据库,增加写入识别功能临时文本存入的项 张岳:信息抽取算法的编写 叶文滔:尝试侧边栏的信息调用,但因为侧边栏不是单独的活动,调用碰到了困 ...

  2. 浅析Java中的23种设计模式

    前言 设计模式不论是在我们学习编程,还是在工作和面试过程中,都会涉及到的一个问题,所以了解和学习好设计模式,是我们每一位码农必须要具备的技能,对以后的发展和自己技能的提升都有好处. 什么是设计模式(D ...

  3. 添加Nginx为系统服务(设置开机启动)

    在本节中,我们将创建一个脚本,将Nginx守护进程转换为实际的系统服务. 这有两个作用:守护程序可以使用标准命令控制,更重要的是,它可以在系统启动时自动启动,并在系统关闭时停止. System V s ...

  4. UVA127-"Accordian" Patience(模拟)

    Problem UVA127-"Accordian" Patience Accept:3260  Submit:16060 Time Limit: 3000 mSec Proble ...

  5. 注册OCX失败/ 找不到指定的模块

    错误信息:模块“*.OCX”加载失败,请确定二进制保存在指定的路径中,或者调试它以检查该二进制或相关的.dll文件是否有问题 对于电脑新手,关于OCX或DLL缺失是一件令人十分头疼的事,如果不幸遇到此 ...

  6. MySQL主从同步原理

    mysql主从复制用途 实时灾备,用于故障切换 读写分离,提供查询服务 备份,避免影响业务 主从部署必要条件 主库开启binlo日志(设置log-bin参数) 主从server-id不同 从库可以连同 ...

  7. MATLAB中的FOR循环问题

    做量化操作的时候经常需要使用到matlab编写策略或者计算多因子,for循环非常慢,自己找了一些matlab中for循环的优化方法,for的部分每处理一个大矩阵都要花费大量的时间,这是不可避免需要遇到 ...

  8. Web安全入门学习

    前言     最近在公司做Linux下的PHP开发,所以乘此机会学习了下Web安全,了解了常见的Web安全漏洞,以及对应的防御方法(使用DVWA进行学习). 暴力破解 场景     在类似用户登陆界面 ...

  9. java StringBuilder和StringBuffer 用法

    可变的字符串,兄弟关系StringBuilder:效率高,安全性低StringBuffer:效率低,安全性高 StringBuilder 的常用方法的使用,StringBuffer用法一样. publ ...

  10. <转>cookie和session的区别

    看到一篇讲cookie和session的文章,觉得蛮不错的,转载分享下... 原地址:http://www.lai18.com/content/407204.html?from=cancel cook ...