云大软件工程实验二 软件需求_第1页
云大软件工程实验二 软件需求_第2页
云大软件工程实验二 软件需求_第3页
云大软件工程实验二 软件需求_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验报告课程:软件工程实验任课教师:指导教师:序号:专业:学号:姓名:成绩:实验二软件需求找出对于计算机系统来说四种可能要定义的需求,并简要描述之答:可能要定义的需求如下:功能需求:对系统应该提供的服务和功能、如何对输入做出反应以及在特定条件下的行为的描述。在某些情况下,功能需求可能还要明确声明系统不应该做什么。非功能需求:指不直接与系统具体功能相关的一类需求。换言之,它们定义了对系统提供的服务或功能的约束。包括可靠性、存储空间、时间约束、开发过程的约束、标准等。用户需求:从用户的角度来描述系统功能和非功能需求,以便让不具备专业技术方面知识的用户看懂。它是用自然语言、图表和直观的图形来叙述关于系统需要提供那些服务以及系统操作受到那些约束。系统需求:比用户需求更详细的需求描述,是系统实现的基本依据。详细地给出系统将要提供的服务以及系统所受到的约束,系统需求应该陈述系统应该做什么而不包括系统应该如何实现。讨论用自然语言定义用户需求和系统需求存在的问题。使用一个小例子说明格式化的自然语言能否帮助避免一些表述困难答:(1)用自然语言定义用户需求和系统需求存在的问题:自然语言的解释依赖于读者和作者对于同一个词语有一致的解释,因为自然语言存在二义性,因此会造成语义理解的偏差;一个自然语言的需求描述随意性很大,能以完全不同的方式来描述相同的事物,用户很难判断什么时候需求是一样的,什么时候需求是不一样的;不存在一个简单的方法,使自然语言书写的需求模块化,这种形式描述的需求极难发现相关性;用自然语言书写的需求描述容易引起误会,而这些误会可能在软件过程的后期才发现,这时再去解决问题费用将会相当高。例子说明:例如,“Shoesmustbeworn”有两种解释:“鞋子必须被穿”,“一个人必须要穿鞋”,这样就存在了二义性。如果使用格式化的自然语言,我们可以说“Onepeoplewearpairofshoes”,这样就可以避免二义性。使用格式化的自然语言描述除去了描述中的一些问题,这是在描述中减少了可变性和需求被有效划分的结果。但在描述中还是会存在一些二义性。开发一个软件系统管理进入诊所治疗的病人的记录。记录内容包含所有一般性的病人监控记录(温度,血压等)、所进行的处置、病人的反映等。处置完毕,如果病人需要住院观察,将这些记录传给负责的住院大夫。由他/她来维护病人的完整记录。请找出主要的视点,用视点层次图组织这些视点。答:(1)主要的视点有:病人、记录、住院大夫、管理员(2)视点层次图:分别对上下文模型、行为模型、数据模型、对象模型、结构化方法进行分析说明其优劣。答:(1)上下文模型:优点:在需求导出和分析过程的早期阶段,应该界定系统的边界,定义系统的上下文是有意义的,由于系统使用的社会性和组织性,系统边界的确定充满了非技术性因素。比如,可能需要一种划分,使得分析过程可以完全在一个地点完成;或者需要一种划分使得成本增长、部门必须扩张才能完成系统的设计和实现。缺点:体系结构模型描述系统的环境,不描述其他子系统之间的关联关系,也不描述要分析的系统本身。外部系统可能产生数据供该系统使用,同时也使用该系统生成的数据。这些周边子系统可能与该系统共享数据,可能与系统直接相连,或通过网络相连,或者根本就不连在一起。在空间上,这些子系统可能与该系统同在一处,也可能分处在不同的建筑物中,所有的这些因素都将影响系统的需求,必须加以考虑。行为模型:优点:行为模型用来描述系统的所有行为。主要有两类,一类是数据流模型,用来描述系统中的数据处理过程,另一类是状态机模型,用以描述系统如何对事件做出响应。数据流模型的价值主要体现在它对系统中的数据和数据在特定的过程中的流动的跟踪和记录,有助于系统分析人员理解系统中到底发生了什么。状态机模型尤其适合用来描述实时系统。缺点:数据流模型在分析模型中,对程序功能模块的加工只能由手工处理或借助计算机来处理。状态机模型的主要问题在于可能的状态数会剧增。数据模型:优点:最广泛采用的数据建模技术是实体-关系-属性建模(即ERA建模),它描述数据实体、关联属性以及实体间的关系。数据模型常常和数据流模型一起用来描述系统的信息结构。缺点:UML没有为数据模型引进专门的描述符号,只可以用UML类模型以及在类之间建立名字关联的方法表示出数据模型。ERA模型缺乏对细节的描述,还需要对实体、关系、属性做更详细的描述。对象模型:优点:在需求分析阶段开发的对象模型既可以用来表达系统数据也可以用来表达对数据的处理,在这一方面,对象模型可以看成是数据流和语义数据模型的结合,同时,对象模型在说明系统实体是如何分类和复用的时候也非常有用。对于某些系统而言,对象模型是一种映射真实世界中实体及对其操作的自然方式。缺点:某些抽象的高层实体(如图书馆、医疗记录系统或字处理器)就很难使用对象模型,它们没有必要拥有一个简单的界面以包容独立的属性和操作。结构化方法:优点:结构化的方法,如结构化系统分析和面向对象分析等,提供了一个详细的系统建模框架,作为需求导出和分析的一部分。绝大部分结构化方法有自己常用的系统模型集,这些方法通常是先定义一个用来导出模型的过程和作用于模型的一组规则和指南,然后再建立系统的标准化文档。缺点:不提供对非功能性系统需求的有效理解和建模;不提供对用户选择的合适方法指导,也没有对方法适用的特殊环境的忠告;往往产生大量文档,系统需求的要素被隐藏在一大堆具体细节的描述中;产生的模型太注重细节以致用户觉得难以理解,因而很难去验证这些模型的真实性。对电子邮件系统中的数据处理进行建模,并分别为邮件发送和邮件接收建立处理模型。答:可以使用数据流模型来进行建模,它是描述系统数据处理的很直观的方式,模型中的符号分别表示功能模块处理、数据的存储和数据在功能模块之间的流动。(1)电子邮件系统数据处理模型:(2)邮件发送处理模型:新建邮件(3)邮件接收处理模型:新建邮件简要说明Z方法在软件工程中的应用。答:软件工程中的形式化方法是一种基于数学的软件开发方法,它可应用于软件工程的各个阶段。Z本身是一个书写规格说明的语言,或者说是一种表示法,它是目前人们非常感兴趣的一种规格说明方法。Z是一种形式化语言,在需要时开发者可以严格地验证规格说明的正确性,Z语言的模式是基本结构,用于描述系统的状态和操作。使用Z语言可以降低软件开发费用,虽然用Z写规格说明所需用的时间比使用非形式化技术要多,但开发过程所需要的总时间却减少了。虽然用户无法

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论