软件工程实验指导书分析.docx
《软件工程实验指导书分析.docx》由会员分享,可在线阅读,更多相关《软件工程实验指导书分析.docx(16页珍藏版)》请在冰豆网上搜索。
软件工程实验指导书分析
软件工程
实验指导书
前言
软件工程实验是为计算机相关专业本科《软件工程》课程配套设置的,是《软件工程》课程讲授中一个重要的、不可或缺的实践环节。
其目的是使学生能够针对具体软件工程项目,全面掌握软件工程管理、软件需求分析、软件初步设计、软件详细设计、软件测试等阶段的方法和技术,通过该课程设计使学生进一步理解和掌握软件开发模型、软件生命周期、软件过程等理论在软件项目开发过程中的意义和作用,培养学生按照软件工程的原理、方法、技术、标准和规范,进行软件开发的能力,培养学生的合作意识和团队精神,培养学生对技术文档的编写能力,从而使学生提高软件工程的综合能力,提高软件项目的管理能力。
按该课程的特点,实验内容包括软件开发的两大方法学的专题训练,即结构化(生命周期学)的方法学和面向对象的方法学,通过对一个简单项目,要求学生利用结构化软件开发技术或面向对象的软件开发技术完成对该项目的开发。
因此设置五个实验项目,从项目发的准备工作,系统分析过程,系统设计过程,软件测试到系统实施,覆盖软件开发的整个过程,此外又引入我国国家《计算机开发规范》,以规范技术文档的书写标准,提高实验教学质量。
通过实验训练,达到如下目的:
使学生进一步了解和掌握软件工程原理,提高对实际项目的分析和设计能力,通过实验课程,熟悉和基本掌握软件工程方法学、软件开发的过程,文档资料的编写格式及规范,全面领会和贯通所学习的理论知识,从而培养学生综合运用所学课程知识,分析解决问题的能力,培养学生理论联系实际作风,实事求是,严肃认真的科学态度和良好的工作作风,为今后从事科学研究工作打下基础。
实验一项目开发的准备工作
实验学时:
4实验类型:
验证性
一、目的与任务
目的:
确定课题,组织组员,合理分工,熟悉软件开发环境,培养团队精神。
任务:
学习软件开发小组的组织和管理,合理分工,将项目开发各阶段的任务明确,并熟悉相应的软件开发环境。
二、内容、要求与安排方式
1、实验内容与要求:
根据各组选择的课题,实行项目经理制,各组推荐一名组长,统一管理整个项目的实施过程,并和理调整资源和负责项目全局;根据项目的难易合理分配组员的任务,对问题达成一直的看法;针对项目的实施,熟悉相应的软件开发工具的使用环境。
2、实验安排方式:
本实验为开放实验,各组可同时进行实验,每组5-6人。
3、准备参考资料和阅读相关的国家有关软件开发的标准文档。
三、思考题
1、项目开发首先要做的事是什么?
2、你认为该软件应具备的最重要的特性是什么。
3、你认为怎样分工是最合理的?
实验二需求分析
实验学时:
4实验类型:
验证性
一、目的与任务
目的:
确定项目的可实施性,在此基础上完成系统的逻辑功能模型的建立。
任务:
采用不同的软件开发技术,完成对项目的分析过程,给出系统的逻辑功能模型,数据字典以及规格说明书。
二、内容、要求与安排方式
1、实验内容与要求:
明白项目的业务流程图,绘制数据流程图,功能分析图,编写数据字典,数据加工处理的描述,软件系统流程设想图(新系统模型),需求规格说明书。
2、实验安排方式:
本实验为开放实验,各组可同时进行实验,每组3-5人。
三、思考题
1、需求分析在软件开发中真的有那么重要吗?
2、分析系统流程图,流程图和数据流图的区别和各自的特点。
3、怎样写合乎规范的数据流图和数据词典?
4、怎样组织对该工作的评审?
实验三系统设计
实验学时:
4实验类型:
技能性
一、目的与任务
目的:
在实验二基础上完成系统的体系结构的建立和系统详细设计,并给出相应的规格说明书。
任务:
认真分析实验二的结果,给出系统合理的体系结构,描绘系统结构图,并合理划分系统的各组成模块,最后给出系统的各部分设计规格说明书。
二、内容、要求与安排方式
1、实验内容与要求:
功能结构图设计,软件处理流程设计,输出设计(主要指打印输出设计),存储文件格式设计(数据库结构设计),输入设计(主要指数据录入卡设计),代码设计,程序设计说明书
2、实验安排方式:
本实验为开放实验,各组可同时进行实验,每组5-6人。
三、思考题
1.系统设计和需求分析的关系是什么?
两者必须先后关联吗?
2.怎样描绘系统的体系结构?
3.怎样绘制复合规范的流程图。
4.怎样组织对设计阶段工作的评审?
实验四软件测试
实验学时:
4实验类型:
综合性
一、目的与任务
目的:
在实验三的基础上,完成对系统的组装和测试。
任务:
正确运用软件测试技术和方法,完成系统的单元测试、综合测试、确认测试、系统测试的方法,掌握测试用例的设计方法,并给出测试报告。
二、内容、要求与安排方式
1、实验内容与要求:
(1)能够正确运用软件测试的过程与方法,结合一个模拟课题,复习、巩固、软件工程中系统测试知识,提高软件测试的实践能力。
(2)熟悉单元测试、综合测试、确认测试、系统测试的方法,掌握测试用例的设计方法。
(3)树立正确的软件测试思想,培养分析问题、解决问题的能力,提高查询资料和撰写书面文件的能力。
2、验安排方式:
本实验为开放实验,各组可同时进行实验,每组5-6人。
三、思考题
1.怎样看待测试的重要性。
2.怎样选择测试的技术和方案。
3.比较逻辑测试和基本路径测试的不同和联系。
4.怎样组织对测试阶段工作的评审?
实验五系统实施
实验学时:
4实验类型:
验证性
一、目的与任务
目的:
系统运行和软件后期制作。
任务:
总结软件开发中的得失,正确书写软件说明书和用户手册。
二、内容、要求与安排方式
1、实验内容与要求:
完善系统所涉及的程序框图,源程序,模拟运行数据,打印报表,软件使用说明书和用户手册等。
2、验安排方式:
本实验为开放实验,各组可同时进行实验,每组5-6人。
三、思考题
1、怎样合理选择软件开发的工具?
2、怎样进行用户说明手册和使用手册的编写。
3、总结项目实施中的得失。
实验六试验总结行整体验收
实验学时:
4实验类型:
验证性
依据试验一、实验二、实验三、实验四、实验五的具体要求对课程试验教学完整验收并总结试验成果,进行相互学习与范例学习。
附录一:
实验要求
软件工程实验要求学生采用“项目小组”的形式,结合具体的开发项目进行设计。
具体要求如下:
1.班级按项目小组进行分组,每组不得超过5人
2.每个项目小组选出项目负责人或项目经理,由项目经理召集项目组成员讨论、选定开发项目
3.项目中的每项任务要落实到人且规定该任务的起止日期和时间
4.每个项目小组必须按照《软件工程实验指导书》附录中给定的文档规范标准提供项目文档
5.题目自定或采用附录二中的题目
6.软件开发的方法自定(结构化或面向对象的方法学)
附录二:
实验题目
(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)校园一卡通管理系统
(32)学生宿舍管理系统
(33)电话订购火车票系统
(34)校园监控系统
(35)城市数字电视管理系统
(36)研究生考试报名管理系统
(37)英语四、六级考试管理系统
(38)大学运动会管理系统
(39)大学后勤管理系统
(40)大学固定资产管理系统
附录三:
软件开发文档指南
1 可行性研究报告
可行性研究报告的编写目的是:
说明该软件开发项目的实现在技术、经济和社会条件方面的可行性;评述为了合理地达到开发目标而可能先择的各种方案;说明论证所选定的方案。
可行性研究报告的编写内容要求如下:
1.1 引言
1.1.1 编写目的
1.1.2 背景
1.1.3 定义
1.1.4 参考资料
1.2 可行性研究的前提
1.2.1 要求
1.2.2 目标
1.2.3 条件、假定和限制
1.2.4 进行可行性研究的方法
1.2.5 评价尺度
1.3 对现有系统的分析
1.3.1 数据流程和处理流程
1.3.2 工作负荷
1.3.3 费用开支
1.3.4 人员
1.3.5 设备
1.3.6 局限性
1.4 所建议的系统
1.4.1 对所建议系统的说明
1.4.2 数据流程各处理流程
1.4.3 改进之处
1.4.4 影响
1.4.4.1 对象设备的影响
1.4.4.2 对软件的影响
1.4.4.3 对用户单位机构的影响
1.4.4.4 对系统动行的影响
1.4.4.5 对开发的影响
1.4.4.6 对地点和设施的影响
1.4.4.7 对经费开支的影响
1.4.5 局限性
1.4.6 技术条件方面的可行性
1.5 可选择其他系统方案
1.5.1 可选择的系统方案1
1.5.2 可选择的系统方案2
……
1.6 投资及收益分析
1.6.1 支出
1.6.1.1 基本建设投资
1.6.1.2 其他一次性支出
1.6.1.3 非一次性支出
1.6.2 收益
1.6.2.1 一次性收益
1.6.2.2 非一次性收益
1.6.2.3 不可定量的收益
1.6.3 收益/投资比
1.6.4 投资回收周期
1.6.5 敏感性分析
1.7 社会条件方面的可行性
1.7.1 法律方面的可行性
1.7.2 使用方面的可行性
1.8 结论
2 项目开发计划
编制项目开发计划的目的是用文件的形式,把对于在开发过程中各项工作的负责人员、开发进度所需经费预算、所需软、硬件条件等问题作出安排记载下来,以便根据本计划开展和检查本项目的开发工作。
编制内容要求如下:
2.1 引言
2.1.1 编写目的
2.1.2 背景
2.1.3 定义
2.1.4 参考资料
2.2 项目概述
2.2.1 工作内容
2.2.2 主要参加人员
2.2.3 产品及成果
2.2.3.1 程序
2.2.3.2 文件
2.2.3.3 服务
2.2.3.4 非移交产品
2.2.4 验收标准
2.2.5 完成项目的最迟期限
2.2.6 本计划的审查者与批准者
2.3 实施总计划
2.3.1 工作任务的分解
2.3.2 接口人员
2.3.3 进度
2.3.4 预算
2.3.5 关键问题
2.4 支持条件
2.4.1 计算机系统支持
2.4.2 需要用户承担的工作
2.4.3 需由外单位提供的条件
2.5 专题计划要点
3 软件需求说明书
软件需求说明书的编制是为了使用户的软件开发者双方对该软件的起初规定有一个共同的理解,使之成为整个开发工作的基础。
编制软件需求说明书的内容要求如下:
3.1 引言
3.1.1 编写的目的
3.1.2 背景
3.1.3 定义
3.1.1 参考资料
3.2 任务概述
3.2.1 目标
3.2.2 用户的点
3.2.3 假定与约束
3.3 需求规定
3.3.1 对功能的规定
3.3.2 对性能的规定
3.3.2.1 精度
3.3.2.2 时间特性要求
3.3.2.3 灵活性
3.3.3 输入输出要求
3.3.4 数据管理能力的要求
3.3.5 故障处理要求
3.3.6 其它的专门的要求
3.4 运行环境规定
3.4.1 设备
3.4.2 支持软件
3.4.3 接口
3.4.4 控制
4 数据需求说明书
数据要求说明书的编制目的是为了向整个开发时期提供关于处理数据的描述和数据采集要求的技术信息。
编制数据要求说明书的内容要求如下:
4.1 引言
4.1.1 编写目的
4.1.2 背景
4.1.3 定义
4.1.4 参考资料
4.2 数据的逻辑描述
4.2.1 静态数据
4.2.2 动态输入数据
4.2.3 动态输出数据
4.2.4 内部生成数据
4.2.5 数据约定
4.3 数据的采集
4.3.1 要求和范围
4.3.2 输入的承担者
4.3.3 处理
4.3.4 影响
5 概要设计说明书
概要设计说明书可称作系统设计说明书,这里说的系统是指程序系统,编制的目的是说明对程序的系统的设计考虑,包括程序系统的基本处理流程、程序系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。
编制概要设计说明书的内容要求如下:
5.1 引言
5.1.1 编写目的
5.1.2 背景
5.1.3 定义
5.1.4 参考资料
5.2 总体设计
5.2.1 需求规定
5.2.2 运行环境
5.2.3 基本设计概念和处理流程
5.2.4 结构
5.2.5 功能需求与程序的关系
5.2.6 人工处理过程
5.2.7 尚未解决的问题
5.3 接口设计
5.3.1 用户接口
5.3.2 内部接口
5.3.3 外部接口
5.4 运行设计
5.4.1 运行模块组合
5.4.2 运行控制
5.4.3 运行时间
5.5 系统数据结构设计
5.5.1 逻辑结构设计要点
5.5.2 物理结构设计要点
5.5.3 数据结构与程序的关系
5.6 系统出错处理设计
5.6.1 出错信息
5.6.2 补救措施
5.6.3 系统维护设计
6 详细设计说明书
详细说明书可称作程序设计说明书。
编制目的是说明一个软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑,如果一个软件系统比较简单,层次很少,本文件可以不单独编写,有关内容合并概要设计说明书。
对详细设计说明书的内容要不得要求如下:
6.1 引言
6.1.1编写目的
6.1.2背景
6.1.3定义
6.1.4参考资料
6.2程序系统的组织结构
6.3程序1(标识符)设计说明
6.3.1程序描述
6.3.2功能
6.3.3性能
6.3.4输入项
6.3.5输出项
6.3.6算法
6.3.7流程逻辑
6.3.8接口
6.3.9存储分配
6.3.10注释设计
6.3.11限制条件
6.3.12测试计划
6.3.13尚未解决的问题
6.4程序2(标识符)设计说明
……
7 数据库设计说明书
数据库设计说明书的编制目的是对于设计中的数据库所有标识、逻辑结构和理结构作出具体的设计规定。
其内容要求如下:
7.1 引言
7.1.1 编写目的
7.1.2 背景
7.1.3 定义
7.1.4 参考资料
7.2 外部设计
7.2.1 标识符和状态
7.2.2 使用它的程序
7.2.3 约定
7.2.4 专门指导
7.2.5 支持软件
7.3 结构设计
7.3.1 概念结构设计
7.3.2 逻辑结构设计
7.3.3 理结构设计
7.4 运用设计
7.4.1 数据字典设计
7.4.2 安全保密设计
8 用户手册
用户手册的编制是要使用非专门术语的语言,充分地描述该软件系统工程所具有的功能及基本的使用方法。
使用户(或潜在用户)通过本手册能够了解该软件的用途,并且能够确定在什么情况下,如何使用它。
具体的内容要求如下:
8.1 引言
8.1.1 编写目的
8.1.2 背景
8.1.3 定义
8.1.4 参考资料
8.2 用途
8.2.1 功能
8.2.2 性能
8.2.2.1 精度
8.2.2.2 时间特性
8.2.2.3 灵活性
8.2.3 安全保密
8.3 运行环境
8.3.1 硬设备
8.3.2 支持软件
8.3.3 数据结构
8.4 使用过程
8.4.1 安装与初始化
8.4.2 输入
8.4.2.1 输入数据的现实背景
8.4.2.2 输入格式
8.4.2.3 输入举例
8.4.3 输出
8.4.3.1 输出数据的现实背景
8.4.3.2 输出格式
8.4.3.3 输出举例
8.4.4 文卷查询
8.4.5 出错处理与恢复
8.4.6 终端操作
9 操作手册
操作手册的编制是为了向操作人中提供该软件每一个运行的具体过程和有关知识,包括操作方法的细节。
具体的内容要求如下:
9.1 引言
9.1.1 编写目的
9.1.2 背景
9.1.3 定义
9.1.2 参考资料
9.2 软件概述
9.2.1 软件的结构
9.2.2 程序表
9.2.3 文卷表
9.3 安装与初始化
9.4 运行说明
9.4.1 运行表
9.4.2 运行步骤
9.4.3 运行1(标识符)说明
9.4.3.1 运行控制
9.4.3.2 操作信息
9.4.3.3 输入-输出文卷
9.4.3.4 输出文段
9.4.3.5 输出文段的复制
9.4.3.6 启动恢复过程
9.4.4 运行2(标识符)说明
9.5 非常规过程
9.6 远程操作
10 模块开发卷宗
模块开发卷宗是在模块开发过程中逐步编写出来的,每完成一个模块或一级密切相关的模块的复审时编写一份,应该把所有的模块开发卷宗汇集在一起。
编写的目的是记录和汇总低层次开发的进度和结果,以便于对整个模块开发工作的管理和复审,并为将来的维护提供非常有用的技术信息。
具体的内容要求如下:
10.1 标题
10.2 模块开发情况表
10.3 功能说明
10.4 设计说明
10.5 源代码清单
10.6 测试说明
10.7 复审的结论
11 测试计划
11.1 引言
11.1.1 编写目的
11.1.2 背景
11.1.3 定义
11.1.4 参考资料
11.2 计划
11.2.1 软件说明
11.2.2 测试内容
11.2.3 测试1(标识符)
11.2.3.1 进度安排
11.2.3.2 条件
11.2.3.3 测试资料
11.2.3.4 测试培训
11.2.4 测试2(标识符)
……
11.3 测试设计说明
11.3.1 测试1(标识符)
11.3.1.1 控制
11.3.1.2 输入
11.3.1.3 输出
11.3.1.4 过程
11.3.2 测试2(标识符)
……
11.4 评价准则
11.4.1 范围
11.4.2 数据整理
11.4.3 尺度
12 测试分析报告
测试分析报告的编写是为了把组装测试和确认测试的结果、发现及分析写成文件加发记载,具体的编写内容要求如下:
12.1 引言
12.1.1 编写目的
12.1.2 背景
12.1.3 定义
12.1.4 参考资料
12.2 测度概要
12.3 测试结果及发现
12.3.1 测试1(标识符)
12.3.2 测试2(标识符)
……
12.4 对软件功能的结论
12.4.1 功能1(标识符)
12.4.1.1 能力
12.4.1.2 限制
12.4.2 功能2(标识符)
……
12.5 分析摘要
12.5.1 能力
12.5.2 缺陷和限制
12.5.3 建议
12.5.4 评价
12.6 测试资源消耗
13 开发进度月报
开发进度月报的编制目的是及时向有关管理部门汇报项目开发的进展和情况,以便函及时发现或处理开发过程中出现的问题。
一般地,开发进度月报是以项目组为单位每月编写的。
如果被开发的软件系统规模比较大,整个工程项目被划分给若干个分项目组承担,开发进度月报将以项目组为单位按月编写。
具体的内容要求如下:
13.1 标题
13.2 工程进度与状态
13.2.1 进度
13.2.2 状态
13.3 资源耗用与状态
13.3.1 资源耗用
13.3.1.1 工时
13.3.1.2 机时
13.3.2 状态
13.4 经费支出与状态
13.4.1 经费支出
13.4.1.1 支持性费用
13.4.1.2 设备购置费
13.4.2 状态
13.5 下个月的工作计划
13.6 建议
14 项目开发总结报告
项目开发总结报告的编制是为了总结本项目开发工作的经验,说明实际取得的开发结果以及对整个开发工作的各个方面的评价。
具体的内容要求如下:
14.1 引言
14.1.1 编写目的
14.1.2 背景
14.1.3 定义
14.1.4 参考资料
14.2 实际开发结果
14.2.1 产品
14.2.2 主要功能和性能
14.2.3 基本流程
14.2.4 进度
14.2.5 费用
14.3 开发工作评价
14.3.1 对生产效率的评价
14.3.2 对产品质量的评价
14.3.3 对技术方法的评价
14.3.4 出错原因的分析