软件工程实验指导 需求分析 项目设计.docx
《软件工程实验指导 需求分析 项目设计.docx》由会员分享,可在线阅读,更多相关《软件工程实验指导 需求分析 项目设计.docx(22页珍藏版)》请在冰豆网上搜索。
软件工程实验指导需求分析项目设计
《软件工程》实验
一、基本目的:
1.使学生把软件工程的基本原理和技术应用于实践。
2.使学生掌握实际大型软件的开发过程和组织方式。
3.使学生增强开发大型软件的能力。
二、实验环境:
文档制作工具为WORD、EXCEL、VISIO等,编程环境自选。
三、背景知识:
从理论上而言,软件生存期一般都可分为计划、需求分析、设计、编码、测试、运行维护六个步骤。
根据软件工程实施过程中的各阶段活动,我们可以把它归结为不同的软件生存期模型,并归结出每一阶段的实施的行为特征。
在软件工程的实施过程中,需要制做相应的文档。
1.计划阶段
计划阶段指技术人员辅助管理人员或市场部人员根据项目意向,做出初步需求调查、进行可行性论证,在论证通过后做系统方案,如委托开发,还需签定项目开发合同,并制定项目开发计划。
2.需求分析阶段
需求分析阶段,管理人员提出需求分析阶段计划,分析人员制作软件需求说明书,包括软件需求子系统需求说明书、数据要求说明书、子系统数据要求说明书、系统数据流图、子系统数据流图及其相应的词典。
系统需求说明书完成后应通过项目需求评审,经用户确认后出具需求分析验收报告。
初步制定测试计划。
3.设计阶段
在设计阶段需要制定系统实现方案,设计阶段计划,填写数据库设计说明书、详细设计说明书,详细设计应通过详细设计评审、出具详细设计验收报告,设计阶段完成后应开始制做用户手册、管理员手册、测试计划与测试案例设计。
4.编码阶段
在编码阶段应有数据库编程规范、编程语言编程规范、内部公用函数(模块)目录等。
设计和执行模块测试。
5.测试阶段
设计完成后,就应该进入测试阶段,测试阶段中,应该制定测试规范、填写测试计划与测试说明,测试过程中应填写软件测试报告。
6.运行维护阶段
测试阶段完成后,应进行系统交付,进入运行维护阶段。
系统维护阶段,用户发现问题时,应填写计算机软件问题报告单,提交信息部主管或根据合同约定向设计单位提交。
四、实验要求:
分项目小组,每组从可选项目中任选一题,也可自选题目作为课程实践题目。
每组指定一名组长,负责分工和制定标准等管理工作。
1.项目开发过程建议采用快速原型与增量开发相集合的模式,在基本明确需求的情况下建立系统整体原型供需求的讨论和确定,在需求和系统架构确定后,选取一个具有代表性或系统核心部分的子系统进行详细的设计开发。
开发方式可通过组内协商选择结构化方法或面向对象方法。
2.实验内容包括进行需求分析、系统设计、系统实现及测试、系统交付。
每个组员必须参加这个系统开发过程的部分工作,扮演某种角色,并书写部分实验报告。
3.实验报告要求包括项目开发计划、需求规格说明书、设计规格说明书、源程序清单、测试报告和用户手册。
全组文档格式、内容参照附件中模板,提交一份完整的实验报告(提交打印和电子两种形式)。
4.每组所选软件工程课程实践题目也作为数据库原理课程的课程实践题目,文档编制部分主要在软件工程课程实践中完成,程序编写部分主要在数据库原理课程的课程实践中完成。
课程实验报告要求:
以组为单位按软件开发可交付文档的形式书写实验报告,严格按附件中所给出的内容和格式要求。
其中,开发计划由组长完成,其他文档按计划中的任务分工,分别由各责任人完成。
详细要求见附件。
附件:
实验报告样本
常熟理工学院
软件工程课程实验实验报告
项目:
专业:
班级:
组:
组长:
成员:
指导教师:
完成日期:
1项目开发计划书……………………………………………………(页码)
2软件需求规格说明书………………………………………………(页码)
3设计规格说明书……………………………………………………(页码)
4源程序清单…………………………………………………………(页码)
5测试报告……………………………………………………………(页码)
6用户手册……………………………………………………………(页码)
一、项目开发计划书
完成人:
1.引言(Introduction)
1.1项目概述(ProjectSummary)
给出项目的初始描述。
1.2术语定义(TermsGlossary)
将该软件开发计划中的术语、缩写词进行定义。
1.3相关文档(RelatedDocuments)
当该文档变更时,可能对其他文档产生影响,受影响的文档叫相关文档,需将它们列出。
[1]……
[2]……
2.软件生存周期(SoftwareLifeCycle)
本节记录项目策划生存期定义的工作结果,需要描述的主要内容:
(1)项目生存期框图
(2)项目生存期说明
3.任务与工作产品(TaskandWorkProducts)
项目任务和工作产品,是指根据项目生存期阶段划分的任务,和相应阶段的工作产品。
记录项目生存期各阶段确定的需重点控制的阶段任务和工作产品。
建议以表格的形式,列出生存期各阶段的任务和工作产品。
项目包含的任务,如:
(1)需求分析
(2)系统设计
(3)系统实现
(4)测试
(5)产品交付
项目可能包含的产品,如:
(1)需求规格说明书
(3)系统设计说明书
(4)源程序
(5)测试报告
(6)用户手册
4.工作产品、任务规模、工作量估计(EstimatesofWorkProduct,TaskSizeandWorkload)
项目规模估算是为了确定项目所需的人工。
需要描述的主要内容有:
(1)对软件工作产品规模估计依据的简要描述。
(2)每种任务和工作产品规模估计的结果。
(3)规模估算的结果,建议用表格的形式列出。
5.资源需求计划(ResourceRequirementPlan)
指系统在开发环境、测试环境、及用户目标环境中,对计算机软、硬件资源的要求,如计算机存储能力、计算机处理器速度、通信通道容量、服务器处理能力等的估计。
6.软件项目进度计划(SoftwareProjectSchedule)
软件项目进度计划,是对项目的进度、人员工作分工所做的计划,此计划依据上述的估算和分析结果,计划方式建议采用表格的形式。
若采用工具制定项目计划,应将工具生成的图表作为项目计划的附件。
本节中需要描述的主要内容有:
(1)软件项目任务分解
(2)设定的里程碑
(3)开始和结束时间
(4)缓冲时间
(5)人员分配
二、需求规格说明书
完成人:
1.概述(Summary)
1.1项目的目的与目标(PurposeandAimofProject)
项目的目的是对开发本系统意图的总概括。
项目的目标是将目的细化后的具体描述。
项目目标应是明确的、可度量的、可以达到的,项目的范围应能确保项目的目标可以达到。
对于项目的目标可以逐步细化,以便与系统的需求建立对应关系,检查系统的功能是否覆盖了系统目标。
1.2术语定义(TermsGlossary)
将该用户需求报告中的术语、缩写进行定义,包括用户应用领域与计算机领域的术语与缩写等。
1.3相关文档(RelatedDocuments)
说明用户需求报告的变更,以及可能受变更影响的其他相关文档,如:
项目开发计划和设计说明书。
2.问题初始分析(EarlyAnalysis)
2.1场景描述(SceneDescription)
自然语言描述
2.2初始功能提取(EarlyFunctionDistill)
自然语言描述
3.目标系统功能需求(FunctionofTargetSystem)
3.1功能需求分析(FunctionAnalysis)
对具体功能需求进行细化分析,并用图形工具进行描述。
对于采用结构化分析方法的同学要求采用E-R图、数据流图和数据词典;
对于采用面向对象分析方法的同学要求采用业务类模型和用例图(必要时配合活动图和序列图)。
3.2功能需求点列表(FunctionList)
在功能需求分析完成后,要详细列出用户需求功能点列表,提供给后续设计、编程、测试中使用,更是为了用户测试验收中使用。
功能需求点列表的格式,如表2-1所示。
表2-1功能需求点列表
编号
功能名称
使用人
功能描述
输入内容
输出内容
1
2
3
4.目标系统性能需求(PerformanceofTargetSystem)
4.1时间要求(TimeRequest)
如:
(1)响应时间,如查询的最长等待时间。
(2)更新处理时间,如记账的最长时间。
(3)数据的转换和传送时间,如远程数据传输的时间要求。
(4)解题时间。
4.2空间要求(SpaceRequest)
如:
(1)支持的终端数。
(2)支持的并行操作的使用者数。
(3)处理的文件和记录数。
(4)处理任务的数量。
(5)对输入和输出数据的精度要求。
(6)对处理和传输过程中的精度要求。
4.3性能需求点列表(PerformanceList)
详细列出用户性能点列表,提供给后续分析、设计、编程、测试中使用,更是为了用户测试验收中使用。
需求性能点列表的格式,如表2-2所示。
表2-2性能需求点列表
编号
性能名称
使用部门
使用岗位
性能描述
输入内容
输出内容
1
2
3
5.目标系统界面与接口需求(InterfaceofTargetSystem)
5.1界面需求(InterphaseRequirement)
界面的原则要求,如方便、简洁、美观、一致等。
整个系统的界面风格定义,某些功能模块的特殊的界面要求。
(1)输入设备:
键盘、鼠标、条码扫描器、扫描仪等;
(2)输出设备:
显示器、打印机、光盘刻录机、磁带机、音箱等;
(3)显示风格:
图形界面、字符界面、IE界面等;
(4)显示方式:
1024*768、640*480等;
(5)输出格式:
显示布局、打印格式等。
5.2接口需求(InterfaceRequirement)
与其他系统的接口,如监控系统、控制系统、银行结算系统、税控系统、财务系统、政府网络系统及其他系统等。
(1)与系统特殊外设的接口,如CT机、磁共振、柜员机(ATM)、IC卡、盘点机等。
(2)与中间件的接口,要列出接口规范、入口参数、出口参数、传输频率等。
应在此列举出所有的外部接口名称、接口标准、规范。
外部接口列表,如表2-3所示。
表2-3外部接口需求点列表
编号
接口名称
接口规范
接口标准
入口参数
出口参数
传输频率
1
2
3
6.目标系统其他需求(OtherRequirementsofTargetSystem)
6.1安全性(Security)
6.2可靠性(Dependability)
6.3灵活性(Agility)
6.4特殊需求(SpecialRequirements)
如:
(1)进度需求:
系统的阶段进度要求。
(2)运行环境需求:
平台、体系结构、设备要求。
(3)培训需求:
用户对培训的需求,是否提供多媒体教学光盘。
(4)推广需求:
推广的要求,如在上百个远程部门推广该系统,是否要有推广的支持软件。
7.目标系统假设与约束条件(SupposeandRestrictionofTargetSystem)
假设与约定条件是