软件工程实验指导书编写规范一、本门课程实验的地位和目的本试验对于真正学习掌握软件工程中的有关内容和方法起着非常重要的作用。软件工程课本中介绍的建造软件系统的方法、技术、流程、工具和规范等都很理性,条理性很强,有的地方概括性也很强,如果仅仅看课本,听老师讲,会觉得很乏味,会使学生失去学习软件工程的兴趣。这就需要学生通过认真做试验,去体会课本上所介绍的理论知识,在实践中掌握理论知识,提高实际动手能力。本试验的主要目的有两个:(1)掌握采用软件工程方法开发一个软件系统的全过程;(2)练习正规编写软件开发过程中产生的各类技术文档;(3)培养和感受以小组为中心的团队开发精神。二、实验环境软件工程的试验环境不具体指定,软件系统的设计和开发环境自由选择,在实验室中所能获得的设计开发环境均可。三、如何使用实验工具及实验步骤按照软件工程课本中介绍的软件开发过程,设计实现一个具体的软件系统。在撰写实验报告时,可任选RationalRose或Visio工具进行。四、实验报告书写规范按照软件工程课本或者是国家标准提交各类文档(具体文档类型见下文)。五、实验内容1、实验目的掌握采用软件工程方法开发一个软件系统的全过程;练习正规编写软件开发过程中产生的各类技术文档;熟悉并掌握一种或几中软件开发环境;培养和感受团队开发精神。2、实验学时本试验每周4学时3、实验内容软件工程试验要求学生设计开发一个软件系统,该软件系统由学生自己定。4、实验要求软件工程要求学生以小组为单位开展,各个小组自由组合,要求3-4人为一组。在组建小组的时候尽可能兼顾男女组合。其中各个小组中要选出项目经理一名、系统分析员一名、测试工程师一名、流程及配置工程师一或二名,小组所有成员都有软件开发工程师的职责;开发小组组建后,根据自己的爱好与熟悉领域,自由选择一个难度适中,规模适中的项目进行设计开发。软件系统的形式不限,可以是一个MIS(管理信息系统),也可以是一个网站形式等。各个小组设计开发的项目不能完全相同。各小组所定的项目均由开发小组自己给出具体的需求的说明;项目的设计开发环境由开发小组自己选择,可以使用.Net、Delphi、VC、VB或JAVA等,数据库可以选择大型数据库也可以选择桌面数据库。开发环境和工具尽可能选择实验室可供使用的,以便试验的检查和验收。每一小组采用的开发方法不限,可以采用传统软件工程方法也可以采用面向对象软件开发方法。采用不同的开发方法,交付的文档略又不同,如下所示:(1)传统软件开发方法,每一开发小组要交付的文档包括:A、《可行性研究报告》B、《项目计划任务书》C、《需求规格说明书》+《数据流图+数据字典》+《E-R图》D《概要设计说明书》E、《详细设计说明书》+《结构化程序设计方法:PAD图或PDL》F、《数据库设计说明书》(根据题目性质决定是否需要)G、《部分关键程序实现说明》H、《软件测试计划》I、《用户操作手册》J、《项目开发总结报告》。(2)面向对象软件开发方法,每一开发小组要交付的文档包括:A、《可行性研究报告》B、《项目计划任务书》C《需求分析》D、《对象模型,动态模型,功能模型》+《系统设计》E、《对象设计说明书》F、《部分关键程序实现说明》G、《软件测试计划》H、《用户操作手册》I、《项目开发总结报告》。各个文档的格式参见(六、试验帮助)中的各附录形式,没有给出参考形式的文档,可参照教材给出的形式。每一小组定期将试验的阶段成果发送到指导老师的电子信箱中,以便检查考核。每一小组最后试验成果以可以运行的实际软件系统和一系列相关的文档配置为准。5、注意事项各个小组所选用的开发环境或工具,如果不熟悉,各个小组自己想办法学习熟悉。整个软件工程试验时间阶段安排框架如下(仅供参考)时间任务第1周组建开发小组,确定每个成员的身份第2-3周定出各组设计开发的项目内容,上报给指导老师。第4-5周各小组熟悉各组所选定的设计开发环境第6-7周可行性分析和需求分析第8-12周概要设计、详细设计、界面设计(原型)第13-14周编码(代码的编写)、软件测试第15-18周软件交付六、课程实践选题指南1.库存管理信息系统2.计算机辅助财务管理软件3.电话费管理系统4.工资管理系统5.商场购销管理系统6.税务管理系统7.办公室信息管理系统8.人事管理系统9.学生学籍管理10.医院业务计算机管理系统11.销售管理系统12.图书管理系统13.物资管理系统14.订货管理系统15.产品管理系统16.生产管理系统17.试题库管理系统18.课程辅助学习系统19.科技编辑及作者信息管理系统20.高校科研管理信息系统21.教学管理系统22.基于网络的铁路订票系统23.采供部管理系统24.成本核算(与财务有关)25.某中学教务管理26.大酒店客房管理27.软件开发文档管理28车站售票系统29教师分配系统30住房管理系统31网上教学系统实验一编写可行性研究报告一、实验题目编写系统可行性研究报告。二、实验目的通过对选定系统(如学生学籍管理系统),进行可行性研究的编写,掌握可行性研究报告编写的步骤和方法,明确可行性研究报告内容和格式。三、预习1、可行性研究报告的内容:经济可行性和技术可行性。2、确工程的规模、目标,对系统的建议。3、选定某系统的可行性研究报告实例进行参考,进行思路整合;4、各环节图示和文字格式表示方法。四、实验设备与环境1、具备运行原系统的计算机系统;2、收集整理资料的资料室和虚拟用户或实际用户。五、实验内容选定系统后,进行系统调查,然后按如下编写提示撰写可行性研究报告。1、引言⑴编写目的说明编写本可行性研究报告的目的,指出预期的读者。⑵背景说明所建议的软件系统的名称;本项目的任务提出者、开发者、用户及实现该软件的计算机中心或网络中心;该软件系统同其他系统或其他机构的基本的相互来往关系。⑶定义列出本文件中用到的专门术语的定义和外文首字母组词的原词组。⑷参考资料列出有关的参考资料,如:本项目的核准的计划任务书或合同、上级机关的批文;属于本项目的其他已发表的文件;本文件中各处引用的文件、资料,包括需用到的软件开发标准。列出这些文件资料的标题、编号、发表日期和出版单位,说明文件资料的来源。2、可行性研究前提⑴要求说明对所建议开发的软件的基本要求,如功能、性能等。输出,如报告、文件或数据,对每项输出要说明其特征,如用途、产生频度、接口以及分发对象;输入,说明系统的输入,包括数据的来源、类型、数量、数据的组织以及提供的频度;处理流程和数据流程,用图表的方法表示出最基本的数据流程和处理流程,并辅之以叙述;要安全和保密方面的要求;同本系统相连接的其他系统;完成期限。⑵目标说明所建议系统的主要开发目标,如人力与设备费用的减少;处理速度的提高;控制精度或生产能力的提高;管理信息服务的改进;人员利用率的改进等。⑶条件、假定和限制说明这项开发中给出的条件、假定和所受到的限制,如所建议系统的寿命的最小值;进行系统方案选择进行比较的时间;经费、投资方面的来源的限制;法律和政策方面的限制;硬件、软件、运行环境的条件和限制;可利用的信息和资源;系统投入使用的最迟时间。⑷进行可行性研究的方法说明这项可行性研究是如何进行的,所建议的系统是如何评价的。简要说明的使用的基本方法和策略,如调查、加权、确定模型、建立基准点或仿真等。⑸评价尺度说明对系统进行评价时所使用的主要尺度,如费用的多少、各项功能的优先次序、开以时间的长短及难易程度。3、对现有系统的分析⑴处理流程和数据流程说明现有系统的基本的处理流程和数据流程。此流程可用流程图表示,并加以叙述。⑵工作负荷列出现有系统所承担的工作和工作量。⑶费用开支列出由于运行现有系统所引起的费用开支,如人力、设备、支持性服务、材料等项开支及开支总额。⑷人员列出为了现有系统的运行的维护所需要的人员的专业技术类别和数量。⑸设备列出为了现有系统所使用的各种设备。⑹局限性列出本系统的主要局限性,例如处理时间赶不上需要,响应不及时,数据存储能力不足,处理功能不够等。并说明为什么对现有系统的改进性维护已经不能解决问题。4、所建议的系统说明所建议的系统的目标和要求将如何被满足。⑴对所建议系统的说明概括地说明所建议系统,并说明可行性研究前提列出的那些要求将如何得到满足,说明所使用的基本方法及理论根据。⑵处理流程和数据流程指出所建议的系统的处理流程和数据流程。⑶改进之处按列出的目标,逐项说明所建议系统相对于现存系统的改进。⑷影响说明在建立所建议系统时,预期将带来的影响,包括:对设备的影响:说明新提出的设备要求及对现存系统中尚可使用的设备须做出的修改。对软件的影响:说明为了使现存的应用软件和支持软件能够同所建议系统相适应,而需对这些软件所进行的修改和补充。对用户单位机构的影响:说明为了建立和运行所建议系统,对用户单位机构、人员数量和技术水平等方面的全部要求。对系统运行过程的影响:用户的操作程序;运行中心的操作程序;源数据的处理;数据进入系统的过程;对数据保存的要求,对数据存储、恢复的处理;输出报告的处理过程、存储媒体和调度方法;系统失效的后果及恢复的处理办法。对开发的影响:为了支持所建议系统的开发,用户需进行的工作;为了建立一个数据库所要求的数据资源;为了开发和测验所建议系统而需要的计算机资源;所涉及的保密与安全问题。对地点和设施的影响:说明对建筑物的改造要求及对环境设施的要求。对经费开支的影响:扼要说明为了所建议系统的开发、设计和维持运行而需要的各项经费开支。⑸局限性说明所建议系统尚存在的局限性以及这些问题未能解决的原因。⑹技术条件方面的可行性在当前的限制条件下,该系统的功能目标能否达到;利用现有的技术,该系统的功能能否实现;对开人员的数量和质量的要求并说明这些要求能否满足;在规定的期限内,本系统的开发能否完成。5、可选择的其他系统方案扼要说明曾考虑过的每一种可选择的系统方案,包括需开发的和可从国内国外直接购买的,如果没有供选择的方案可考虑,则加以说明。可选择的系统方案1:参照前面介绍的提纲,说明可选择的系统方案1,并说明它未被选中的理由。┆可选择的系统方案n:参照前面介绍的提纲,说明可选择的系统方案n,并说明它未被选中的理由。6、投资及效益分析⑴支出对所选择的方案,说明所需的费用。如果已有一个现存系统,则包括该系统继续运行期间所需的费用。基本建设投资;其他一次性支出;非一次性支出等,详细参考相关资料。⑵收益对所选择的方案,说明能够带来的收益。收益表现为开支费用的减少或避免差错的减少,灵活性的增加,动作速度的提高和管理计划方面的改进等,包括:一次性收益;非一次性收益;不可定量的收益。⑶收益/投资比求出整个系统生命期的收益/投资比值。⑷求出收益的累计数开始超过支出的累计数的时间。⑸敏感度分析对一些关键性因素如系统生命斯长度系统的工作负荷量、工作负荷的类型与这些不同类型之间的搭配、处理速度要求、设备和软件的配置等变化时对开支和收益的影响最灵敏的范围的估计。7、社会因素方面的可行性⑴法律方面的可行性如合同责任、侵犯专利权、侵犯版权等方面的陷阱。⑵使用方面的可行性如从用户单位的行政管理、工作制度等方面看,是否能使用该软件系统;从用户单位的工作人员的素质看,是否能满足使用该软件系统的要求等。8、结论⑴可以立即开始进行;⑵需要推迟到某些条件落实后进行;⑶需要对开发目标进行某些修改后进行;⑷不能进行或不必进行。六、注意事项1、流程要准确,图示和叙述要规范;2、所选系统要以可行性结论为论证系统。3、论证表示方法部分与后续内容交叉,要事先阅读。七、实验记录1、原系统的运行状况,优缺点;2、系统调查各项参数;3、建议的各系统方案。八、说明1、题目可学生确定,但要经过指导教师审核,指导教师指定的题目不宜过大;2、按编写提示格式编写可行性研究报告,对格式中的个别内容可根据所选系统的复杂程度增减;3、报告中涉及的图表要规范,文图要工整;4、报告可独立完成或多人合作完成。实验二编写系统需求说明书一、实验题目编写系统需求分析说明书。二、实验目的通过对选定系统进行系统分析和