阅读《现代软件工程—构建之法》提出的问题
阅读《现代软件工程—构建之法》提出的问题
三个问题
- 状态:
读完第一章 - 实验要求: 实验一作业要求
- 问题一+问题二.
- 《构建之法》P16
有实际用处的同时又是完美的软件,在世界上是不存在的。没有实际用处的完美软件也几乎没有,有人会说“Hello World!”是的程序似乎可以称为“完美”,但是根据前文对“软件”的定义,我们不知道这个程序能不能算作一个软件。那市面上有那么多不完美的产品,软件团队为什么还要把这些不完美的软件发布出来呢?为什么不能等到它们完美之后再发布?软件工程的一个重要任务,就是要决定一个软件在什么时候能够“足够好”,可以发布。
-- 引用自《[构建之法](https://book.douban.com/subject/25965995/)》
- 问题一:关于“为什么不能等到它们完美之后再发布”这个问题,我觉得可能是因为把一个可能还不够完美的软件发布出去,会有很多声音,有赞扬有批评,而从批评声中必不可少会有建议和指出的问题,而这些就相当于很多很多的测试人员,在一起参与改进这个软件。而且一千个人里有一千个哈姆雷特,就算已经有100个开发者认为这个软件已经改不出问题,也总会有101个人发现问题或者想出更好的方法,如果要十全十美再发布,不可能实现。
- 问题二:既然有用又完美的软件不可能存在,那在开发过程中这个“足够好到可以发布”的程度应该怎么判断。在现在熟知比较出名的软件也在不停地进行升级,很多问题在用户使用过程中,才会一点点被发现,一点点被解决,很多功能也是在用户使用之后觉得差点什么,通过建议或者各种途径让该软件的开发部门得以创造,更新软件功能。那这些软件被发布之前,是被怎样判断它已经可以发布的?
- 问题三.
- 《构建之法》P15
- 问题三:关于bug,有些bug能够发现软件可以变好的功能,而有些bug确实致命性,甚至需要将整个软件推倒重来,而15页第一段说软件工程是消灭bug的过程,那完美的软件不会存在,是否意味着不存在0bug的软件,只有还没发现bug的软件?
- 《构建之法》P15