以需求为驱动的软件开发新技术在实际工作中的应用

发表时间:2021/3/16   来源:《中国科技信息》2021年1月   作者:张颖
[导读] 现在越来越多的开发人员选择了ASP.NET+SQL Server新技术开发软件系统。开发之前要做好应用系统自主开发的需求分析工作。

胜利油田现河采油厂工艺研究所   张颖

摘要:现在越来越多的开发人员选择了ASP.NET+SQL Server新技术开发软件系统。开发之前要做好应用系统自主开发的需求分析工作。
关键词:新技术、需求分析、需求意识
        一、软件开发新技术特点概述
        随着在工作中要开发的系统的数量、规模、复杂度日益加大,所需系统交付时间的缩短,ASP+Access已不再能满足软件开发系统的需要,为此越来越多的开发人员选择了ASP.NET+SQL Server新技术。
        1、新老技术背景简介
        ASP(Active Server Pages动态服务器页面),它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,可以用来创建和运行动态网页或web应用程序。(1996年由微软推出第一版)
        ASP.NET也是一种技术框架,它不仅是ASP的简单升级,而是全新一代的动态网页实现系统,是微软发展的新体系结构.NET的一个组成部分。(2000年由微软推出第一版)
        Access是一种桌面数据库(单机版),只适用于客户端的关系型数据库管理系统,是Office成员之一。
        SQL Server是基于网络服务器端的大型数据库管理系统,立足于企业级大型应用。
        下面对新老技术做一简单对比以突出新技术的特色。
        2、ASP.NET 对比 ASP
        ASP.NET 与ASP从字面上看很像,但它并非仅仅是下一代的ASP,它为创建基于WEB的网络应用程序提供了全新的编程模型。它们的技术特点简单比较如下表: 

        3、ACCESS对比SQL Server
        Access和SQL Server虽然都是关系数据库管理系统,但它们的市场定位不同,不是一个数量级的软件产品。它们的技术特点简单比较如下表:


        二、系统开发目前存在的问题探讨
        以前开发的一些应用系统,存在以下不足:
        1、系统集成度不高,存在信息孤岛
        前几年的系统开发过程中,由于系统建设的历史阶段性、掌握的开发技术的局限性和系统开发需求的局部单一性等原因,在各个系统的建设过程中,通常只是考虑了该系统所涉及到的业务领域和信息资源,而并没有很好地从整个实际工作信息系统建设的层面上考虑总体规划设计,且不同的系统之间采用了相同或不同的基础平台、开发方法、开发语言、数据组织架构及信息传递标准,使得各系统之间数据缺乏共享,形成了众多异构、封闭的信息孤岛。要了解单井的各项数据,需要打开不同的系统。
        2、系统需求不足和需求变动过多,导致系统交付迟缓
        所谓系统需求,通俗和简单地来说,就是开发者和使用者对要开发实现的系统达成共识。这似乎很简单,但是由于用户对计算机系统认识的缺乏,以及开发者对业务领域知识的不足,两者达成共识并没有想象中那么容易,而且常常出现诸多问题,进而影响整个系统的开发。
        (1)需求不足
        用户无法提出完整详细的需求从而导致需求不足,这是一个很普遍的问题。用户认为已经很明确地表述了自己的要求,他认为软件开发人员应该足够聪明和有经验以能够理解他的需求;或者用户无法提出具体的需求,他只知道使用计算机可以改善自己的工作,因此也希望从中得到好处。
        (2)需求过多
        用户往往对计算机期望过高,认为计算机可以解决当前存在的所有问题,因此会提出很多的功能需求,并且希望在很短的时间内看到成效。但是,由于技术、人力等资源的限制,并不一定能够在设定的时间期限内满足用户所有的期望。
        三、如何做好应用系统自主开发的需求分析
        需求分析是系统开发工作中最重要的环节之一,实事求是地全面调查系统需求是软件分析与设计的基础,这一步工作直接关系到整个开发工作质量的成败。同时,需求分析工作量大,所涉及的业务和人员、数据、信息都非常多。事实上,软件项目开发的大部分时间是花费在决定要“建造”(需求)什么上。据统计,软件项目中40%-60%的问题根源在需求分析阶段。需求分析是软件开发的基础,假定在该阶段发现一个错误,解决它需要用一小时的时间,到设计、编程、测试和维护阶段解决,则要花2.5、5、25、100倍的时间,需求分析对系统成败的影响度占85%以上。所以,如何科学地组织和适当地着手开展这项工作尤为重要。以下我们将针对需求分析过程中存在的问题来谈谈如何做好需求分析工作。
        1、从业务需求入手,加强研究
        用户和开发人员加强沟通,了解为什么要从事该系统开发;该系统最终能为业务和客户提供哪些价值;该系统的使用者有哪些;数据来源和目的地以及格式和约束是什么。具体来说,需求讨论应该围绕数据和事件这两种信息从三个角度来考察问题:一是信息的内容。系统的主要功能是什么,主要有哪些业务或者处理哪些数据;二是信息的流向。系统用户的运作规范和流程是怎样的,信息从产生到处理到存档经过了哪些过程;三是信息的结构。系统用户单位的管理结构是怎么样的,对数据和事件有何影响。通过这些从业务入手的研究,开发人员就可挖掘并确定系统工作域的结构,从而发现可能产生的需求,解决需求不足的问题。为此,开发人员对用户提出以下期望:
       (1)用户提供一个与系统相关的业务流程图,便于开发人员分析。
       (2)用户对将来形成的系统有个成熟的印象,而不是简单的将一堆数据罗列出来,生成一个EXCEL表格。
       (3)整个系统从用户权限、数据录入、数据计算、数据统计、数据输出显示都要有详细说明。
       (4)用户需要列出系统的每一项功能,每个功能要独立描述,而不是将多个功能混在一起。
       (5) 用户需要详细列出将来所要建立的数据库每一个数据项的字段名、类型及长度。
       (6)对于有默认值的、下拉选项、数据关联的、公式计算等数据项以及会出现数据异常的字段都需要表述清楚。
       (7)对于需求变更,需提交书面的变更申请报告。
        2、设定需求优先级
        当需求过多时,开发人员不一定能够在设定的时间期限内满足用户所有的期望。这时就应该尽快制定出交付的系统应具备的最重要功能,即设定需求的优先级。将需求分为核心的、条件的和可选的三种。首先实现核心的功能,确保软件可以被接受。
需求的3种级别

投稿 打印文章 转寄朋友 留言编辑 收藏文章
  期刊推荐
1/1
转寄给朋友
朋友的昵称:
朋友的邮件地址:
您的昵称:
您的邮件地址:
邮件主题:
推荐理由:

写信给编辑
标题:
内容:
您的昵称:
您的邮件地址: