速读《现代软件工程----构建之法》有感

速读《现代软件工程----构建之法》有感

本学期我们将学习软件工程这门学科,在未学习之前,一直都认为软件工就是利用我们学过的高级语言编写应用程序。然而在大致浏览了《现代软件工程———构建之法》后。我对软件工程有了全新的认识。软件工程不在只是程序员一个人的工作任务。它需要团队协作;它需要用户反馈,程序员再根据用户需求对进行代码优化以及完善功能修补漏洞。需要结合硬件设备的工作性能,社会的需求性,研发成本等多项因素找到一个尽量合理尽量完美的平衡点。所涉及的也绝不仅是计算机一门学科的知识点。需要擅长多方面知识的人才相互协作,相互配合。在粗略的阅读完这本书后,我对此也有了以下几个问题。

  1. 怎样去平衡软件设计过程中各个部分?

   刚才也提到了软件的开发过程以及后来的维护都不是一个成员就可以完成的。需要多个成员负责不同的部分再进行整合。问题在于软件的开发过程中必定会出现变数,不管是用户需求发生改变,还是程序员的设计结果与原设想结果有偏差,都将会直接影响最后的结果,牵一发而动全身。所以需要一个人作为一个领导者,统领全局,让各个部分的成员能够更好的完成工作,但问题是各个方面都互相牵制互相影响。硬件设备,软件功能,所花人力,资金等因素相互制约影响。怎样去找到一个尽量完美的计划,目前还没有一个明确的方法指标。还需要我们继续探索。

        2.如何尽可能准确的满足用户需求?

   软件设计出来的目的不就是让用户用的满意吗。但如何让用户用的满意,准确的满足用户需求呢?不一样的人遇到不一样的事时对一个软件的需求必定不一样。设计程序如果减少了用户觉得无用的部分,更多的设计经常使用的部分。那样也会大大的挺高研究团队的绩效。对于如何最大化的满足用户需求,我觉得可以有以下两种方法。一个是利用大数据,在数据量足够大的情况下,更多的要求被提出来,那样也就可以尽最大的可能满足客户。另一点就是可以在软件运行后,增加客户反馈,让使用的客户去反馈他们的需求。开发人员再去优化整个软件。

     3.软件测试是否需要存在?

   软件的开发需要大量的人力物力财力,在一个软件历经千辛万苦设计完成后,还需要进行软件测试,而且参与软件测试的人员人数并不少。不由得让人疑问,软件测试是否可以取消?答案当然是不能的。参与设计的人员在软件使用过程中会自然而然的避开某些“雷区”,但是我们的用户不可以,他们不了解程序运行开发的过程自然没有办法避开,那么就需要软件测试人员通过各式各样的方式去测试软件,让软件变得更“健壮”,如何测试软件呢,那就是我们的第四个问题。

     4.什么是“黑箱”和“白箱”?

  “黑箱”和“白箱”是指测试设计的两种方法。“黑箱”是指在测试过程中将软件系统当作一个黑箱,无法了解内部的结构和知识;“白箱”则是在设计过程中可以看到内部的机构,并使用内部结构来测试软件。两种方法各有优点,并存使用就可以更好的测试软件,从而完善设计。

     5.怎样学好软件工程?

   对于一个学生来讲,如何能把一门课学好学懂学透,是最难的,软件工程是一门全新的学科同时也涉及了很多我们之前学过的内容,构建之法这本书将侧重点放到了软件开发的步骤过程上,让我们对软件工程有了一个初步的认识,但如何把这些学懂,还值得我们去摸索。

原文地址:https://www.cnblogs.com/yuan1229/p/8563063.html