《软件开发最佳实验》阅读笔记二

        随着对这本书的阅读,感触也越来越深  。随着社信息化京城的不断深入,计算机软件的需求越来越复杂,规模也越来越大。但软件危机问题提出了三十多年,至今仍无法很好的得到解决。究其原因,主要还是,主要是忽视了软件开发过程中的质量监控,以及在软件开发过程中,对需求的准确把握不能做到很好的定位。因此,这要求我们在这个过程中要准确把握需求的内容,并予以准确的定位 。

       需求工程作为软件工程生命周期的起点是软件开发后继阶段的基础。软件需求是软件开发的目标,也是其项目开发成功与失败的重要因素。有时候错误的需求分析很可能导致软件开发的全盘否定,需求错误的代价会随着项目的展开儿发生变化。

        如果需求错误能够及时的修复,那么其代价就会被限定在一定的范围之内。如果没有及时的发现,则很可能让整个软件的开发失去其本来应有的意义。

 明白了正确的需求的重要性,还要注意一点就是把握软件在开发过程中应该有的功能性需求和非功能性需求。软件开发的前期要首先分析和撰写需求规格说明书,这也在一定程度上给我们一个机会去深究软件本身应该具备的功能性意义。

 采用合理化的需求分析模型,能够快速的开发出系统的概貌,有利于开发过程的顺利进行,其模型包括:瀑布模型,螺旋模型,RUP,迭代模型和敏捷方法等。这些方法能够准确的定位产品的生命周期,从而使开发过程不至于偏离方向。减少开发过程中走的弯路。 我们根据用户需求,通过反复讨论、分析,最终明确一个唯一性的用户需求,这个结果其实就是我们的软件需求分析报告。一般我们采用一些开发工具,如VC或BC等,同样也会使用一些图形工具,如Potoshop、调色板等画图工具。使用各种工具表达软件需求分析,其具体表达手段可以分为:

    1. 效果图描述。主要是用户UI界面的描述反映用户需求功能;

    2.逻辑图描述。根据用户需求功能,使用抽象化理论,以及需求分析理论,对用户需求功能进行全面的分析,建立功能性逻辑关系图,流程逻辑关系图等;

    3.关系图表描述。主要是对信息关系、数据库表格、接口函数等描述;

    4.工程数学描述。分析用户需求,分析用户需求信息,运用工程数学进行算法推导,进行合理化需求分析推导;

    5.甘地图描述。主要是软件项目工作安排,开发周期预估;6.其它方法描述。保证完整性合理性的有效描述。

进行需求分析时,应注意一切信息与需求都是站在用户的角度上。尽量避免分析员的主观想象,并尽量将分析进度提交给用户。在不进行直接指导的前提下,让用户进行检查与评价。从而达到需求分析的准确性。分析员通过需求分析,逐步细化对软件的要求,

      最为困难的概念性工作便是要编写出详细的技术需求,这包括所有面向用户、面向机器和其它软件系统的接口。如果做错,这将是会最终给系统带来极大损害的一部分,并且以后再对它进行修改也极为困难。目前,国内产品的庞杂,一家企业可能有几个系统并立运行,它们之间的接口是系统开发人员最头痛的问题。对于商业最品是显而易见的。但是对于我们开发人员来说,并没有编写出客户认可的需求文档,我们如何知道项目于何时结束?而如果我们不知道什么对客户来说是重要的,那我们又如何能使客户感到满意呢?

posted @ 2015-11-20 08:52  twenty丶two  阅读(163)  评论(0编辑  收藏  举报