软件工程实验指导书.docx

上传人:b****7 文档编号:10215451 上传时间:2023-02-09 格式:DOCX 页数:101 大小:452.05KB
下载 相关 举报
软件工程实验指导书.docx_第1页
第1页 / 共101页
软件工程实验指导书.docx_第2页
第2页 / 共101页
软件工程实验指导书.docx_第3页
第3页 / 共101页
软件工程实验指导书.docx_第4页
第4页 / 共101页
软件工程实验指导书.docx_第5页
第5页 / 共101页
点击查看更多>>
下载资源
资源描述

软件工程实验指导书.docx

《软件工程实验指导书.docx》由会员分享,可在线阅读,更多相关《软件工程实验指导书.docx(101页珍藏版)》请在冰豆网上搜索。

软件工程实验指导书.docx

软件工程实验指导书

《软件工程》实验指导书

 

前言

 

软件工程实验是为计算机相关专业本科《软件工程》课程配套设置的,是《软件工程》课程讲授中一个重要的、不可或缺的实践环节。

其目的是使学生能够针对具体软件工程项目,全面掌握软件工程管理、软件需求分析、软件初步设计、软件详细设计、软件测试等阶段的方法和技术,通过该课程设计使学生进一步理解和掌握软件开发模型、软件生命周期、软件过程等理论在软件项目开发过程中的意义和作用,培养学生按照软件工程的原理、方法、技术、标准和规范,进行软件开发的能力,培养学生对技术文档的编写能力,从而使学生提高软件工程的综合能力,提高软件项目的管理能力。

按该课程的特点,实验内容包括软件开发的两大方法学的专题训练,即结构化(生命周期学)的方法学和面向对象的方法学,通过对一个简单项目,要求学生利用结构化软件开发技术或面向对象的软件开发技术完成对该项目的开发。

因此设置五个实验项目,从项目发的准备工作,系统分析过程,系统设计过程,软件测试到系统实施,覆盖软件开发的整个过程,此外又引入我国国家《计算机开发规范》,以规范技术文档的书写标准,提高实验教学质量。

通过实验训练,达到如下目的:

使学生进一步了解和掌握软件工程原理,提高对实际项目的分析和设计能力,通过实验课程,熟悉和基本掌握软件工程方法学、软件开发的过程,文档资料的编写格式及规范,全面领会和贯通所学习的理论知识,从而培养学生综合运用所学课程知识,分析解决问题的能力,培养学生理论联系实际作风,实事求是,严肃认真的科学态度和良好的工作作风,为今后从事科学研究工作打下基础。

实验要求

 

软件工程实验具体要求如下:

题目自定或采用附录一中的题目;

软件开发的方法自定(结构化或面向对象的方法)

每个项目必须按照《软件工程实验指导书》附录二中给定的文档规范标准提供项目文档;

项目开发的准备工作

一、目的与任务

目的:

确定课题,熟悉软件开发环境,写出可行性报告。

任务:

根据提供的课题需求和条件,按照软件开发国家标准可行性报告书写格式,写出该课题的可行性报告。

并熟悉相应的软件开发环境。

二、内容、要求与安排方式

1、实验内容与要求:

根据提供的课题需求和条件,按照软件开发国家标准可行性报告书写格式,写出该课题的可行性报告。

熟悉相应的软件开发工具的使用环境。

2、实验安排方式:

本实验每组1人,每人1台计算机。

3.准备参考资料和阅读相关的国家有关软件开发的标准文档。

三、思考题

1、项目开发首先要做的事是什么?

2、可行性分析应该从哪几方面进行分析?

实验一:

软件需求分析

实验学时:

4实验类型:

验证性

一、目的与任务

目的:

确定项目的可实施性,在此基础上完成系统的逻辑功能模型的建立。

任务:

可采用不同的软件开发技术,完成对项目的需求分析过程,给出系统的逻辑功能模型,数据字典以及规格说明书。

二、内容、要求与安排方式

1、实验内容与要求:

明白项目的业务流程图,绘制数据流程图,功能分析图,编写数据字典,数据加工处理的描述,软件系统流程设想图(新系统模型),需求规格说明书。

2、实验安排方式:

本实验每组1人,每人1台计算机。

三、思考题

1、需求分析在软件开发中真的有那么重要吗?

2、分析系统流程图,流程图和数据流图的区别和各自的特点。

3、怎样写合乎规范的数据流图和数据词典?

实验二:

软件设计

实验学时:

6实验类型:

设计性

一、目的与任务

目的:

在实验一基础上完成系统的体系结构的建立和系统详细设计,并给出相应的系统设计说明书。

任务:

认真分析实验一的结果,给出系统合理的体系结构,描绘系统结构图,并合理划分系统的各组成模块,最后给出系统的各部分设计说明书。

二、内容、要求与安排方式

1、实验内容与要求:

功能结构图设计,软件处理流程设计,输出设计(主要指打印输出设计),存储文件格式设计(数据库结构设计),输入设计(主要指数据录入卡设计),

2、实验安排方式:

本实验每组1人,每人1台计算机。

 

三、思考题

1.系统设计和需求分析的关系是什么?

两者必须先后关联吗?

2.怎样描绘系统的体系结构?

3.怎样绘制复合规范的流程图。

4.怎样组织对设计阶段工作的评审?

实验三:

编码与语言选择

实验学时:

4实验类型:

验证性

一、目的与任务

目的:

在实验二基础上完成系统代码设计。

任务:

在实验二系统设计说明书基础上,根据相应的软件开发环境,使用相应的程序语言和数据库,写出系统源代码。

二、内容、要求与安排方式

1、实验内容与要求:

完善系统所涉及的程序框图,写出系统源程序,模拟运行数据,打印报表等。

2、实验安排方式:

本实验每组1人,每人1台计算机。

三、思考题

1.所选的编码语言有何特点?

2.系统界面的实现过程?

3.系统数据实现的方法?

 

实验四:

软件测试

实验学时:

4实验类型:

设计性

一、目的与任务

目的:

在实验三的基础上,完成对系统的组装和测试。

任务:

正确运用软件测试技术和方法,完成系统的单元测试、综合测试、确认测试、系统测试的方法,掌握测试用例的设计方法,并给出测试报告。

二、内容、要求与安排方式

1、实验内容与要求:

(1)能够正确运用软件测试的过程与方法,结合一个模拟课题,复习、巩固、软件工程中系统测试知识,提高软件测试的实践能力。

(2)熟悉单元测试、综合测试、确认测试、系统测试的方法,掌握测试用例的设计方法。

(3)树立正确的软件测试思想,培养分析问题、解决问题的能力,提高查询资料和撰写书面文件的能力。

2、实验安排方式:

本实验每组1人,每人1台计算机。

三、思考题

1.怎样看待测试的重要性。

2.怎样选择测试的技术和方案。

3.比较逻辑测试和基本路径测试的不同和联系。

4.怎样组织对测试阶段工作的评审?

附录一:

实验题目

题目一:

教务管理系统之子系统——学院课程安排

1.系统简介

每个学期的期中,学校教务处向各个学院发出下各学期的教学计划,包括课程名称、课程代码、课时、班级类别(本科、专科、成人教育、研究生)、班号等;学院教学主管人员根据教学任务和要求给出各个课程的相关限制(如:

任课教师的职称、上课的班数、最高和最低周学时数等);任课教师自报本人授课计划,经所在教研室协调任可,将教学计划上交学院主管教学计划的人员,批准后上报学校教务处,最终由教务处给出下个学期全学院教师的教学任务书。

假设上述排课过程全部由人工操作,现要求为上述过程实现计算机自动处理过程。

2.限定条件

(1)每位教师的主讲课程门数不超过2门/学期:

讲师以下职称的教师不能承担学院定主课的主讲任务。

(2)学院中层干部的主讲课时不能超过4学时/周。

(3本学期出现严重教学事故的教师不能承担下各学期的主讲任务。

(4)本系统的输入项至少包括:

教务处布置的教学计划,学院教师自报的授课计划和学院定的有关授课限制条件。

(5)本系统的输出项至少包括:

教务处最终下达全院教师的教学任务书和学院各个班级下各学期的课程表(可以不含上课地点)。

 

题目二:

学校教材定购系统

1.系统简介

本系统可以细化为两个子系统:

销售系统和采购系统

销售系统的主要工作过程为:

首先由教师或学生提交购书单,经教材发行人员审核是有效购书单后,开发票、登记并返给教师或学生领书单,教师或学生可以到书库领书。

采购系统的主要工作过程为:

若是教材脱销,则登记缺书,发缺书单给书库采购人员;一旦新书入库后,即发进书通知给教材发行人员。

以上功能要求在计算机上实现。

2.技术要求和限制条件

(1)当书库中的各种书籍数量发生变化(包括进书和出书)时,都应修改相关的书库记录,如库存表或进/出库表。

(2)在实现上述销售和采购的工作过程时,需考虑有关的合法性验证。

(3)系统的外部项至少包括:

教师、学生和教材工作人员。

(4)系统的相关数据存储至少包括:

购书表、库存表、缺书登记表、待购教材表、进库表和出库表。

 

题目三:

学校内部工资管理系统

1.系统简介

假设学校共有教职工约1000人,10个行政部门和8个系。

每个月20日前各个部门(包括系和部门)要将出勤情况上报人事处,23日前人事处将出勤工资、奖金及扣款清单送到财务处。

财务处于每个月月底将教职工的工资表做好并将数据送银行。

每个月3日将工资条发给每个单位。

若由员工调入或调出、校内调动、离退休变化,则由人事处通知相关部门和财务处。

2.技术要求和限制条件

(1)本系统的数据存储至少包括:

工资表、部门汇总表、扣税款表、银行发放表等。

(2)除人事处、财务处外,其他职能部门和系名称可以简化表示。

(3)工资、奖金、扣款细节由学生自定义。

 

题目四:

实验室设备管理系统

1.系统简介

每学年要对实验室设备使用情况进行统计、更新。

其中:

(1)对于已彻底损坏的做报废处理,同时详细记录有关信息。

(2)对于由严重问题(故障)的要及时修理,并记录修理日期、设备名、编号、修理厂家、修理费用、责任人等。

(3)对于急需修改但又缺少的设备,需以“申请表”的形式送交上级领导请求批准购买。

新设备购入后要立即进行设备登记(包括类别、设备名、编号、型号、规格、单价、数量、购置日期、生产厂家、保质期和经办人等信息),同时更新申请表的内容。

(4)随时对现有设备及其修理、报废情况进行统计、查询,要求能够按类别和时间段等查询。

2.技术要求及限制条件

(1)所有工作由专门人员负责完成,其他人不得任意使用。

(2)每件设备在做入库登记时均由系统按类别加自动顺序号编号,形成设备号;设备报废时要及时修改相应的设备记录,且有领导认可。

(3)本系统的数据存储至少包括:

设备记录、修理记录、报废记录、申请购买记录。

(4)本系统的输入项至少包括:

新设备信息、修理信息、申请购买信息、具体查询统计要求。

(5)本系统的输出项至少包括:

设备购买申请表、修理/报废设备资金统计表。

附录二:

软件开发文档指南:

一、可行性研究报告

1引言

1.1编写目的

说明编写本可行性研究报告的目的,指出预期的读者。

1.2背景

说明:

A.所建议开发的软件系统的名称;

B.本项目的任务提出者、开发者、用户及实现该软件的计算中心或计算机网络;

C.该软件系统同其他系统或其他机构的基本的相互来往关系。

1.3定义

列出本文件中用到的专门术语的定义和外文首字母组词的原词组。

1.4参考资料

列出用得着的参考资料,如:

1.本项目的经核准的计划任务书或合同、上级机关的批文;

2.属于本项目的其他已发表的文件;

3.本文件中各处引用的文件、资料,包括所需用到的软件开发标准。

列出这些文件资料的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。

2可行性研究的前提

说明对所建议的开发项目进行可行性研究的前提,如要求、目标、假定、限制等。

2.1要求

说明对所建议开发的软件的基本要求,如:

A.功能;

B.性能;

C.输出如报告、文件或数据,对每项输出要说明其特征,如用途、产生频度、接口以及分发对象;

D.输入说明系统的输入,包括数据的来源、类型、数量、数据的组织以及提供的频度;

E.处理流程和数据流程用图表的方式表示出最基本的数据流程和处理流程,并辅之以叙述;

F.在安全与保密方面的要求;

G.同本系统相连接的其他系统;

H.完成期限。

2.2目标

说明所建议系统的主要开发目标,如:

A.人力与设备费用的减少;

B.处理速度的提高;

C.控制精度或生产能力的提高;

D.管理信息服务的改进;

E.自动决策系统的改进;

F.人员利用率的改进。

2.3条件、假定和限制

说明对这项开发中给出的条件、假定和所受到的限制,如:

a.所建议系统的运行寿命的最小值;

b.进行系统方案选择比较的时间;

c.经费、投资方面的来源和限制;

d.法律和政策方面的限制;

e.硬件、软件、运行环境和开发环境方面的条件和限制;

f.可利用的信息和资源;

g.系统投入使用的最晚时间。

2.4进行可行性研究的方法

说明这项可行性研究将是如何进行的,所建议的系统将是如何评价的。

摘要说明所使用的基本方法和策略,如调查、加权、确定模型、建立基准点或仿真等。

2.5评价尺度

说明对系统进行评价时所使用的主要尺度,如费用的多少、各项功能的优先次序、开发时间的长短及使用中的难易程度。

3对现有系统的分析

这里的现有系统是指当前实际使用的系统,这个系统可能是计算机系统,也可能是一个机械系统甚至是一个人工系统。

分析现有系统的目的是为了进一步阐明建议中的开发新系统或修改现有系统的必要性。

3.1处理流程和数据流程

说明现有系统的基本的处理流程和数据流程。

此流程可用图表即流程图的形式表示,并加以叙述。

3.2工作负荷

列出现有系统所承担的工作及工作量。

3.3费用开支

列出由于运行现有系统所引起的费用开支,如人力、设备、空间、支持性服务、材料等项开支以及开支总额。

3.4人员

列出为了现有系统的运行和维护所需要的人员的专业技术类别和数量。

3.5设备

列出现有系统所使用的各种设备。

3.6局限性

列出本系统的主要的局限性,例如处理时间赶不上需要,响应不及时,数据存储能力不足,处理功能不够等。

并且要说明,为什么对现有系统的改进性维护已经不能解决问题。

4所建议的系统

本章将用来说明所建议系统的目标和要求将如何被满足。

4.1对所建议系统的说明

概括地说明所建议系统,并说明在第2章中列出的那些要求将如何得到满足,说明所使用的基本方法及理论根据。

4.2处理流程和数据流程

给出所建议系统的处理流程和数据流程。

4.3改进之处

按2.2条中列出的目标,逐项说明所建议系统相对于现存系统具有的改进。

4.4影响

说明在建立所建议系统时,预期将带来的影响,包括:

4.4.1对设备的影响

说明新提出的设备要求及对现存系统中尚可使用的设备须作出的修改。

4.4.2对软件的影响

说明为了使现存的应用软件和支持软件能够同所建议系统相适应。

而需要对这些软件所进行的修改和补充。

4.4.3对用户单位机构的影响

说明为了建立和运行所建议系统,对用户单位机构、人员的数量和技术水平等方面的全部要求。

4.4.4对系统运行过程的影响

说明所建议系统对运行过程的影响,如:

a.用户的操作规程;

b.运行中心的操作规程;

c.运行中心与用户之间的关系;

d.源数据的处理;

e.数据进入系统的过程;

f.对数据保存的要求,对数据存储、恢复的处理;

g.输出报告的处理过程、存储媒体和调度方法;

h.系统失效的后果及恢复的处理办法。

4.4.5对开发的影响

说明对开发的影响,如:

a.为了支持所建议系统的开发,用户需进行的工作;

b.为了建立一个数据库所要求的数据资源;

c.为了开发和测验所建议系统而需要的计算机资源;

d.所涉及的保密与安全问题。

4.4.6对地点和设施的影响

说明对建筑物改造的要求及对环境设施的要求。

4.4.7对经费开支的影响

扼要说明为了所建议系统的开发,设计和维持运行而需要的各项经费开支。

4.5局限性

说明所建议系统尚存在的局限性以及这些问题未能消除的原因。

4.6技术条件方面的可行性

本节应说明技术条件方面的可行性,如:

a.在当前的限制条件下,该系统的功能目标能否达到;

b.利用现有的技术,该系统的功能能否实现;

c.对开发人员的数量和质量的要求并说明这些要求能否满足;

d.在规定的期限内,本系统的开发能否完成。

5可选择的其他系统方案

扼要说明曾考虑过的每一种可选择的系统方案,包括需开发的和可从国内国外直接购买的,如果没有供选择的系统方案可考虑,则说明这一点。

5.1可选择的系统方案1

参照第4章的提纲,说明可选择的系统方案1,并说明它未被选中的理由。

5.2可选择的系统方案2

按类似5.1条的方式说明第2个乃至第n个可选择的系统方案。

......

6投资及效益分析

6.1支出

对于所选择的方案,说明所需的费用。

如果已有一个现存系统,则包括该系统继续运行期间所需的费用。

6.1.1基本建设投资

包括采购、开发和安装下列各项所需的费用,如:

a.房屋和设施;

b.ADP设备;

c.数据通讯设备;

d.环境保护设备;

e.安全与保密设备;

f.ADP操作系统的和应用的软件;

g.数据库管理软件。

6.1.2其他一次性支出

包括下列各项所需的费用,如:

a.研究(需求的研究和设计的研究);

b.开发计划与测量基准的研究;

c.数据库的建立;

d.ADP软件的转换;

e.检查费用和技术管理性费用;

f.培训费、旅差费以及开发安装人员所需要的一次性支出;

g.人员的退休及调动费用等。

6.1.3非一次性支出

列出在该系统生命期内按月或按季或按年支出的用于运行和维护的费用,包括:

a.设备的租金和维护费用;

b.软件的租金和维护费用;

c.数据通讯方面的租金和维护费用;

d.人员的工资、奖金;

e.房屋、空间的使用开支;

f.公用设施方面的开支;

g.保密安全方面的开支;

h.其他经常性的支出等。

6.2收益

对于所选择的方案,说明能够带来的收益,这里所说的收益,表现为开支费用的减少或避免、差错的减少、灵活性的增加、动作速度的提高和管理计划方面的改进等,包括;

6.2.1一次性收益

说明能够用人民币数目表示的一次性收益,可按数据处理、用户、管理和支持等项分类叙述,如:

a.开支的缩减包括改进了的系统的运行所引起的开支缩减,如资源要求的减少,运行效率的改进,数据进入、存贮和恢复技术的改进,系统性能的可监控,软件的转换和优化,数据压缩技术的采用,处理的集中化/分布化等;

b.价值的增升包括由于一个应用系统的使用价值的增升所引起的收益,如资源利用的改进,管理和运行效率的改进以及出错率的减少等;

c.其他如从多余设备出售回收的收入等。

6.2.2非一次性收益

说明在整个系统生命期内由于运行所建议系统而导致的按月的、按年的能用人民币数目表示的收益,包括开支的减少和避免。

6.2.3不可定量的收益

逐项列出无法直接用人民币表示的收益,如服务的改进,由操作失误引起的风险的减少,信息掌握情况的改进,组织机构给外界形象的改善等。

有些不可捉摸的收益只能大概估计或进行极值估计(按最好和最差情况估计)。

6.3收益/投资比

求出整个系统生命期的收益/投资比值。

6.4投资回收周期

求出收益的累计数开始超过支出的累计数的时间。

6.5敏感性分析

所谓敏感性分析是指一些关键性因素如系统生命期长度、系统的工作负荷量、工作负荷的类型与这些不同类型之间的合理搭配、处理速度要求、设备和软件的配置等变化时,对开支和收益的影响最灵敏的范围的估计。

在敏感性分析的基础上做出的选择当然会比单一选择的结果要好一些。

7社会因素方面的可行性

本章用来说明对社会因素方面的可行性分析的结果,包括:

7.1法律方面的可行性

法律方面的可行性问题很多,如合同责任、侵犯专利权、侵犯版权等方面的陷井,软件人员通常是不熟悉的,有可能陷入,务必要注意研究。

7.2使用方面的可行性

例如从用户单位的行政管理、工作制度等方面来看,是否能够使用该软件系统;从用户单位的工作人员的素质来看,是否能满足使用该软件系统的要求等等,都是要考虑的。

8结论

在进行可行性研究报告的编制时,必须有一个研究的结论。

结论可以是:

a.可以立即开始进行;

b.需要推迟到某些条件(例如资金、人力、设备等)落实之后才能开始进行;

c.需要对开发目标进行某些修改之后才能开始进行;

d.不能进行或不必进行(例如因技术不成熟、经济上不合算等)。

二、软件需求说明书的编写提示

1引言

1.1编写目的

说明编写这份软件需求说明书的目的,指出预期的读者。

1.2背景

说明:

a.待开发的软件系统的名称;

b.本项目的任务提出者、开发者、用户及实现该软件的计算中心或计算机网络;

c.该软件系统同其他系统或其他机构的基本的相互来往关系。

1.3定义

列出本文件中用到的专门术语的定义和外文首字母组词的原词组。

1.4参考资料

列出用得着的参考资料,如:

a.本项目的经核准的计划任务书或合同、上级机关的批文;

b.属于本项目的其他已发表的文件;

c.本文件中各处引用的文件、资料、包括所要用到的软件开发标准。

列出这些文件资料的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。

2任务概述

2.1目标

叙述该项软件开发的意图、应用目标、作用范围以及其他应向读者说明的有关该软件开发的背景材料。

解释被开发软件与其他有关软件之间的关系。

如果本软件产品是一项独立的软件,而且全部内容自含,则说明这一点。

如果所定义的产品是一个更大的系统的一个组成部分,则应说明本产品与该系统中其他各组成部分之间的关系,为此可使用一张方框图来说明该系统的组成和本产品同其他各部分的联系和接口。

|

2.2用户的特点

列出本软件的最终用户的特点,充分说明操作人员、维护人员的教育水平和技术专长,以及本软件的预期使甩频度。

这些是软件设计工作的重要约束

2.3假定和约束

列出进行本软件开发工作的假定和约束,例如经费限制、开发期限等。

3需求规定

3.1对功能的规定

用列表的方式(例如IPO表即输入、处理、输出表的形式),逐项定量和定性地叙述对软件所提出的功能要求,说明输入什么量、经怎样的处理、得到什么输出,说明软件应支持的终端数和应支持的并行操作的用户数。

3.2对性能的规定

3.2.1精度

说明对该软件的输入、输出数据精度的要求,可能包括传输过程中的精度。

3.2.2时间特性要求

说明对于该软件的时间特性要求,如对:

a.响应时间;

b.更新处理时间;

c.数据的转换和传送时间;

d.解题时间;等的要求。

3.2.3灵活性

说明对该软件的灵活性的要求,即当需求发生某些变化时,该软件对这些变化的适应能力,如:

a.操作方式上的变化;

b.运行环境的变化;

c.同其他软件的接口的变化;

d.精度和有效时限的变化;

e.计划的变化或改进。

对于为了提供这些灵活性而进行的专门设计的部分应该加以标明。

3.3输人输出要求

解释各输入输出数据类型,并逐项说明其媒体、格式、数值范围、精度等。

对软件的数据输出及必须标明的控制输出量进行解释并举例,包括对硬拷贝报告(正常结果输出、状态输出及异常输出)以及图形或显示报告的描述。

3.4数据管理能力要求

说明需要管理的文卷和记录的个数、表和文卷的大小规模,要按可预见的增长对数据及其分量的存储要求作出估算。

3.5故障处理要求

列出可能的软件、硬件故障以及对各项性能而言所产生的后果和对故障处理的要求。

3.6其他专门要求

如用户单位对安全保密的要求,对使用方便的要求,对可维护性、可补充性、易读性、可靠性、运行环境可转换性的特殊要求等。

4运行环境规定

4.1设备

列出运行该软件所需要的硬设备。

说明其中的新型设备及其专门功能,包括:

a.处理器型号及内存容量;

b.外存容量、联机或脱机、媒体及其存储格式,设备的型号及数量;

c.输入及输出设备的型号和数量,联机或脱机;

d.数据通信设备的型号和数量;

e.功能键及其他专用硬件

4.2支持软件

列出支持软

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 文学

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

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