项目管理资源网

您的位置:项目管理资源网 >> IT通信项目管理

软件需求分析与软件可靠性保证

2011/3/22 8:34:18 |  5070次阅读 |  来源:网友转载   【已有0条评论】发表评论

关键字:需求分析 软件可靠性

一、软件可靠性工程与需求工程的关系

软件需求分析是软件产品开发设计的第一步,也是最重要的一步。其工作质量的高低,不仅直接影响后续工程的质量,而且决定着所开发软件产品的价值。当然,完整、严密地描述用户需求,并不是一件十分容易的事。有些软件产品之所以功能不完善、性能差、可靠性低、可用度差、甚至不能使用,多数是因为用户需求分析工作不彻底所致。但是,目前软件可靠性工程研究与实践的重点,在于软件测试等一些事后的验证性工作,对软件可靠性设计重视不多,这在需求分析等前期阶段尤为突出。

二、软件需求分析

软件需求分析是软件设计的基础。它采用一系列行之有效的技术、方法和工具来分析用户需求,通过特定的形式系统地描述拟开发软件的功能、性能,以及行为特征和相关约束,定义所有内外部特征,最后形成既能指导软件设计、又能同用户沟通的软件需求规格说明。它覆盖了软件设计之前的各项活动。

软件需求分析是从用户最初的非形式化需求,到满足用户要求的软件产品设计的一个映射。

在软件计划的基础上,从深入分析用户需求出发,把用户的需求变换成以计算机为基础的系统需求。需求分析实际上是调查、评价、以致肯定用户对软件的需求的过程,是一个对用户意图不断进行揭示和判断的过程。其目的在于细化、精化软件的作用范围,确定拟开发软件的功能和性能,分析并确认其过程,确定软件成分及接口。

1.软件需求分析的任务与步骤

软件需求分析可分为四个步骤。

①归纳整理用户提出的各种问题和要求,弄清用户企图通过软件达到的目的,并把它作为要求和条件予以明确。即分析人员借助各种工具和方法,获得对用户需求的基本理解,然后在需求获取方法的驱动和指导下,从非形式需求陈述中提取出用户的实际需求。由此确定软件的功能、性能、接口关系及有关属性、软件条件、限制和边界等,标定软件的作用范围,确认支持性的软硬件环境及辅助工具与条件。此阶段还为软件需求分析活动提供了相应的过程控制机制。

②在需求获取的基础上,建立逻辑模型,使用自顶向下、逐层分解的方法,把用户对软件的需求分解成若干子系统或软件成分,将外部需求赋予软件的各个功能成分,定义软件成分的内部功能,并标定它们之间的接口。

③用准确、简练、无二义性的语言将用户需求规格化为软件需求规格说明,使用户和开发人员对拟开发软件有共同的理解,它同时还是软件确认、测试、验收和交付的基准。

④通过需求评审,对需求获取、需求定义等进行全面审查,力图发现需求分析中的错误和缺陷,最终确认软件需求规格说明。同时,以需求规格说明为输入,通过符号执行、模拟或快速原型等方法,向用户展示需求规格说明所刻划的系统外部行为和相应特征。

形式化方法通常有严格定义的分割、抽象、投影机制,其数学定义有助于澄清认识。规格说明的构造往往是增量式的,但数学定义不是所有软件开发人员都能轻易掌握的,它与一般应用尚存在相当的距离。

非形式化方法常常以某种方法学或方法框架的形式出现,非形式化地描述一系列规格说明的步骤和原则,并定义相应的记号。其典型方法有结构化分析方法和面向对象分析方法等。结构化分析方法源于数据处理应用,是一种单纯的自顶向下的功能分解技术。面向对象分析方法大多通过对象(类)、状态、交互行为来刻划问题及问题的解,强调对对象及对象类的定义和求精。

在实践中,人们逐步认识到形式化和非形式化方法的不足。于是,力图寻求一种结合这两种方法的长处、并能有效克服其缺点的综合方法。基于知识表示的方法是这种方法的代表。

知识表示技术为需求规格说明奠定了形式基础,而非形式的方法框架给

    项目经理胜任力免费测评PMQ上线啦!快来测测你排多少名吧~

    http://www.leadge.com/pmqhd/index.html

“项目管理生根计划”
企业项目经理能力培养和落地发展方案下载>>

分享道


网站文章版权归原作者所有,如有认为侵权请联系我们,将于1个工作日内作出处理!
网友评论【 发表评论 0条 】
网友评论(共0 条评论)..
验证码: 点击刷新

请您注意护互联网安全的决定》及中华人民共和国其他各项有关法律法规或间接导致的民事或刑事法律责任
·您在项目管理资源网新闻评论发表的作品,项目管理资源网有权在网站内保留、转载、引用或者删除
·参与本评论即表明您已经阅读并接受上述条款