实验指导.docx
- 文档编号:23626423
- 上传时间:2023-05-19
- 格式:DOCX
- 页数:19
- 大小:203.02KB
实验指导.docx
《实验指导.docx》由会员分享,可在线阅读,更多相关《实验指导.docx(19页珍藏版)》请在冰豆网上搜索。
实验指导
《软件工程》实验指导书
目录(Contents)
第一章概述(Overview)1
第二章实验内容(Experiments)2
附录一:
实验要求4
附录二:
实验题目4
附录三:
实验报告(Reports)7
附录四:
设计范例9
第一章概述(Overview)
一、实验目的:
软件工程实验是为计算机相关专业本科《软件工程》课程配套设置的,是该课程讲授中一个重要的实践环节。
其目的是使学生能够针对具体软件工程项目,全面掌握软件工程管理、软件需求分析、软件总体设计、软件详细设计、软件测试等阶段的方法和技术,通过该课程设计使学生进一步理解和掌握软件开发模型、软件生命周期、软件过程等理论在软件项目开发过程中的意义和作用,培养学生按照软件工程的原理、方法、技术、标准和规范进行软件开发的能力,培养学生的合作意识和团队精神,培养学生对技术文档的编写能力,从而使学生提高软件工程的综合能力,提高软件项目的管理能力。
按该课程的特点,实验内容包括软件开发的两大方法学的专题训练,即结构化(生命周期学)的方法学和面向对象的方法学,通过对一个简单项目,要求学生利用结构化软件开发技术或面向对象的软件开发技术完成对该项目的开发。
主要设置三个实验项目,从项目需求分析,项目设计到编码测试,覆盖软件开发的整个过程,此外又引入我国国家《计算机开发规范》,以规范技术文档的书写标准,提高实验教学质量。
通过实验训练,达到如下目的:
综合利用一门编程语言、数据库概论和软件工程三门课程的知识软件系统开发过程,使学生进一步了解和掌握软件工程原理,提高对实际项目的分析和设计能力。
通过实验课程,熟悉和基本掌握软件工程方法学、软件开发的过程,文档资料的编写格式及规范,全面领会和贯通所学习的理论知识,从而培养学生综合运用所学课程知识,分析解决问题的能力,培养学生理论联系实际作风,实事求是,严肃认真的科学态度和良好的工作作风,为今后从事科学研究工作打下基础。
二、面向专业:
计算机科学与技术、信息管理、电子商务
三、先修课程:
一门计算机高级语言、数据库概论
四、实验学时数:
10学时
五、实验环境
硬件设备:
主流的计算机
软件环境:
建模工具:
VISIO或者Rose
办公软件:
Word
开发工具:
自选
六、成绩考核
分实验报告和考勤两项来考核。
实验报告要求在2012年6月22日前上交。
第二章实验内容(Experiments)
实验一:
项目需求分析
1.实验目的:
确定课题,合理分工,熟悉软件开发环境,培养团队精神。
确定项目的可实施性,在此基础上完成系统的逻辑功能模型的建立,使同学们掌握结构化数据流分析技术。
2.实验要求:
根据各组选择的课题,实行项目经理制,各组推荐一名组长统一管理整个项目的实施过程,并合理调整资源和负责项目全局;
要求做到使用结构化数据流分析技术分析课题需求,写出详细的数据流图和数据字典,数据流图的基本处理的个数不得少与5个。
3.实验内容:
学习软件开发小组的组织和管理,合理分工,将项目开发各阶段的任务明确,并熟悉相应的软件开发环境。
采用不同的软件开发技术、进行软件系统需求分析,得出系统得数据流图,数据字典以及规格说明书。
4.实验步骤:
1.到相关单位进行需求分析。
2.综合利用Internet网和相关书籍整理并完善需求分析。
3.画出系统数据流图(分清系统是事务型还是加工型)。
4.得出系统数据字典。
5.思考题
1、项目开发首先要做的事是什么?
2、你认为怎样分工是最合理的?
3、需求分析在软件开发中真的有那么重要吗?
4、分析系统流程图,流程图和数据流图的区别和各自的特点。
5、怎样组织对该工作的评审?
实验二:
项目设计
1.实验目的:
在实验一基础上完成系统的体系结构的建立和系统详细设计,并给出相应的规格说明书,通过实例使同学们掌握结构化程序设计的基本概念与技术。
2.实验要求:
认真分析实验一的结果,给出系统合理的体系结构,描绘系统结构图,并合理划分系统的各组成模块,最后给出系统的各部分设计规格说明书。
要求做到对上一实验的软件需求进行软件结构设计,模块数不少于四个。
然后再进行详细设计。
3.实验内容:
功能结构图设计,软件处理流程设计,输出设计(主要指打印输出设计),存储文件格式设计(数据库结构设计),输入设计(主要指数据录入卡设计),代码设计,程序设计说明书
4.实验步骤:
1.首先进行总体设计(分清系统是事务型还是加工型)。
2.再进行详细设计。
5.思考题
1.系统设计和需求分析的关系是什么?
两者必须先后关联吗?
2.怎样描绘系统的体系结构?
3.怎样绘制复合规范的流程图。
4.怎样组织对设计阶段工作的评审?
实验三:
编码测试
1.实验目的:
在实验二的基础上完成对系统的组装和测试,通过实例使同学们掌握软件编码和测试的一般步骤。
2.实验要求:
要求对上一实验所得详细设计结果进行编写程序并进行测试。
(1)能够正确运用软件测试的过程与方法,结合一个模拟课题,复习、巩固、软件工程中系统测试知识,提高软件测试的实践能力。
(2)熟悉单元测试、综合测试、确认测试、系统测试的方法,掌握测试用例的设计方法。
(3)树立正确的软件测试思想,培养分析问题、解决问题的能力,提高查询资料和撰写书面文件的能力,并掌握程序修改的常用技术。
3.实验内容:
首先编写程序代码,然后正确运用软件测试技术和方法,完成系统的单元测试、综合测试、确认测试、系统测试的方法,掌握测试用例的设计方法,并给出测试报告。
4.实验步骤:
1.首先进行编码,并设计测试方案(分别采用白盒法和黑盒法)。
2.进行测试。
3.对于出错的程序进行修改。
4.并不断循环直至程序符合要求。
5.写出测试说明书。
5.思考题
1.怎样看待测试的重要性。
2.怎样选择测试的技术和方案。
3.比较逻辑测试和基本路径测试的不同和联系。
4.怎样组织对测试阶段工作的评审?
附录一:
实验要求
软件工程实验要求学生采用“项目小组”的形式,结合具体的开发项目进行设计。
具体要求如下:
1.班级按项目小组进行分组,每组不得超过6人,题目自定或采用附录二中的题目。
2.每个项目小组选出项目负责人,召集项目组成员讨论、选定开发项目,项目中的每项任务要落实到人,软件开发的方法自定(结构化或面向对象的方法学)。
3.每个项目小组必须参照《软件工程实验指导书》附录三中给定的实验报告格式填写实验报告。
要求每位学生独立完成。
每个设计性实验完成之后,学生应提交一份相应的实验报告。
学生完成实验后应提交的报告内容参见下表:
序号
实验项目名称
学时
提交报告内容
1
结构化/面向对象分析
2
软件需求分析报告
2
结构化/面向对象设计
4
软件设计报告
3
编码和测试
4
编码及测试报告
带有规范注释的源代码及可运行程序
附录二:
实验题目
题目一:
“教务管理系统之子系统——学院课程安排”
1.系统简介
每个学期的期中,学校教务处向各个学院发出下各学期的教学计划,包括课程名称、课程代码、课时、班级类别(本科、专科、成人教育、研究生)、班号等;学院教学主管人员根据教学任务和要求给出各个课程的相关限制(如:
任课教师的职称、上课的班数、最高和最低周学时数等);任课教师自报本人授课计划,经所在教研室协调任可,将教学计划上交学院主管教学计划的人员,批准后上报学校教务处,最终由教务处给出下个学期全学院教师的教学任务书。
假设上述排课过程全部由人工操作,现要求为上述过程实现计算机自动处理过程。
2.限定条件
(1)每位教师的主讲课程门数不超过2门/学期:
讲师以下职称的教师不能承担学院定主课的主讲任务。
(2)学院中层干部的主讲课时不能超过4学时/周。
(3本学期出现严重教学事故的教师不能承担下各学期的主讲任务。
(4)本系统的输入项至少包括:
教务处布置的教学计划,学院教师自报的授课计划和学院定的有关授课限制条件。
(5)本系统的输出项至少包括:
教务处最终下达全院教师的教学任务书和学院各个班级下各学期的课程表(可以不含上课地点)。
题目二:
“学校教材定购系统”
1.系统简介
本系统可以细化为两个子系统:
销售系统和采购系统
销售系统的主要工作过程为:
首先由教师或学生提交购书单,经教材发行人员审核是有效购书单后,开发票、登记并返给教师或学生领书单,教师或学生可以到书库领书。
采购系统的主要工作过程为:
若是教材脱销,则登记缺书,发缺书单给书库采购人员;一旦新书入库后,即发进书通知给教材发行人员。
以上功能要求在计算机上实现。
2.技术要求和限制条件
(1)当书库中的各种书籍数量发生变化(包括进书和出书)时,都应修改相关的书库记录,如库存表或进/出库表。
(2)在实现上述销售和采购的工作过程时,需考虑有关的合法性验证。
(3)系统的外部项至少包括:
教师、学生和教材工作人员。
(4)系统的相关数据存储至少包括:
购书表、库存表、缺书登记表、待购教材表、进库表和出库表。
题目三:
“机票预定系统”
1.系统简介
航空公司为给旅客乘机提供方便,需要开发一个机票预定系统。
各个旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码(护照号码)、旅行时间、旅行始发地和目的地,航班舱位要求等)输入到系统中,系统为旅客安排航班。
当旅客交付了预订金后,系统打印出取票通知和帐单给旅客,旅客在飞机起飞前一天凭取票通知和帐单交款取票,系统核对无误即打印出机票给旅客。
此外航空公司为随时掌握各个航班飞机的乘载情况,需要定期进行查询统计,以便适当调整。
2.技术要求和限制条件
(1)在分析系统功能时要考虑有关证件的合法性验证(如身份证、取票通知和交款发票)等。
(2)对于本系统还应补充一下功能:
1.旅客延误了取票时间的处理
2.航班取消后的处理
3.旅客临时更改航班的处理
(3)系统的外部输入项至少包括:
旅客、旅行社和航空公司。
题目四:
“学校内部工资管理系统”
1.系统简介
假设学校共有教职工约1000人,10个行政部门和8个系。
每个月20日前各个部门(包括系和部门)要将出勤情况上报人事处,23日前人事处将出勤工资、奖金及扣款清单送到财务处。
财务处于每个月月底将教职工的工资表做好并将数据送银行。
每个月3日将工资条发给每个单位。
若由员工调入或调出、校内调动、离退休变化,则由人事处通知相关部门和财务处。
2.技术要求和限制条件
(1)本系统的数据存储至少包括:
工资表、部门汇总表、扣税款表、银行发放表等。
(2)除人事处、财务处外,其他职能部门和系名称可以简化表示。
(3)工资、奖金、扣款细节由学生自定义。
题目五:
“实验室设备管理系统”
1.系统简介
每学年要对实验室设备使用情况进行统计、更新。
其中:
(1)对于已彻底损坏的做报废处理,同时详细记录有关信息。
(2)对于由严重问题(故障)的要及时修理,并记录修理日期、设备名、编号、修理厂家、修理费用、责任人等。
(3)对于急需修改但又缺少的设备,需以“申请表”的形式送交上级领导请求批准购买。
新设备购入后要立即进行设备登记(包括类别、设备名、编号、型号、规格、单价、数量、购置日期、生产厂家、保质期和经办人等信息),同时更新申请表的内容。
(4)随时对现有设备及其修理、报废情况进行统计、查询,要求能够按类别和时间段等查询。
2.技术要求及限制条件
(1)所有工作由专门人员负责完成,其他人不得任意使用。
(2)每件设备在做入库登记时均由系统按类别加自动顺序号编号,形成设备号;设备报废时要及时修改相应的设备记录,且有领导认可。
(3)本系统的数据存储至少包括:
设备记录、修理记录、报废记录、申请购买记录。
(4)本系统的输入项至少包括:
新设备信息、修理信息、申请购买信息、具体查询统计要求。
本系统的输出项至少包括:
设备购买申请表、修理/报废设备资金统计表
附录三:
实验报告(Reports)
实验题目:
实验一:
项目需求分析
1.软件系统需求描述:
2.软件系统数据流图(由加工、数据流、文件、源点和终点四种元素组成):
1)顶层数据流图
2)一层数据流图
3)二层数据流图
4)总数据流图
3.软件系统数据字典:
1.数据流条目
2.加工条目
3.文件条目
实验二:
项目设计
1.软件系统模块结构图:
2.软件系统其中的3个模块的详细设计(画程序流程图):
实验三:
编码测试
1.软件系统其中的2个模块的编码:
2.设计测试用例15个(白盒法10个,黑盒法5个):
类型
测试用例
发现的问题
白
盒
法
黑
盒
法
附录四:
设计范例
设计题目:
开发基于Web的高校教学资料管理系统
一、需求描述
利用C#.NET作为开发工具、SQLServer2000作为数据库开发一个基于WEB的高校教学资料网络管理系统。
要求实现如下功能:
1.教学资料录入;
2.教学资料修改;
3.教学资料审核;
4.教学资料打印;
随着信息时代的到来,高校的信息化建设显得愈来愈重要。
本系统是从某大学的实际出发,针对学校的教学资料管理的现状,经过详细的系统调查,为学校“量体裁衣”开发出的一个基于Web的教学资料管理系统。
其目的是改善高校工作运行效率和效果,提高高校资料的管理水平和整体素质,加快高校的信息化建设。
本管理系统是采用当今流行的C#开发而成。
作为一种面向对象的编程语言,它对系统的设计起到了很大的帮助。
另外作为开发环境的A是一种建立在通用语言上的程序框架,能够只用一台Web服务器来建立强大的Web应用程序。
后台数据库使用的是SQLServer2000,在此数据库中进行相关的操作直观、简单,为本系统的开发提供了很大的方便。
教学资料管理系统包括对教学日历,课程教学小结,教学时间分配,试卷分析以及毕业论文送审表的录入、修改、删除和审核。
二、数据流图(DFD)
管理请求
审核要求
教学资料表
教学资料表
顶层图
1层数据流图
教学日历表
教学资料
教学日历表
三、设计(包括总体设计和详细设计)
1、系统模块结构图和界面
2.详细设计
1)登陆模块
2)用户注册模块
四、编码
编码就是将详细设计的程序流程图翻译成某种语言所写成的代码,同学们可以选择自己熟悉的编程语言来进行,VB6.0,Dephi6.0,PB7.0,C++Builder,VC++,C#,VB.Net等都可以。
五、测试和调试
现在测试登录模块,只有输入正确的用户名和密码,才能打开下一个窗体,如果用户名或密码有一个不对或两个都不对,则不能打开下一个窗体,提示用户不是一个合法用户。
假设正确的用户名和密码是:
Bajao;Totti,因此可设计一组测试用例:
1)用户名<>Bajao密码<>Totti
2)用户名<>Bajao密码=Totti
3)用户名=Bajao密码<>Totti
4)用户名=Bajao密码=Totti
这一组测试可以检测出登录模块的编码是否满足功能要求。
调试就是依据测试发现的问题而修改程序代码,直到测试不再发现问题。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 指导