1、软件工程实验指导书软件工程实验指导书课 程 号:B11050053适用专业:软件工程制 定 人:苍老师教 研 室:数字媒体教研室江西农业大学软件学院2011 年9 月前 言软件工程实验是为计算机相关专业本科软件工程课程配套设置的,是软件工程课程讲授中一个重要的、不可或缺的实践环节。其目的是使学生能够针对具体软件工程项目,全面掌握软件工程管理、软件需求分析、软件初步设计、软件详细设计、软件测试等阶段的方法和技术,通过该课程设计使学生进一步理解和掌握软件开发模型、软件生命周期、软件过程等理论在软件项目开发过程中的意义和作用,培养学生按照软件工程的原理、方法、技术、标准和规范,进行软件开发的能力,培
2、养学生的合作意识和团队精神,培养学生对技术文档的编写能力,从而使学生提高软件工程的综合能力,提高软件项目的管理能力。按该课程的特点,实验内容包括软件开发两大方法学的专题训练,即结构化的方法学和面向对象的方法学。通过对一个简实际项目,要求学生利用结构化软件开发技术或面向对象的软件开发技术完成对该项目的开发。此外又引入我国国家计算机开发规范,以规范技术文档的书写标准,提高实验教学质量。通过实验训练,达到如下目的:使学生进一步了解和掌握软件工程原理,提高对实际项目的分析和设计能力,通过实验课程,熟悉和基本掌握软件工程方法学、软件开发的过程,文档资料的编写格式及规范,全面领会和贯通所学习的理论知识,从
3、而培养学生综合运用所学课程知识,分析解决问题的能力,培养学生理论联系实际作风,实事求是,严肃认真的科学态度和良好的工作作风,为今后从事教学工作或科学研究工作打下扎实的基础。实验总体要求软件工程实验要求选定课题,严格按照软件工程的开发方法进行开发。实验的具体要求如下:题目自定或采用附录一中的题目;每个项目小组必须按照附录二中给定的文档规范标准撰写项目文档;软件开发的方法自定(结构化或面向对象的方法学)。实验内容安排:实验一:项目选题立项与可行性研究实验二:项目需求分析实验三:项目概要设计实验四:数据库设计实验五:项目详细设计实验六:面向对象分析与设计附录说明附录一:实验课题附录二:软件开发文档指
4、南(国家标准)附录三:航空机票预订系统项目开发文档实验一:项目选题立项与可行性研究实验学时:2 实验类型:验证型一、实验目的与要求1、根据给定的题目或自选题目选定一个课题。2、根据课题背景,进行项目的可行性研究。3、学习使用Visio工具软件绘制软件结构图、系统流程图、数据流图。4、按照可行性研究报告的格式,撰写可行性研究报告。二、实验内容与安排方式1、实验内容:充分查阅相关资料,自选题目或从给定的题目中选定一个课题。选定的课题将作为实验和课程设计的训练课题,贯穿始终。熟悉Visio软件开发工具的使用环境,学习使用Visio绘图。阅读相关的国家有关软件开发的标准文档。根据提供的课题需求和条件,
5、按照软件开发国家标准可行性报告书写格式,写出该课题的可行性报告。2、实验安排方式:本实验每组1人,每人1台计算机。三、思考题1、为什么要进行可行性研究 ?2、从哪些方面进行可行性研究 ?3、可行性研究的结果对项目有什么影响 ?实验二:项目需求分析实验学时:2 实验类型:验证型一、实验目的与要求1、掌握需求分析的基本步骤和方法。2、根据选定的课题背景和可行性研究报告,完成系统逻辑功能模型的建立。3、绘制软件系统流程图、数据流图、功能分析图。4、按照软件需求说明书的格式,撰写软件需求说明书。二、实验内容与安排方式1、实验内容与要求:(1)将自己或同学作为系统的用户,确定系统的需求。(2)分析系统的
6、数据要求。(3)用工具软件绘制软件系统流程图、数据流图和实体-联系图,编写数据字典,数据加工处理的描述,描述系统的逻辑模型。(4)按要求撰写需求规格说明书。2、实验安排方式:本实验每组1人,每人1台计算机。三、思考题1、需求分析在软件开发中有什么作用?2、分析系统流程图和数据流图的区别和各自的特点。3、怎样写合乎规范的数据流图和数据词典?实验三:项目概要设计实验学时:2 实验类型:设计型一、实验目的与要求1、掌握概要设计的基本方法。2、根据项目需求分析,进行软件结构设计,合理划分系统功能模块。3、掌握面向数据流的设计方法。4、按照概要设计说明书的格式,撰写概要设计说明书。二、实验内容与安排方式
7、1、实验内容:(1)从需求分析阶段得出的数据流图出发,用面向数据流的设计方法,设计系统的最佳实现方案。(2)对软件进行功能模块划分,设计软件结构.(3)撰写概要设计说明书。(4)由于先修课程中没有学习数据库设计,因此概要设计中的数据库设计单独在实验四中完成,以加强数据库设计基础知识方面的学习。2、实验安排方式:本实验每组1人,每人1台计算机。三、思考题1、概要设计通常有哪些步骤?2、怎样描绘系统的体系结构?3、什么是面向数据流的设计方法?实验四:数据库设计实验学时:2 实验类型:设计型一、实验目的与要求1、学习Access数据库的使用方法。2、掌握基本的SQL查询语句的写法。3、根据数据字典设
8、计系统的数据库。4、撰写数据库设计文档。二、实验内容与安排方式1、实验内容:(1)熟悉Access的使用环境,学习Access数据库的使用方法。(2)在系统需求分析中系统数据要求的基础上,根据数据字典设计系统的数据库。(3)撰写数据库设计文档。2、实验安排方式:本实验每组1人,每人1台计算机。三、思考题1、常用的数据库软件有哪些?2、数据库在系统中有什么作用?3、怎样合理地进行数据库设计?实验五:项目详细设计实验学时:2 实验类型:设计型一、实验目的与要求1、掌握详细设计的基本方法。2、根据项目概要设计,进行模块程序设计。3、掌握使用过程设计工具描述模块的详细数据结构和算法。4、根据详细设计说
9、明书的格式,撰写详细设计说明书。二、实验内容与安排方式1、实验内容:(1)根据项目概要设计进行模块过程设计和界面设计。(2)使用合适的过程设计工具描述模块的详细数据结构和算法。(3)按要求撰写详细设计说明书。2、实验安排方式:本实验每组1人,每人1台计算机。三、思考题1、详细设计阶段主要完成哪些工作?2、过程设计工具有哪些?3、什么是面向数据结构的设计方法?实验六:面向对象分析与设计实验学时:2 实验类型:验证型一、实验目的与要求1、熟悉Rational Rose的基本功能和使用方法。2、学习使用Rose进行UML面向对象系统分析建模3、掌握使用Rose进行面向对象系统设计的方法;4、学习类的
10、分析与设计、类图的制作。二、实验内容与安排方式1、实验内容:(1)学习Rational Rose软件工具的使用,熟悉Rose的使用环境。(2)学习UML(Unified Modeling Language)统一建模语言的使用,体会面向对象分析与设计的新思想、新方法和新技术。(2)用面向对象的方法分析项目的业务流程图,学习用Rose工具进行系统功能分析和建模,并绘制用例图、类图、顺序图等。2、实验安排方式:本实验每组1人,每人1台计算机。三、思考题1、Rational Rose有哪些功能?2、使用UML建模有什么好处?3、面向对象分析与设计与结构化设计有什么不同?附录一:实验课题题目一:学院课程
11、安排系统1系统简介每个学期的期中,学校教务处向各个学院发出下各学期的教学计划,包括课程名称、课程代码、课时、班级类别(本科、专科、成人教育、研究生)、班号等;学院教学主管人员根据教学任务和要求给出各个课程的相关限制(如:任课教师的职称、上课的班数、最高和最低周学时数等);任课教师自报本人授课计划,经所在教研室协调任可,将教学计划上交学院主管教学计划的人员,批准后上报学校教务处,最终由教务处给出下个学期全学院教师的教学任务书。假设上述排课过程全部由人工操作,现要求为上述过程实现计算机自动处理过程。2限定条件(1)每位教师的主讲课程门数不超过2门/学期:讲师以下职称的教师不能承担学院定主课的主讲任
12、务。(2)学院中层干部的主讲课时不能超过4学时/周。(3本学期出现严重教学事故的教师不能承担下各学期的主讲任务。(4)本系统的输入项至少包括:教务处布置的教学计划,学院教师自报的授课计划和学院定的有关授课限制条件。(5)本系统的输出项至少包括:教务处最终下达全院教师的教学任务书和学院各个班级下各学期的课程表(可以不含上课地点)。题目二:学校教材定购系统1系统简介本系统可以细化为两个子系统:销售系统和采购系统销售系统的主要工作过程为:首先由教师或学生提交购书单,经教材发行人员审核是有效购书单后,开发票、登记并返给教师或学生领书单,教师或学生可以到书库领书。采购系统的主要工作过程为:若是教材脱销,
13、则登记缺书,发缺书单给书库采购人员;一旦新书入库后,即发进书通知给教材发行人员。以上功能要求在计算机上实现。2技术要求和限制条件(1)当书库中的各种书籍数量发生变化(包括进书和出书)时,都应修改相关的书库记录,如库存表或进/出库表。(2)在实现上述销售和采购的工作过程时,需考虑有关的合法性验证。(3)系统的外部项至少包括:教师、学生和教材工作人员。(4)系统的相关数据存储至少包括:购书表、库存表、缺书登记表、待购教材表、进库表和出库表。题目三:机票预定系统1系统简介航空公司为给旅客乘机提供方便,需要开发一个机票预定系统。各个旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码(护照号码
14、)、旅行时间、旅行始发地和目的地,航班舱位要求等)输入到系统中,系统为旅客安排航班。当旅客交付了预订金后,系统打印出取票通知和帐单给旅客,旅客在飞机起飞前一天凭取票通知和帐单交款取票,系统核对无误即打印出机票给旅客。此外航空公司为随时掌握各个航班飞机的乘载情况,需要定期进行查询统计,以便适当调整。2技术要求和限制条件(1)在分析系统功能时要考虑有关证件的合法性验证(如身份证、取票通知和交款发票)等。(2)对于本系统还应补充一下功能:1旅客延误了取票时间的处理2航班取消后的处理3旅客临时更改航班的处理(3)系统的外部输入项至少包括:旅客、旅行社和航空公司。题目四:学校内部工资管理系统1系统简介假
15、设学校共有教职工约1000人,10个行政部门和8个系。每个月20日前各个部门(包括系和部门)要将出勤情况上报人事处,23日前人事处将出勤工资、奖金及扣款清单送到财务处 。财务处于每个月月底将教职工的工资表做好并将数据送银行。每个月3日将工资条发给每个单位。若由员工调入或调出、校内调动、离退休变化,则由人事处通知相关部门和财务处。2技术要求和限制条件(1)本系统的数据存储至少包括:工资表、部门汇总表、扣税款表、银行发放表等。(2)除人事处、财务处外,其他职能部门和系名称可以简化表示。(3)工资、奖金、扣款细节由学生自定义。题目五:实验室设备管理系统1系统简介每学年要对实验室设备使用情况进行统计、
16、更新。其中:(1)对于已彻底损坏的做报废处理,同时详细记录有关信息。(2)对于由严重问题(故障)的要及时修理,并记录修理日期、设备名、编号、修理厂家、修理费用、责任人等。(3)对于急需修改但又缺少的设备,需以“申请表”的形式送交上级领导请求批准购买。新设备购入后要立即进行设备登记(包括类别、设备名、编号、型号、规格、单价、数量、购置日期、生产厂家、保质期和经办人等信息),同时更新申请表的内容。(4)随时对现有设备及其修理、报废情况进行统计、查询,要求能够按类别和时间段等查询。2技术要求及限制条件(1)所有工作由专门人员负责完成,其他人不得任意使用。(2)每件设备在做入库登记时均由系统按类别加自
17、动顺序号编号,形成设备号;设备报废时要及时修改相应的设备记录,且有领导认可。(3)本系统的数据存储至少包括:设备记录、修理记录、报废记录、申请购买记录。(4)本系统的输入项至少包括:新设备信息、修理信息、申请购买信息、具体查询统计要求。(5)本系统的输出项至少包括:设备购买申请表、修理/报废设备资金统计表。题目六:电子商务网站电子商务网站是一个集客户购物、下订单、订单处理、销售统计等功能于一体的例子。通过浏览器,让客户可以查询商品,把货物放入购物车,创建账户/登陆账户,创建订单,通过信用卡支付等。电子商务网站可以划分成多个模块,松耦合的设计架构,允许可以和多个数据源、EIS (企业信息系统)进
18、行交互。功能如下: 用户注册/登陆/忘记密码/管理个人信息查询商品购物车管理提交订单信用卡支付查询历史购物记录 电子商店接受/处理订单消息手工接受/拒绝订单用E-mail来通知客户发订单给供应商销售统计 供应商接受订单派送货物给用户提供一个基于web的库存管理维护库存数据库题目七:高复用性的BBS论坛BBS是一个可被复用的论坛。复用性体现在灵活配置(如用户级别可定义为高级用户、普通用户;金牌用户、银牌用户、铜牌用户、青铜用户等)、与数据库松耦合、构件化设计(可嵌入到其他Web应用中)、部署方便等。功能如下: 用户注册/登陆/忘记密码/管理个人信息查询帖子提问/结贴举报帖子(向栏目管理员)回答
19、栏目管理员查询帖子帖子置顶批注帖子管理栏目公告处理举报(警告/删除帖子)奖励用户(加分)举报用户(向论坛管理员) 论坛管理员查询帖子栏目管理(增减栏目,设置栏目管理员)删除用户配置用户类型奖励用户(加分)查询统计信息(如用户数量、帖子数量等)题目八:毕业设计指导网站毕业设计指导网站的目的是使学生和教师能够通过网络进行毕业设计辅导,这样能够得到最新的毕业设计信息,更好的辅导效果。内容如下: 学生注册/登陆/忘记密码/管理个人信息上传文件和下载文件向指导教师提问查询问题 教师登陆/忘记密码管理所辅导学生的账户上传文件和下载文件 回答问题群发消息 管理员管理教师和学生信息查询统计数据(日问题量,答疑
20、率)提醒教师答疑 发布公告群发消息附录二:软件开发文档指南1 可行性研究报告1引言1.1编写目的说明编写本可行性研究报告的目的,指出预期的读者。1.2背景说明:A. 所建议开发的软件系统的名称;B. 本项目的任务提出者、开发者、用户及实现该软件的计算中心或计算机网络;C. 该软件系统同其他系统或其他机构的基本的相互来往关系。1.3定义列出本文件中用到的专门术语的定义和外文首字母组词的原词组。1.4参考资料列出用得着的参考资料,如:1. 本项目的经核准的计划任务书或合同、上级机关的批文;2. 属于本项目的其他已发表的文件;3. 本文件中各处引用的文件、资料,包括所需用到的软件开发标准。列出这些文
21、件资料的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。2可行性研究的前提说明对所建议的开发项目进行可行性研究的前提,如要求、目标、假定、限制等。2.1要求说明对所建议开发的软件的基本要求,如:A. 功能;B. 性能;C. 输出如报告、文件或数据,对每项输出要说明其特征,如用途、产生频度、接口以及分发对象;D. 输入说明系统的输入,包括数据的来源、类型、数量、数据的组织以及提供的频度;E. 处理流程和数据流程用图表的方式表示出最基本的数据流程和处理流程,并辅之以叙述;F. 在安全与保密方面的要求;G. 同本系统相连接的其他系统;H. 完成期限。2.2目标说明所建议系统的主要
22、开发目标,如:A. 人力与设备费用的减少;B. 处理速度的提高;C. 控制精度或生产能力的提高;D. 管理信息服务的改进;E. 自动决策系统的改进;F. 人员利用率的改进。2.3条件、假定和限制说明对这项开发中给出的条件、假定和所受到的限制,如:a 所建议系统的运行寿命的最小值;b 进行系统方案选择比较的时间;c 经费、投资方面的来源和限制;d 法律和政策方面的限制;e 硬件、软件、运行环境和开发环境方面的条件和限制;f 可利用的信息和资源;g 系统投入使用的最晚时间。2.4进行可行性研究的方法说明这项可行性研究将是如何进行的,所建议的系统将是如何评价的。摘要说明所使用的基本方法 和策略,如调
23、查、加权、确定模型、建立基准点或仿真等。2.5评价尺度说明对系统进行评价时所使用的主要尺度,如费用的多少、各项功能的优先次序、开发时间的长短 及使用中的难易程度。3对现有系统的分析这里的现有系统是指当前实际使用的系统,这个系统可能是计算机系统,也可能是一个机械系统甚 至是一个人工系统。分析现有系统的目的是为了进一步阐明建议中的开发新系统或修改现有系统的必要性。3.1处理流程和数据流程说明现有系统的基本的处理流程和数据流程。此流程可用图表即流程图的形式表示,并加以叙述。3.2工作负荷列出现有系统所承担的工作及工作量。3.3费用开支列出由于运行现有系统所引起的费用开支,如人力、设备、空间、支持性服
24、务、材料等项开支以及开 支总额。3.4人员列出为了现有系统的运行和维护所需要的人员的专业技术类别和数量。3.5设备 列出现有系统所使用的各种设备。3.6局限性列出本系统的主要的局限性,例如处理时间赶不上需要,响应不及时,数据存储能力不足,处理功能 不够等。并且要说明,为什么对现有系统的改进性维护已经不能解决问题。4所建议的系统本章将用来说明所建议系统的目标和要求将如何被满足。4.1对所建议系统的说明概括地说明所建议系统,并说明在第2章中列出的那些要求将如何得到满足,说明所使用的基本方法及理论根据。4.2处理流程和数据流程给出所建议系统的处理流程和数据流程。4.3改进之处按2.2条中列出的目标,
25、逐项说明所建议系统相对于现存系统具有的改进。4.4影响说明在建立所建议系统时,预期将带来的影响,包括:4.4.1对设备的影响说明新提出的设备要求及对现存系统中尚可使用的设备须作出的修改。4.4.2对软件的影响说明为了使现存的应用软件和支持软件能够同所建议系统相适应。而需要对这些软件所进行的修改和补充。4.4.3对用户单位机构的影响说明为了建立和运行所建议系统,对用户单位机构、人员的数量和技术水平等方面的全部要求。4.4.4对系统运行过程的影响说明所建议系统对运行过程的影响,如:a 用户的操作规程;b 运行中心的操作规程;c 运行中心与用户之间的关系;d 源数据的处理;e 数据进入系统的过程;f
26、 对数据保存的要求,对数据存储、恢复的处理;g 输出报告的处理过程、存储媒体和调度方法;h 系统失效的后果及恢复的处理办法。4.4.5对开发的影响说明对开发的影响,如:a. 为了支持所建议系统的开发,用户需进行的工作;b. 为了建立一个数据库所要求的数据资源;c. 为了开发和测验所建议系统而需要的计算机资源;d. 所涉及的保密与安全问题。4.4.6对地点和设施的影响说明对建筑物改造的要求及对环境设施的要求。4.4.7对经费开支的影响扼要说明为了所建议系统的开发,设计和维持运行而需要的各项经费开支。4.5局限性 说明所建议系统尚存在的局限性以及这些问题未能消除的原因。4.6技术条件方面的可行性本
27、节应说明技术条件方面的可行性,如:a 在当前的限制条件下,该系统的功能目标能否达到;b 利用现有的技术,该系统的功能能否实现;c 对开发人员的数量和质量的要求并说明这些要求能否满足;d 在规定的期限内,本系统的开发能否完成。5可选择的其他系统方案扼要说明曾考虑过的每一种可选择的系统方案,包括需开发的和可从国内国外直接购买的,如果没有供选择的系统方案可考虑,则说明这一点。5.1可选择的系统方案1参照第4章的提纲,说明可选择的系统方案1,并说明它未被选中的理由。5.2可选择的系统方案2按类似5.1条的方式说明第2个乃至第n个可选择的系统方案。.6投资及效益分析 6.1支出对于所选择的方案,说明所需
28、的费用。如果已有一个现存系统,则包括该系统继续运行期间所需的费用。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非一次性支出列出在该系统生命期内
29、按月或按季或按年支出的用于运行和维护的费用,包括:a 设备的租金和维护费用;b 软件的租金和维护费用;c 数据通讯方面的租金和维护费用;d 人员的工资、奖金;e 房屋、空间的使用开支;f 公用设施方面的开支;g 保密安全方面的开支;h 其他经常性的支出等。6.2收益对于所选择的方案,说明能够带来的收益,这里所说的收益,表现为开支费用的减少或避免、差错的减少、灵活性的增加、动作速度的提高和管理计划方面的改进等,包括;6.2.1一次性收益说明能够用人民币数目表示的一次性收益,可按数据处理、用户、管理和支持等项分类叙述,如:a 开支的缩减包括改进了的系统的运行所引起的开支缩减,如资源要求的减少,运行
30、效率的改进,数据进入、存贮和恢复技术的改进,系统性能的可监控,软件的转换和优化,数据压缩技术的采用,处理的集中化分布化等;b 价值的增升包括由于一个应用系统的使用价值的增升所引起的收益,如资源利用的改进,管理和运行效率的改进以及出错率的减少等;c 其他如从多余设备出售回收的收入等。6.2.2非一次性收益说明在整个系统生命期内由于运行所建议系统而导致的按月的、按年的能用人民币数目表示的收益,包括开支的减少和避免。6.2.3不可定量的收益逐项列出无法直接用人民币表示的收益,如服务的改进,由操作失误引起的风险的减少,信息掌握情况的改进,组织机构给外界形象的改善等。有些不可捉摸的收益只能大概估计或进行极值估计(按最好和最差情况估计)。6.3收益投资比求出整个系统生命期的收益投资比值。6.4
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1