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