201771030111-刘维 实验一 软件工程准备一<读《现代软件工程-构建之法》有问>

项目 内容
班级博客 https://edu.cnblogs.com/campus/xbsf/nwnu2020SE
作业链接 https://www.cnblogs.com/nwnu-daizh/p/12369881.html
学习目标 了解并掌握软件工程的相关知识及其应用
作业目标 通读《构建之法》,初步了解软件工程
参考文献 [1]邹欣.构建之法——现代软件工程:现代软件工程[M].人民邮电出版社,2014

遇到的问题

  • 问题一:在1.2.4中这样说道,软件工程就是把软件中的bug都消灭的过程。我通过差资料发现消灭bug的唯一方法就是“no code, no bug",当然,这是网友对于消灭bug这件事情的一种调侃。但另一方面也似乎说明了这世界上没有0bug的软件,至少暂时没有。那么对于软件工程的目标来说,消灭bug到什么程度才算是软件工程的成功?

  • 问题二:在第11.4节中,有下面这样一段话 “写好代码后,小飞对照设计文档和代码指南进行自我复审,重构代码。” 我对于“代码重构”不是很清楚。
    百度词条给出的解释是,通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。网络上查到的资料也大同小异,资料中都在强调重构的好处,而重构在“软件系统的过程,它不会改变代码的外部行为,同时改善其内部结构。这是一种严格的清理代码的方法,它可以最大限度地减少引入错误的可能性。本质上, 当重构代码时, 是在编写代码之后改进它的设计”。但是我对于具体的情况依然不是很理解,重构是对于旧的架构进行修改,来满足新的需求,那如果要大面积的修改,采取重构有效还是重写有效?何时应该进行重构呢?

  • 问题三:好的用户体验当然是所有人都想要的,如果它和产品的质量有冲突,怎么办?牺牲质量去追求用户体验么,用户能接受吗?
    在读第12章时,P269页的最下面出现了上述问题。确实,在开发软件时或者是更新软件时,难免会遇到上述的情况。如果用户的需求,用户的体验和我们的优化的功能或者软件起冲突了,那么我们是该顾着用户的需求呢,还是继续推出优化软件?作者在这段话后面引用了一个案例来说明了作者自己的答案,但是似乎不能使我完全信服,实际上并不是所有的情况都可以是顾用户的需求,舍功能的优化的。并且当两者利弊都差不多时,我们该怎么选择呢?是否能有个准则来让我们衡量呢?

你可能感兴趣的:(201771030111-刘维 实验一 软件工程准备一<读《现代软件工程-构建之法》有问>)