1《软件过程管理》实验指导书一、基本目的:1.软件开发过程的基本原理和技术应用于实践。2.使学生掌握软件开发过程和组织过程,强化学生规范化开发软件的意识和能力。二、实验环境:硬件环境:PC计算机、服务器。过程管理工具:Project2003、SVN、VSS、ClearCase、WORD、EXCEL、VISIO、RATIONALROSE等,编程环境自选。三、实验要求:每班将4-6人分为一个小组,每组从以下题目中任选一题,也可自选题目作为课程实践题目。每组指定一名组长,负责分工和制定标准等管理工作。1.项目开发过程建议采用快速原型与增量开发相集合的模式。指导书中给出的软件项目的需求为不完整的功能需求描述,各小组根据需求工程过程,对给出的项目需求进行需求获取和分析。在基本明确需求的情况后建立系统整体原型供需求的讨论和确定,在需求和系统架构确定后,各自对所分配子系统进行逻辑建模与设计开发。开发方式要求采用面向对象方法。2.实验内容包括软件项目管理计划(包括资源管理与分配,项目进度计划等);小组软件开发过程中应用的过程规范及文档模板的制定(包括需求变更控制过程制定,编码规范的制订,软件问题报告单和软件修改报告单模板等);系统分析与设计;软件配置计划。在软件开发过程中,进行需求变更,体会需求变更控制过程和需求变更后对项目管理计划和软件配置的影响。各组全体成员分工合作,最后按系统整体设计方案实现系统原型。3.实验报告要求包括软件项目开发计划,软件需求规格说明书,软件配置管理2计划,软件设计规格说明书,软件测试报告。报告中还包括以下附件:附件A:小组制定的软件过程规范文档;附件B:其他软件开发过程信息(项目任务书,个人进度安排,项目进度周报,软件问题报告单(SPR)软件修改报告单(SCR)变更申请单等)全组文档格式、内容参照本指导书给出的模板。附件A附件B中的文档模板可由项目小组根据小组特点制定。提交一份完整的实验报告(提交打印和电子两种形式)。五、实验题目:1、软件工程课程教学网站作为教学的辅助环节,该教学网站能为教师提供课程信息和教学资料的管理维护,教学过程的管理,作业的布置、批改等;为学生提供教学资料的下载,作业的上传下载,信息的查询等功能。另外,还有在线模拟考试(链接)、BBS论坛(链接)等功能。2、软件工程实验过程管理系统出题(教师、学生),分组,选题,计划管理(计划制定、计划执行、计划变更、计划评审)、软件规范管理、需求管理(需求获取、需求分析、需求变更、需求评审)、设计(概要设计、详细设计、设计变更、设计评审)、测试管理、实验报告管理、成绩评定(组内评定、小组成绩评定、教师评定)论坛、教师学生信息维护3、软件工程课程群教学论坛4、在线考试系统5、高校排课系统6项目管理软件的开发7基于Android平台的手机相册38基于地理信息系统的校园导航系统9基于地理信息系统的大众点评开发语言和工具:(C#,JAVA,C++)VS2010,SQLSERVER2008,sqlserver2000六、课程实验报告要求:以组为单位按软件系统开发可交付文档的形式书写实验报告,按附件中所给出的内容和格式要求作为参考。其中,项目计划书、软件过程规范的制定由组长组织全组成员共同完成,其他文档按系统功能结构进行分工,分别由各责任人完成相应部分文档然后进行整合。详细要求见附件。七、实验时间安排:由实验室安排。4附件:实验报告样本河北工业大学《软件过程管理》课程实验实验报告题目:专业:班级:分组编号:组长:成员:指导教师:完成日期:5目录1软件项目开发计划………………………………………………(页码)2软件需求规格说明书……………………………………………(页码)3软件配置管理计划……………………………………………(页码)4软件设计规格说明………………………………………………(页码)5软件测试计划……………………………………………………(页码)6软件测试分析报告………………………………………………(页码)7软件项目开发总结报告…………………………………………(页码)附件A:小组制定的软件过程规范……………………………………(页码)附件B:其他软件开发过程记录信息……………………………………(页码)6小组成员角色与分工情况表姓名职责和完成的工作项目组评定7一、软件项目开发计划完成人:1引言1.1编写目的说明:编写这份软件项目开发计划的目的,并指出预期的读者。1.2背景说明:a.待开发的软件系统的名称;b.本项目的任务提出者、开发者、用户及实现该软件的计算中心或计算机网络;c.该软件系统同其他系统或其他机构的基本的相互来往关系。1.3定义列出本文件中用到的专门术语的定义和外文的首字母组词的原词组。1.4参考资料列出用得着的参考资料,如:a.本项目的经核准的计划任务书和合同、上级机关的批文;b.属于本项目的其他已发表的文件;c.本文件中各处引用的文件、资料,包括所要用到的软件开发标准。列出这些文件资料的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。2项目概述2.1工作内容简要地说明在本项目的开发中须进行的各项主要工作。82.2主要参加人员扼要说明参加本项目开发的主要人员的情况,包括他们的技术水平。2.3产品2.3.1程序列出须移交给用户的程序的名称、所用地编程语言及存储程序的媒体形式,并通过引用相关文件,逐项说明其功能和能力。2.3.2文件列出须移交用户的每种文件的名称及内容要点。2.3.3服务列出需向用户提供的各项服务,如培训安装、维护和运行支持等,应逐项规定开始日期、所提供支持的级别和服务的期限。2.3.4非移交的产品说明开发集体应向本单位交出但不必向用户移交的产品(文件甚至某些程序)。2.4验收标准对于上述这些应交出的产品和服务,逐项说明或引用资料说明验收标准。2.5完成项目的最迟期限2.6本计划的批准者和批准日期3实施计划3.1工作任务的分解与人员分工对于项目开发中需要完成的各项工作,从需求分析、设计、实现、测试直到维护,包括文件的编制、审批、打印、分发工作,用户培训工作,软件安装工作等,按层次进行分解,指明每项任务的负责人和参加人员。3.2接口人员说明负责接口工作的人员及他们的职责,包括:9a.负责本项目同用户的接口人员;b.负责本项目同本单位各管理机构,如合同计划管理部门、财务部门、质量管理部门等的接口人员;c.负责本项目同个份合同负责单位的接口人员等。3.3进度对于需求分析、设计、编码实现、测试、移交、培训和安装等工作,给出每项工作任务的预定开始日期、完成日期及所需资源,规定各项工作任务完成的先后顺序以及表征每项工作任务完成的标志性事件(即所谓“里程碑)。3.4预算逐项列出本开发项目所需要的劳务(包括人员的数量和时间)以及经费的预算(包括办公费、差旅费、机时费、资料费、通讯设备和专用设备的租金等)和来源。3.5关键问题逐项列出能够影响整个项目成败的关键问题、技术难点和风险,指出这些问题对项目的影响。4支持条件说明为支持本项目的开发所需要的各种条件和设施。4.1计算机系统支持逐项列出开发中和运行时所需的计算机系统支持,包括计算机、外围设备、通讯设备、模拟器、编译(或汇编)程序、操作系统、数据管理程序包、数据存储能力和测试支持能力等,逐项给出有关到货日期、使用时间的要求。4.2需由用户承担的工作逐项列出需要用户承担的工作和完成期限。包括需由用户提供的条件及提供时间。4.3由外单位提供的条件逐项列出需要外单位分合同承包者承担的工作和完成的时间,包括需要由外单位提供的条件和提供的时间。5专题计划要点说明本项目开发中需制定的各个专题计划(如分合同计划、开发人员培训计划、10测试计划、安全保密计划、质量保证计划、配置管理计划、用户培训计划、系统安装计划等)的要点。11二、需求规格说明书完成人:1.概述(Summary)1.1项目的目的与目标(PurposeandAimofProject)项目的目的是对开发本系统意图的总概括。项目的目标是将目的细化后的具体描述。项目目标应是明确的、可度量的、可以达到的,项目的范围应能确保项目的目标可以达到。对于项目的目标可以逐步细化,以便与系统的需求建立对应关系,检查系统的功能是否覆盖了系统目标。1.2术语定义(TermsGlossary)将该用户需求报告中的术语、缩写进行定义,包括用户应用领域与计算机领域的术语与缩写等。1.3相关文档(RelatedDocuments)说明用户需求报告的变更,以及可能受变更影响的其他相关文档,如:项目开发计划和设计说明书。2.问题初始分析(EarlyAnalysis)2.1场景描述(SceneDescription)自然语言描述2.2初始功能提取(EarlyFunctionDistill)自然语言描述3.目标系统功能需求(FunctionofTargetSystem)3.1功能需求分析(FunctionAnalysis)对具体功能需求进行细化分析,并用图形工具进行描述。12采用面向对象分析方法,要求采用业务类模型和用例图,配合活动图和序列图进行系统逻辑建模。3.2功能需求点列表(FunctionList)在功能需求分析完成后,要详细列出用户需求功能点列表,提供给后续设计、编程、测试中使用,更是为了用户测试验收中使用。功能需求点列表的格式,如表2-1所示。表2-1功能需求点列表编号功能名称使用人功能描述输入内容输出内容1234.目标系统性能需求(PerformanceofTargetSystem)4.1时间要求(TimeRequest)如:(1)响应时间,如查询的最长等待时间。(2)更新处理时间,如记账的最长时间。(3)数据的转换和传送时间,如远程数据传输的时间要求。(4)解题时间。4.2空间要求(SpaceRequest)如:(1)支持的终端数。(2)支持的并行操作的使用者数。(3)处理的文件和记录数。(4)处理任务的数量。(5)对输入和输出数据的精度要求。(6)对处理和传输过程中的精度要求。4.3性能需求点列表(PerformanceList)详细列出用户性能点列表,提供给后续分析、设计、编程、测试中使用,更是为了用户测试验收中使用。需求性能点列表的格式,如表2-2所示。13表2-2性能需求点列表编号性能名称使用部门使用岗位性能描述输入内容输出内容1235.目标系统界面与接口需求(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外部接口需求点列表编号接口名称接口规范接口标准入口参数出口参数传输频率123146.目标系统其他需求(OtherRequirementsofTargetSystem)6.1安全性(Security)6.2可靠性(Dependability)6.3灵活性(Agility)6.4特殊需求(SpecialRequirements)如:(1)进度需求:系统的阶段进度要求。(2)运行环境需求:平台、体系结构、设备要求。(3)培训需求:用户对培训的需求,是否提供多媒体教学光盘。(4)推广需求:推广的要求,如在上百个远程部门推广该系统,是否要有推广的支持软件。7.目