《软件设计过程实验报告.doc》由会员分享,可在线阅读,更多相关《软件设计过程实验报告.doc(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件开发过程实验一 软件需求分析一、目的和意义对本书第二和三章的内容做进一步的掌握,写出软件需求规格说明书。为下面的实习奠定基础。二、实习内容1、确定软件题目(学生可自己拟定,也可在本书附录2中选择);2、分析软件需求以及人工模式下的工作流程;3、编写需求规格说明书(需求规格说明书的编写要求参见本节模板参考);4、完成形式:以文档的形式完成软件的需求规格说明书。纸张型号为A4。三、实习指导1、在磁盘上建立一个软件工程实习文件夹,以自己的姓名命名。2、提交文档的格式如下:第一页的格式为:软件名称: 文档编号 版本号 文档名称: 项目名称: 项目负责人: 编写 时间 审核 时间 批准 时间 开发单
2、位 第二页之后的内容为:l 编写目的:阐明编写该文档的目的,指出读者对象l 项目背景:项目的委托单位、开发单位、该软件系统与其他系统的关系。l 参考资料软件需求规格说明的书写原则任务概述:软硬件环境、条件和限制(软件的使用条件和限制)。数据描述:输入数据、输出数据、数据库设计和建立数据词典。功能需求:功能划分和功能描述性能需求:数据精度、时间特性、适应性(操作方式、与其他软件的接口、开发计划变化时,软件应具有的适应能力。)。运行要求:用户界面、硬件接口(如:连接打印机)、软件接口(如:是否为其他项目的子项目)、故障处理。其他需求:可使用性、安全保密性、可维护性、可移植性等。l 模板参考第一页:
3、软件名称: 教务管理软件 文档编号 001 版本号 Ver 1.0 文档名称: 需求规格说明书 项目名称: 课表编排系统 项目负责人: 屈艳 编写: 刘楠、叶艺、赵春、马燕 时间: 2005-2-14 审核: 屈艳 时间: 2005-2-16 批准: 王湘桃 时间: 2005-2-20 开发单位: 冰雪五人组 第二页之后的内容:编写目的:编写该文档是为了分析人工状态下课表编排的工作流程,把人工模式抽象为可在计算机上处理的自动模式。便于开发小组成员对系统整体功能的认识。项目背景:高校的课表编排一直是一个烦琐的工作,为了解决这个问题,某某高校教务处委托我们开发该软件。该软件是高校教务软件的一个子系
4、统。该子系统与专业规划子系统和教师管理软件有一定的关系。参考资料:1郑人杰 实用软件工程(第二版)北京:清华大学出版社,1997 任务概述:硬件环境:CPU的型号为PentiumIII以上,内存256M ,及其兼容机软件环境:Win98/2000/xp、VB/VC/VF/DeLphi 等。软件的使用条件和限制:教室的数量能满足排课的需求;一个教师只能代两门课;修改课表有安全级别。数据描述:用户提供的资料:计划书和教师、教室情况用户对软件的要求:输入计划书,系统自动按班级排课表,并可查询打印课表。静态数据:教室信息(编号、名称、类型(普通/多媒体)、规模等)。动态数据:计划书(课程名称,专业年级
5、,人数,学时,讲课(周次),实验周次,教师姓名,对教室的要求等。)、教师信息(编号、姓名、学院、职称)数据流图:数据流图的图符含义为:圆圈表示加工,矩形框表示结果,箭头表示数据流向。课表编排系统的数据流图如下:计划书中的数据有:学生所在学院、专业年级、班级、人数、课程名称、总学时、周学时、周次、教师姓名、教室类型等信息。教室数据有:教室编号、教室类型、教室的规模(60人/90人)、周一到周五各个时间段的使用情况等信息 一级课表数据有:专业年级、班级、周一至周五每天五个时间段(12节,34节,56节,78节,90节)、课程名称、教室编号、教师姓名、课程起始周次或间断的周次。注:对计划书中的数据和
6、教室数据的加工处理,形成一级课表所需要的数据。计划教室信息约束信息信息课表冲突一级课表二级课表数据库描述及数据词典:班级表banji字段名称字段类型字段大小字段名称字段类型字段大小班级编号文本6班级文本2年级文本4所属学院文本20所属专业文本20教室表jiaoshi字段名称字段类型字段大小字段名称字段类型字段大小编号自动编号递增名称文本30类型文本6规模文本6星期文本1节12文本1节34文本1节56文本1节78文本1节90文本1课程表kecheng字段名称字段类型字段大小字段名称字段类型字段大小课程编号文本8课程名称文本20所属学院文本20所属专业文本20所属年级文本4 计划表jihua字段名
7、称字段类型字段大小字段名称字段类型字段大小编号自动编号递增课程名称文本20所属学院文本20所属专业文本20所属年级文本4班级文本4学生人数文本6总学时文本4周学时文本4周次文本6教师姓名文本8教室类型文本6课程类型文本6优先级文本1 临时表linshi字段名称字段类型字段大小字段名称字段类型字段大小课程名称文本20教室文本20任教老师文本8周次文本16星期文本1节次文本4所属学院文本20所属专业文本20所属年级文本4班级文本1临时表linshi2字段名称字段类型字段大小字段名称字段类型字段大小课程名称文本20教室文本20任教老师文本8周次文本16星期文本1节次文本4所属学院文本20所属专业文本
8、20所属年级文本4班级文本1 输出结果表result字段名称字段类型字段大小字段名称字段类型字段大小节次文本4周一文本50周二文本50周三文本50周四文本50周五文本50周六文本50功能需求:功能划分:基本信息输入模块、计划书信息输入模块、课表自动生成模块、备份删除数据模块。功能描述:基本信息输入模块的功能:建立良好的用户输入界面,输入基本信息(教师信息和教室信息)。计划信息输入模块的功能:输入计划书中的信息。课表自动生成模块的功能:根据输入的基本信息,自动生成一级课表。(具体算法在详细设计中查询)。备份删除数据模块的功能:课表编排系统将在多学期使用,一个学期结束后,应备份数据,并将旧数据删除
9、,产生新的课表数据。性能需求:数据精确度:整数时间特性:无特殊要求适应性:有一定的适应能力,可将数据导入导出。运行需求:用户界面:简单硬件接口:标准接口(打印机接口)软件接口:无,该软件暂时独立使用。故障处理:重新安装该软件。其他需求:可使用性:良好安全保密性:有安全保密性。课表编排必须由教务管理人员进行,课表修改要设定权限。可维护性:可以进行简单的维护,可移植性:适用于各种操作系统。实习二 软件详细设计一、目的和意义对本书第四章的内容做进一步的掌握,写出软件详细设计说明书。为下面的实习奠定基础。二、 实习内容确定软件的总体结构,设计每个模块的细节。总体设计:画软件系统的结构图程序描述:每个模
10、块给出以下说明 功能、性能、输入项目、输出项目、算法、限制条件、测试要点(模块的主要测试要求)。三、 实习指导提交文档的格式如下:第一页:软件名称: 教务管理软件 文档编号 002 版本号 Ver 1.0 文档名称: 软件详细设计说明书 项目名称: 课表编排系统 项目负责人: 屈艳 编写: 叶艺、赵春、马燕、刘楠 时间: 2005-3-14 审核: 屈艳 时间: 2005-3-16 批准: 王湘桃 时间: 2005-3-20 开发单位: 冰雪五人组 第二页之后的内容:编写目的:编写详细设计是为了上程序员在写程序时有一个依据。程序员根据详细设计写出符合设计要求的程序。项目背景:详细设计的设计思路
11、由教务管理科的管理人员提供,经过设计人员的加工处理,形成可在计算机上实现的算法。参考资料: 1郑人杰 实用软件工程(第二版)北京:清华大学出版社,1997 开始do输入信息保存信息是否继续输入?YN结束课表编排系统的总体结构图:主界面基本信息录入模块备份删除数据模块计划信息录入模块自动排课打印模块基本信息输入模块:功能:完成基本信息的输入,并将信息保存在数据库中,供自动排课模块使用。基本信息有(教师信息,教室信息)。输入项:有9项,具体项目见测试用例列表。输出项:有9项,同上。 算法:(可以用程序流程图或算法语言)见右上程序流程图测试用例:教师信息:姓名性别年龄职称承担课程研究方向李红女30讲
12、师软件工程软件工程教室信息:名称类型规模星期1234567890信M1多媒体90人1-5空空空空空信M2多媒体90人1-5空空空空空信M3多媒体60人1-5空空空空空3106普通90人1-5空空空空空3117普通90人1-5空空空空空3118普通60人1-5空空空空空计划信息录入模块:功能:完成计划书的信息输入,并保存在数据库中,供自动排课模块使用。输入项:有9项,具体见测试用例。输出项:有9项,同上。算法:算法同基本信息输入模块。测试用例:计划书信息学生学院专业年级班级人数课程名总学时周学时教师名教室类型信息学院计算机021-390编译原理604李长悦普通信息学院计算机021-390软件工程
13、504王湘桃多媒体自动排课模块:功能:该模块根据计划书信息,完成各个班级的一级课表的编排。输入项:从计划书信息库和教室信息库中获的信息。输出项:班级的课表算法:DO1 在计划书数据库取一条信息(某个专业年级,班级)DO2在教室数据库取一个教室信息if 教室类型满足 then if 教室规模满足 thenif 教室空且时间合适 then 占用教室 exit DO2endif endif endif LOOP UNTIL EOF(教室信息库)LOOP UNTIL EOF(计划书)注:如果某个计划书不能找到合适的教室,则该计划书转入手动排课。测试用例:信息学院02级计算机1-3班的计划书为例。教室为
14、信息学院的专业教室。备份删除数据模块:(省略)实验三 原型软件设计一、目的和意义我们对系统进行一次分析,不可能很清楚的完成软件的需求规格说明书,我们通常是先对系统进行简单的需求分析之后,设计一个原型软件。原型软件是一个看起来像真软件,具有真软件的简单功能,但不具有真软件的强大的功能。客户通过使用原型软件可以很容易发现未来的软件包是否满足需要、或者还应作什么修改。对原型软件不断的修该,使它成为一个真正意义上的软件。二、实习内容1、题目:原型软件设计2、要求:设计原型软件的界面和主要功能模块。3、完成形式:进行简单的输入,软件可以运行。三、实习指导1、高级程序设计语言的选择2、编写主界面程序代码(
15、按照实验二的详细设计说明书进行代码编写)。3、编写主要功能程序代码(按照实验二的详细设计说明书进行代码编写)。4、对编写好的程序进行测试(使用实验二提供的测试用例测试程序)。实验四 软件测试用例设计和测试一、目的和意义对软件进行测试是为了得到安全可靠的软件产品。软件测试常用的方法有两个:白盒法和黑盒法。不论是白盒法还是黑盒法都不能完全找到软件的错误(bug),所以要设计软件的测试用例,希望尽可能多的发现软件中存在的错误。二、实习内容1、题目:对实习三设计的软件进行测试2、要求:选择两个软件单元,一个用白盒法进行测试,一个用黑盒法进行测试。3、完成形式:写出测试用例及测试结果。对测试结果进行分析
16、,评价软件的可靠程度。三、实习指导1、对所选择的白盒法测试软件单元进行逻辑分析,画出逻辑流程图。2、根据逻辑流程图设计测试用例。记录测试结果,并对测试结果进行分析。3、确定黑盒法测试的软件单元。4、设计黑盒法的测试用例。记录测试结果,并对测试结果进行分析。提交文档的格式如下:第一页:软件名称: 教务管理软件 文档编号 003 版本号 Ver 1.0 文档名称: 测试用例的设计 项目名称: 课表编排系统 项目负责人: 屈艳 编写:赵春、马燕、刘楠、叶艺 时间: 2005-4-14 审核: 屈艳 时间: 2005-4-16 批准: 王湘桃 时间: 2005-4-20 开发单位: 冰雪五人组 第二页
17、之后的内容:编写目的:为了在测试软件的过程中思路清晰,测试的目标明确。该测试计划供测试人员使用。要测试的程序模块名:教室信息输入模块和自动排课模块。测试用例1:教室信息输入模块的测试用例:名称类型规模星期1234567890信M1多媒体90人1-5空空空空空信M2多媒体90人1-5空空空空空信M3多媒体60人1-5空空空空空3106普通90人1-5空空空空空3117普通90人1-5空空空空空3118普通60人1-5空空空空空另外:对运行程序的过程中,程序提出的问题:是否继续输入,回答一次Yes,回答一次No。测试结果:数据库中的信息与用户输入的信息一致。软件评价:该模块运行正确。测试用例2:自
18、动排课模块的测试用例:以信息学院计算机02级1-3班的计划书为例。运行自动排课模块。学生学院专业年级班级人数课程名总学时周学时教师名教室类型信息学院计算机021-390编译原理604李长悦普通信息学院计算机021-390软件工程504王湘桃多媒体信息学院计算机021-390网络504韩宏多媒体信息学院计算机021-390接口技术544黄道君普通信息学院计算机021-390通讯原理404刘晴蕊多媒体信息学院计算机021-390Linux404鱼晓多媒体信息学院计算机021-390数学建模404边宽江多媒体信息学院计算机021-390图形学404宁纪锋多媒体另外:对程序过程中的判定语句进行单独测试
19、。判定的真假各测试一次。对不能排课的计划书转入手动排课系统(即手工调整课表)。测试结果:形成一张计算机02级1-3班的课表。软件评价:基本完成设计要求。实验五 软件提交与维护一、目的和意义软件开发成功后,将交付用户使用,在用户使用前,要对用户进行培训。并要求写出详细的使用说明书和维护手册,待后续修改和维护。否则,软件的使用将受到限制,软件寿命将缩短,成本会增高。二、实习内容1、题目:对开发该软件的所有资料进行整理2、要求:从软件需求分析规格说明书到使用说明书的所有资料进行收集和整理。3、完成形式:将所有文档编辑成册。三、实习指导1、根据用户的要求写出软件的使用说明书2、根据开发的限制条件,写出软件的维护手册系统说明:系统具备的功能,输入和输出。操作环境:系统的设备配置及其特性。列出系统使用的所有支持软件(名称和版本号)。维护过程:约定(所有标识和助记符的使用规则)。列出出错状态和纠正方法。修改错误,并详细描述修改。
限制150内