ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:292.94KB ,
资源ID:4300635      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4300635.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(软件工程s.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

软件工程s.docx

1、软件工程s 计算机科学系实验报告 课程名称: 计算机软件工程 年 级: 09 级 专 业: 计算机科学与技术 姓 名: 韩逸玮 学 号: 091101401034 2011-2012学年第二学期 实 验 目 录 序号实验名称页码实验时间成绩指导教师1实验一 工具软件VISIO的使用2012年3月8日2实验二 绘制系统数据流图2012年3月22日3实验三 绘制系统结构图2012年4月5日4实验四 绘制用例图2012年4月19日5实验五 建立系统的用例模型6实验六黑盒测试用例设计7实验七 白盒测试方法实验8实验八 绘制GANNT图总成绩:实验一 工具软件VISIO的使用1、实验目的: 熟悉工具软件

2、VISIO工具软件的使用,掌握程序流程图的画法2、实验内容: 设计一个简单的程序流程图,利用VISIO软件画出这个程序流程图。3、软件和硬件环境: VISIO工具软件、LENOVO PC4、实验结果:1) 简单说明设计和分析的方法求有N个元素的一维数组A(I)中的最大值MAX的编程思路:定义整型变量N、I,定义数组A(N),定义最大值MAX.MAX和I的初始值0;程序执行循环语句,循环条件为(0=IN)在程序循环体中,执法选择语句,如果MAX A(I),则MAX= A(I),否则MAX=不变。在程序循环体中,选择语句结束后,执行赋值语句I=I+1,如果IN程序继续执行循环体中的部分,当I=N的

3、时候程序会跳出循环体,结束程序运行。流程图画法:1.流程图中的程序语言用的是C#。2. 流程图中所用到图形符号的意思1)矩形:表示各种处理功能.例如,执行一个或一组特定的操作。2) 菱形判断框: 表示判断选择,菱形框内可注明判断的条件,它只有一个入口,但可以有若干个出口,(出口直线上面标明条件)。3)直线:表示控制流的流线.,流线上的箭头表示流向。3.利用VISIO软件的画图方法或VISIO软件的画流程图模板,根据要求画出相应的程序流程图。学生在画流程图的过程中,掌握VISIO软件画图流程图的基本方法。2)给出实验结果5、实验结果分析: 1,在画流程图时候首先要对visio熟悉 2,熟悉流程图

4、各个的表示符号和含义 3,安装流程进行流程图的绘画实验二 绘制系统数据流图1、实验目的: 1掌握结构化分析的 2掌握利用VISIO软件画DFD图的方法2、实验内容: 贵阳学院学生成绩管理系统的功能描述如下: 1、学生可以查询自己的成绩 2、教师负责学生成绩的登记,并可以查询和统计有关学生成绩的 各种数据。 3、如果学生成绩需要修改,必须由教务处的教务管理员修改。3、软件和硬件环境: VISIO工具软件、联想pc4、实验结果: 简单说明设计和分析的方法1.数据流图的符号:正方形(矩形):数据流的源点或终点椭圆:加工或处理双杆:数据存储带箭头的线段:数据流及流动方向2.利用VISIO软件的画图方法

5、或绘制数据流图的模板,根据要求画出相应的数据流图。2)给出实验结果5、实验结果分析:1) 适当地为数据流、加工、数据存储、外部实体命名,名字应该反应该成分的实际含义,避免空洞的名字。2) 画数据流而不画控制流3) 一个加工的输出数据流不应与输入数据流同名,即使他们的组成成分相同。4) 允许一个加工有多条数据流流向另外一个加工,也允许一个加工有两个相同的输出数据流流向另外两个不同的加工。5) 保持父图和子图平衡。也就是说,父图中某加工的输入、输出必须与它的子图的输入、输出数据流在数量和名字上相同。值得注意的是,如果父图的一个输入(或输出)数据流对应于子图中几个输入或输出数据流,而子图中组成这些数

6、据流的数据项全体正好是父图中的这一个数据流,那么它们仍然算是平衡的。6) 在自顶向下的分解过程中,若一个数据存储首次出现时只与一个加工有关,那么这个数据存储应作为这个加工的内部文件而不必画出。7) 保持数据守恒。也就是说,一个加工所有输出数据必须能从该加工的输入数据流中直接获得,或者是通过该加工能产生的数据。8) 每隔加工必须既有输入数据流也有输出数据流。9) 在整套数据流图中,每隔数据存储必须既又读的数据流,又有写的数据流。但在某一张子图中可能只有读没有写,或者只有写没有读。实验三 绘制系统结构图1、实验目的: 1、掌握DFD转换为SC图的方法 2、掌握SC图的画 法2、实验内容: 根据实验

7、二中所画的DFD图,画出请画出贵阳学院学生成绩管理系统的SC图。3、软件和硬件环境: Visio和联想pc4、实验结果: 简单说明设计和分析的方法 系统的SC图是根据系统的SC图得来的,从SA获得的DFD中,所有系统可归结为变换型结构和事务型结构两种类型。为了有效地实现从DFD图到SC图的映射,结构化设计规定了下列4个步骤: 复审DFD图,必要时可再次进行修改或细化。 鉴别DFD图所表示的软件系统的结构特征,确定它所代表的软件结构是属于变换型还是事务型。 按照SD方法规定的一组规则,把DFD图映射为初始图。 按照优化设计的指导原则改进初始SC图,获得最终SC 1) 给出实验结果5、实验结果分析

8、: 结构图是准确表达程序结构的图形表示方法,它能清楚地反映出程序中各模块间的层次关系和联系。与数据流图反映数据流的情况不同,结构图反映的是程序中控制流的情况。结构图着重反映的是模块间的隶属关系,即模块间的调用关系和层次关系实验四 绘制用例图1、实验目的: 掌握用例图的画法2、实验内容: 根据实验二中的要求,画出学生成绩管理系统的用例图3、软件和硬件环境: Visio工具软件 联想pc4、实验结果:1) 简单说明设计和分析的方法 用例图表示从用户的角度,看到系统应有的功能。在UML语言中,用例图是用来描述系统功能的视图。其组成符号如下:系统(System)指的是软件系统,它可以包含一些用例,并界

9、定系统的边界,边界之内的属于系统的功能和行为,边界之外的则不是系统所关心的内容。用例(Use case)指的是系统的功能,它是系统某个功能的所有执行动作的集合。参与者(Actor)是与系统中的用例交互的一些实体,在实际情况中,参与者可以是人,也可以是其他系统或者硬件设备。参与者称也为角色或执行者。关联(Assocation)是参与者与用例的连接,表达此参与者可以使用此用例。 画用例图的步骤: 1确定参与者 2确定用例 3.绘制用例图 4、用例图的调整 给出实验结果5、实验结果分析: (1)关联关系(2)泛化关系(3)包含关系(4)扩展关系这三种关系的具体含义可以在UML基本概念中定义。 注:(

10、3)包含关系指两个用例之间的关系,其中的一个用例的行为包含另一个用例的行为。(4)扩展关系包含设计者自定义的关系。关系类型 说明 表示符号关联 参与者与用例的关系 泛化 参与者之间或者用例之间的关系 包含 用例之间的关系 扩展 用例之间的关系 绘制用例图注意事项:(1)创建合适大小粒度的用例,在创建用例图时要注意用例的颗粒大小,不能使用太多的用例使得理解上产生困难,对于一个中小型系统商业1020个用例是合适的。(2)用例的描述才是用例的主要部分,它是用文字序列来进行详细的描述,一般在rose图建模中使用注释来注明用例的文字描述。实验五 建立系统的用例模型1、实验目的: 掌握用例模型的规范要求2

11、、实验内容: 根据实验四中画出的用例图,为贵阳学院学生成绩管理系统编写用例规约、补充 规约和术语表。3、软件和硬件环境: Visio工具软件 联想pc4、实验结果: 简单说明设计和分析的方法 用例规约、补充规约和术语表是用例建模的文档,在软件工程中有严格的书写格式和要求。 给出实验结果1. 教师管理1.1 简要说明本用例用于教师对学生成绩进行查询、录入、统计。教师必须先登录贵阳学院学生成绩管理系统,才能对学生的成绩做出相应的操作。操作完成后,系统将会做相应的保存。1.2 事件流1.2.1 基本事件流当教师登录系统后,开始执行以下基本事件流:1 系统要求教师指出要执行的操作(查询成绩、录入成绩或

12、统计成绩)。2 一旦教师提供了所需要的信息,以下的一个子事件流将被执行:如果选择的是“查询成绩”,查询成绩子事件流被执行。如果选择的是“录入成绩”,成绩录入子事件流被执行。如果选择的是“统计成绩”,统计成绩子事件流被执行。1.2.1.1 查询成绩1 系统将教师所教学生姓名表及所教课程的数据表显示给教师。2 教师查询相关学生的相关科目的成绩。3 执行提交查询成绩子事件流。1.2.1.2 录入成绩1 系统将教师所教学生姓名表及所教课程的数据表显示给教师。2 教师录入相关学生的相关科目成绩。3 执行提交录入成绩子事件流。1.2.1.3 统计成绩1 系统将教师所教学生姓名表及所 教课程的数据表显示给教

13、师。2 教师对学生的成绩进行相应的统计(计算平均成绩、统计不及格成绩、按分数段统计成绩)。3 执行提交统计成绩的子事件流。1.2.1.4 提交教师操作结果教师的查询成绩、录入成绩、统计成绩操作无误,则系统保存教师录入的成绩,并将各个操作的有效结果返回给教师。1.2.2 备选事件流1.2.2.1 登陆系统验证 如果系统检测到教师输入的用户验证信息有误,则提示输入的账号或密码有误,请重新输入。1.2.2.2 检索教师的信息 登陆系统的教师没有相关的学生和课程,则系统提示该教师不能对学生成绩管理系统进行操作。1.2.2.3 检索学生的成绩信息如果学生的成绩表里没有成绩记录,则教师不能进行成绩查询的操

14、作。1.2.2.4 检索教师的录入成绩 若教师的录入成绩不符合成绩录入的规定,则系统提示录入有误。1.2.2.5 检索教师统计成绩 若学生成绩表中没有成绩,则系统提示请先录入成绩在进行统计。1.3 特殊需求无。1.4 前置条件教师必须先登录系统,然后才能进入本用例。1.5 后置条件如果本用例成功,学生成绩在系统数据库中信息将被修改。否则,系统维持原状。1.6 扩展点无。5、实验结果分析: 什么样的用例模型是正确有效的呢? 很多人在用用例模型描述软件需求的时候都会有这样的困惑,下面就来阐述一下比较常见的问题。1、 角色不仅仅指的是人首先,要强调的是角色不仅仅指的是人,任何需要和软件交互的其他系统

15、和设备都是系统的角色比如,一个软件系统需要从其他遗留系统中获取数据,那这个遗留系统就是这个软件系统的角色;再比如,软件系统运行过程中,时钟会在某个时刻产生提示或警报,那这个时钟也是一个角色。 二、 用例的粒度用例的粒度应该是一个功能模块吗?不是,功能模块在用例模型里面用包来表示。用例是一个产生可见的有价值的结果的最小功能。也就是说,用例不可以是一个功能碎片,例如,输入用户名,显然不能成为一个用例,因为它并没有产生任何有价值的结果,而验证用户身份,则属于一个用例,因为它的结果就是用户身份正确或不正确。对于粒度的最多的讨论可以说是“四轮马车”问题了。就是一个功能的添加、修改、查询,和删除是否都需要

16、单独用一个用例来表示。其实这个问题可以灵活处理,根据软件的复杂情况来决定,如果你有太多的更重要的需求需要来描述,就没有必要就这些细节关注太多,如果你只需要关注某个用例,而且也有详细描述的必要的话,描述出来当然也没有问题。通常情况下,可以用扩展点的方式描述查询和修改的关系。三、用例描述 复杂的用例需要单独用一个文件来描述,主要是用例的前置条件、后置条件、基本事件流、扩展事件流,和用例的优先级等。简单的用例可以在用例图中用标签来描述。另外,活动图和顺序图也是详细描述流程和功能的有利工具。随着用例功能的不断细化,这两种图会发挥更大的作用。四、用例之间的关系 有人画用例图的时候,用一条线直接把两个用例

17、连起来,也没有任何标注,这种关系的描述是错误的。用例之间的关系有包含、扩展,和通用化三种。包含通常是对某个功能的重用,多个用例都需要使用某部分功能,就把这个功能单独提炼出来,作为一个用例。扩展是可选的功能分支,也可以是个例外,他可能执行也可能不执行。通用化就是通常所说的继承关系,子用例是父用例的一个特例,并有他自己的特定功能。实验六 黑盒测试用例设计1、实验目的: 掌握黑盒测试的基本概念2、实验内容: 学生自己提出一个编程问题,对程序中的变量用黑盒测试中的等价分类法进行测试。3、软件和硬件环境: java工具软件、联想pc4、实验结果:简单说明设计和分析的方法:黑盒测试就是依据软件的需求规格说

18、明书,检查程序的功能是否符合用户要求。这种测试不需要考虑程序内部的逻辑结构和内部特性,完全把测试对象看作一个黑盒子。 黑盒测试主要针对以下内容: 程序是否按照需求完整正确地实现了功能。 程序的接口是否正确有效。 程序输出的数据或外部数据库访问是否正确。 程序性能是否符合需求。 程序初始化和终止是否正确。 黑盒测试常用的方法有:等价类划分、边界值分析、错误推测、因果图和功能图。 等价分类法事黑盒测试方法中较常用的一种技术,所谓等价分类,就是把输入数据的可能值划分为若干个等价类,使每类中的任何一个测试用例,都能代表同一等价类中的其他测试用例。等价分类法一般分成两步进行:第一步,描述出等价类:通常用

19、一个表格把输入数据、有效等价类和无效等价类分别描述出来。第二步,设计测试数据:通常用一个表格把测试数据、期望结果和测试范围描述出来。有效等价类可以用一个测试用例,其他的每一个无效等价类要用一个测试用例。2)给出实验结果1) 描述成绩变量X的等价分类 输入数据有效等价类无效等价类X1、2位数字字符或100有非数字字符少于1个数字符多于3个数字符(不包括100)对应数值在0-100之间100描述有效等价类的测试用例 有效等价类和可以共用一个测试用例,如下:测试数据预期结果测试覆盖55输入有效 3)描述无效等价类的测试用例 测试数据预期结果测试覆盖A1输入无效(没有数字字符输入)输入无效1234输入

20、无效-9输入无效101输入无效5、实验结果分析: 黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。 黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。 黑盒测试法注重于测试软件的功能需求,

21、主要试图发现下列几类错误。 功能不正确或遗漏;界面错误;数据库访问错误;性能错误;初始化和终止错误等。 从理论上讲,黑盒测试只有采用穷举输入测试,把所有可能的输入都作为测试情况考虑,才能查出程序中所有的错误。实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但可能的输入进行测试。这样看来,完全测试是不可能的,所以我们要进行有针对性的测试,通过制定测试案例指导测试的实施,保证软件测试有组织、按步骤,以及有计划地进行。黑盒测试行为必须能够加以量化,才能真正保证软件质量,而测试用例就是将测试行为具体量化的方法之一。具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、错

22、误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法等。 等价类划分的办法是把程序的输入域划分成若干部分(子集),然后从每个部分中选取少数代表性数据作为测试用例。每一类的代表性数据在测试中的作用等价于这一类中的其他值。该方法是一种重要的,常用的黑盒测试用例设计方法。 1) 划分等价类: 等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.等价类划分可有

23、两种不同的情况:有效等价类和无效等价类. 有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合.利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能. 无效等价类:与有效等价类的定义恰巧相反. 设计测试用例时,要同时考虑这两种等价类.因为,软件不仅要能接收合理的数据,也要能经受意外的考验.这样的测试才能确保软件具有更高的可靠性. 2)划分等价类的方法:下面给出六条确定等价类的原则. 在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类. 在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无

24、效等价类. 在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类. 在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类. 在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则). 在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类. 3)设计测试用例:在确立了等价类后,可建立等价类表,列出所有划分出的等价类: 输入条件 有效等价类 无效等价类实验七 白盒测试方法实验1、实验目的: 掌握白盒测试的基本概念2

25、、实验内容: 1)给出一个程序 2)画出程序流程图 3)根据程序流程图画出程序图 4)用表格描述出被测程序的路径。3、软件和硬件环境: c、联想pc4、实验结果: 简单说明设计和分析的方法 白盒测试的测试方法有代码检查法、静态结构分析法、逻辑覆盖法、基本路径测试法、符号测试等方法,其中运用最为广泛的是基本路径测试法。基本路径测试法是在程序图(程序控制流图)的基础上,通过分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例的方法。设计出的测试用例要保证在测试中程序的每个可执行语句至少执行一次。在程序控制流图的基础上,通过分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试

26、用例。包括以下4个步骤和一个工具方法:1. 程序的控制流图:描述程序控制流的一种图示方法。2. 程序圈复杂度:McCabe复杂性度量。从程序的环路复杂性可导出程序基本路径集合中的独立路径条数,这是确定程序中每个可执行语句至少执行一次所必须的测试用例数目的上界。 3. 导出测试用例:根据圈复杂度和程序结构设计用例数据输入和预期结果。 4.准备测试用例:确保基本路径集中的每一条路径的执行。工具方法:图形矩阵:是在基本路径测试中起辅助作用的软件工具,利用它可以实现自动地确定一个基本路径集。程序图中图形符号的意思: 1、图中的每一个圆称为流图的结点,表示一个或多个无分支的语句或源程序语句。 2、流图中

27、的箭头称为边或连接,代表控制流在将程序流程图简化成控制流图时,应注意:n 在选择或多分支结构中,分支的汇聚处应有一个汇聚结点。n 边和结点圈定的区域叫做区域,当对区域计数时,图形外的区域也应记为一个区域。流图只有二种图形符号:图中的每一个圆称为流图的结点,代表一条或多条语句。流图中的箭头称为边或连接,代表控制流任何过程设计都要被翻译成控制流图。给出实验结果5、实验结果分析: (1). 优点: 迫使测试人员去仔细思考软件的实现 可以检测代码中的每条分支和路径 揭示隐藏在代码中的错误 对代码的测试比较彻底 最优化 (2). 缺点: 昂贵 无法检测代码中遗漏的路径和数据敏感性错误 不验证规格的正确性

28、 实验八 绘制GANNT图1、实验目的:了解项目进度的管理方法2、实验内容: 1)了解GANNT图的意思 2) 利用项目管理软件Project,为实验二中的贵阳学院成绩管理系统制定一个用GANNT图表示的计划进度表3、软件和硬件环境: project工具软件、联想pc4、实验结果: (1)简单说明设计和分析的方法Project是微软公司开发的一个项目管理软件。Project软件通过对项目工时、日程安排和财务等的控制来实现项目的管理。要求学生利用Project软件绘制出项目的GANNT图。 给出实验结果 1.按照软件的生命周期,制定出贵阳学院成绩管理系统各个阶段的时间。 2.打开Project软

29、件 3.在GANNT图中输入各个阶段的时间。 4.所显示的条形图的就是项目进度的GANNT图。 在画GANNT图时用到的一些概念: 1.甘特图视图(GANNT图) 甘特图视图以工作表和条形图表的形式显示基本的任务信息。使用甘特图可以很方便地查看任务的工期、开始和结束时间,以及资源的信息;使用甘特图可以创建初始计划,查看日程和调整计划。 2.资源:资源是项目所需要的人力、物力、设备和资金等。 3.资源的日历 :资源日历是为单个资源指定工作时间和非工作时间的日历,而项目日历则是项目所使用的日历,资源日历不同于项目日历,项目日历指定多个资源的工作时间和非工作时间。资源日历设置专用于特定资源的工作时间。在Project 2003中,每个资源都可拥有自己的工作日历。 5、实验结果分析: 软件项目成功最重要的要素是什么?大型软件项目是依靠一个组织来完成的,如果这个组织在管理上是无序的,开发过程是非正式和混乱的,计划期限和成本目标通常超限,项目的成功取决于个人英雄式的行为,在人员发生变动时项目往往陷入灾难,那么很难说这个项目会获得成功。从这个意义上说,软件项目管理和过程管理是项目成功的关键因素。我们今天所面对的软件开发问题,最重要的莫过于如何用一种有效的方式来组织项目,确保软件开发的高效率。这就需要研究项目管理的本质,更加清醒地审视软件开发中的问题,根据软件的特点与文化

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1