1、中南大学软件学院NO: HDSW200910Hwadee四川华迪信息技术有限公司2009 年 10 月http:/1目录一、 实训客户需求 2二、 实训目标 2三、 实训效果 2四、 实训角色 3五、 实训内容 35.1. 软件开发过程清单 35.2. 案例分析/项目过程体验 .35.3. 项目实战/技术综合规范应用 .4六、 实训日程 6七、 实训设施 7八、 实训组织方式 7九、 实训考核 8十、 实训预备知识 9十一、 实训交付内容清单 9十二、 实训项目简介 9http:/2一、 实训客户需求1. 适用对象:中南大学软件学院大一学生2. 进入条件:已经完成C/C+ 程序设计基础学习;3
2、. 实训周期: 15 天4. 计划受训人数: XX 人左右二、 实训目标本次实训的目的是使学生在学完C/C+程序设计基础这门课程后,学会并掌握 C/C+语言的基本技能,巩固已学的知识,补充未学的但又必要的内容。通过了解并实践常见的软件开发过程进行系统开发,并且使用 C/C+语言进行系统实现。在过程体验基础上,针对 IT 企业对从业人员个人综合素质及协同工作能力的要求,进行项目综合训练,使受训人员具备初步的职业意识与综合能力。具体目标如下:1. 了解实际项目分析、设计、开发、测试、部署等完整流程;2. 熟练使用常用 C/C+工具进行开发;3. 养成良好的表达、沟通和团队协作能力,掌握快速学习方法
3、,培养良好的分析问题和解决问题的能力;http:/3三、 实训效果 了解软件项目开发整个流程, 有初步的软件规范意识,并理解软件规范意识的真实含义, 具有一定的分析设计能力, 能够较熟练的使用开发工具 了解软件测试工作流程 能熟悉软件开发过程中各个文档的作用和编写; 能了解企业中的软件开发模式和团队合作模式。四、 实训角色角色 职责 主要工作程序员 负责按照项目所采用的标准来进行构件开发与测试,以便将构件集成到更大的子系统中,最终实现完整的系统。按照设计实施构件;集成构件;执行单元测试;修复测试发现的缺陷;开发安装工件。五、 实训内容5.1. 软件开发过程清单1. 软件开发过程http:/42
4、. 软件质量管理过程3. 软件协同工作过程4. 软件需求开发及分析设计5. 软件开发方法及工具使用5.2. 案例分析/项目过程体验本阶段通过实际开发项目案例的讲解及初步实践,让实训学员体验软件项目过程,包括项目的工程过程及管理过程。实训学员通过过程体验,能够达到以下目的: 了解软件企业使用的软件开发流程; 了解软件企业在团队协作开发过程中常用的开发管理环境及工具; 了解软件企业在软件开发过程中开展的质量管理活动,如软件测试、评审等; 初步熟悉软件企业在软件开发过程中常用的软件开发方法及开发工具; 熟悉软件企业基于组件的设计方法及设计转化为代码的一般步骤。序号 关注点 内容及要求 学时1 软件开
5、发过程 通过案例系统讲解软件工程过程流程,要求受训人员理解软件生命周期模型、软件工程活动,软件工作产品,掌握软件开发过程规范。22 软件质量管理过程 通过案例系统讲解软件测试过程流程,要求受训人员理解软件测试包含的活动、软件测试工作产品以及软件测试的一般方法,掌握软件测试过程规范。通过案例系统讲解软件同行评审流程,要求受训人员理解软件同行评审(技术评审)的范围、理解同3http:/5行评审开展的必要性,以及如何开展软件同行评审,掌握同行评审过程规范。3 软件协同工作过程 通过案例系统讲解如何在项目中协同工作,使受训人员深刻理解协同工作的重要性,并掌握协同工作的一般方法,包括如何理解软件项目计划
6、和跟踪、项目例会、软件配置与变更管理、软件质量保证等活动,受训人员能够在项目中配置各自项目的协同工作环境,并能充分利用工具开展协同工作,这些工具包括:1. Project 进度计划与跟踪工具;2. VSS 版本控制工具;34 软件需求开发及分析设计通过案例系统讲解软件需求开发和分析设计的步骤和方法,使受训人员理解需求的开发流程和方法,能够使用结构化方法来获取需求并且对需求进行分析设计。在需求获取及分析设计时,能够合理地使用建模工具。35 软件开发方法及工具使用通过案例系统讲解软件开发方法及开发工具的使用,使受训人员能够熟练配置和使用开发工具,掌握组件的开发方法,能够开发较简单的软件构件,能够快
7、速地集成软件构件。6http:/65.3. 项目实战/技术综合规范应用序号 训练科目 训练内容安排及要求完成的任务量 学时1 项目管理专项技能训练1. 训练内容概述:强化对项目计划、项目监督与控制、配置管理的专业技能训练。2. 要求完成的任务及数量:1) 按照开发过程开展项目活动;2) 进行项目计划活动,提交项目计划工件;3) 进行项目监督与控制活动,提交项目监督和控制相关工件;4) 进行配置管理活动,建立项目的配置管理库,并基于配置管理系统开展项目活动;项目管理贯穿项目整个生命周期2 需求开发专项技能训练1. 训练内容概述:强化基于结构的需求开发的专业技能训练,强化数据流图的使用, 方法和步
8、骤。2. 要求完成的任务及数量:根据给定的项目原始需求确定系统的功能以及它们之间的关系;对每个功能进行阐述,编写功能规格说18http:/7明;3 分析设计专项技能训练1. 训练内容概述:强化基于结构化分析设计的专业技能训练。2. 要求完成的任务及数量:对每一个功能开展功能分析活动,使用流程图表示功能实现;对每一个功能进行功能设计,类设计,得到设计模型。184 软件实施专业技能训练1. 训练内容概述:强化软件实施专业技能训练,提高集成开发环境的熟练度。2. 要求完成的任务及数量:按照设计模型对项目进行单元编码实施;对单元进行单元测试;按照集成策略形成集成工作版本;提交完整应用提交系统测试。36
9、5 软件测试专业技能训练1. 训练内容概述:强化软件测试专业技能训练,提高软件测试工具的使用技巧。2. 要求完成的任务及数量:12http:/8开展计划测试活动,提交测试计划;开展设计测试活动,提交测试用例;执行测试,提交测试记录;进行评估测试活动,提交测试分析报告;对缺陷进行跟踪和监控。六、 实训日程序号 时间 实训内容 方式第一阶段、案例分析/项目过程体验上午 软件开发过程(3 学时) 讲座/ 案例1 第一天下午 软件项目管理(3 学时) 讲座/ 案例上午 软件分析设计(3 学时) 讲座/ 案例3 第二天下午 软件测试(3 学时) 讲座/ 案例4 第三天 上午 C+编程 讲座/ 案例第二阶
10、段、项目实战6 第三天 下午 项目实践-项目启动 项目实战上午 项目实践-项目计划、项目例会 项目实战6 第四天下午 项目实践-需求开发 项目实战上午 项目实践-需求开发 项目实战7 第五天下午 项目实践-需求阶段里程碑评审 阶段评审/点评第六天 项目实践-分析设计http:/9上午 项目实践-分析设计里程碑评审 项目实战8 第七天下午 项目实践-编码实施及测试 阶段评审/点评9 第八天第十四天项目实践-编码实施及测试 项目实战10 第十五天 项目结项评审及训后考评 项目结项/总结七、 实训设施序号 实训设施 规格要求 数量1 计算机 P4 512M 及以上 1 套 /人2 开发工具 Visu
11、al C+6.0 1 套 /人3 配置管理 VSS 1 套 /项目组八、 实训组织方式实训项目组织结构项目组 一个项目组一般由 10-15 名实训学员组成,按照实训方案的要求完成实训工作任务项目经理 实训基地为每个学员提供施展自己才能的舞台,项目经理由学员通过公开、公平、公正的方式竞选,再由实训学员无记名投票方式产生,负责整个项目的开发计划制定、调整、资源分配、进度管理、沟通、协调管理等工作。项目经理向专业指导工程师负责配置经理 为产品开发团队提供全面的配置管理 (CM) 基础设施和环境http:/10需求分析 通过概括系统的功能和界定系统来领导和协调需求获取及用例建模设计员 定义一个或几个类
12、的职责、操作、属性及关系,并确定应如何根据实施环境对它们加以调整。此外,设计员可能要负责一个或多个设计包或设计子系统,其中包括设计包或子系统所拥有的所有类。程序员 负责按照项目所采用的标准来进行构件开发与测试,以便将构件集成到更大的子系统中,最终实现完整的系统界面设计员领导和协调用户界面的原型设计和正式设计测试员 通过对开发活动产生所的工件进行验证和确认活动,发现缺陷以提高产品的质量实训执行经理实训执行经理由公司签订实训合同的市场人员担任,负责监督和协调整个实训项目按照实训方案顺利执行实训项目管理部实训项目管理部负责实训学员的软、硬件工作环境,为实训学员提供资源保障,同事监督实训学员遵守职业工
13、作记录情况专业指导工程师专业技术指导工程师负责在实践过程中对学员的各种技术问题进行辅导并监督项目组的实施过程专业技术讲师专业技术讲师根据项目组的实际需求情况,不定期提供专业技术培训讲座九、 实训考核1、实训学员成绩:项目组成绩*60%+个人考核成绩*40%http:/111.1、 项目组考核方式序号 考核点 考核内容 考核方式 比例需求分析阶段 评审及答辩 20分析设计阶段 评审及答辩 30项目实施阶段 评审及答辩 401 项目开发各个阶段里程碑评审项目结项 评审及答辩 101.2、项目成员考核1 分配的任务完成情况根据评审检查每个人任务完成情况评审 652 编码习惯和熟练程度根据学员编码可读
14、性、安全性、高效性、可维护性等方面进行考评。走查 53 职业素养 根据学员平时考勤、纪律、工作积极性、团队协同工作助能力进行考评走查和答辩 204 创新和钻研精神根据学员解决技术难题等方面的成果进行考评走查 10十、 实训预备知识专业方向 应具备的预备知识http:/12了解1、软件开发过程基础;2、项目管理基础;C/C+熟悉3、开发语言 C/C+;4、软件开发工具 Visual C+6.0十一、 实训交付内容清单序号 工件名称1 项目组提交最终文档:项目管理文档(软件项目计划、阶段评审记录、配置管理文档)需求开发文档(需求规格说明书)概要设计文档(概要设计设计说明书)测试文档(测试计划、测试
15、用例、测试日志、测试分析报告)2 项目组提交最终版本源代码工程、软件安装程序3 实训学员提交个人实训项目成果4 实训学员提交实训总结报告5 实训学员提交实训意见调查表实训结束后,实训基地最终向学院提供学员详细的项目成果和实训考核成绩。十二、 实训项目简介1. 民航订票系统任务:通过此系统可以实现如下功能: 1录入 可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定) http:/132查询 可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓) ; 可以输入起飞抵达城市,查询飞机航班情况; 3订票 (订票情况可以存在一个数
16、据文件中,结构自己设定) 可以订票,如果该航班已经无票,可以提供相关可选择航班; 4退票 可退票,退票后修改相关数据文件; 客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。5修改航班信息: 当航班信息改变可以修改航班数据文件。 基本要求: 1根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能; 2界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。2. 自动贩卖机主要功能:某公司请你为其生产的自动贩卖机编写软件。这种无人值守自动贩卖机贩卖价值为 ABC 三种商品,价格分别为 2 元,3 元和 6 元。顾客投入 10 元的纸币,然后选择购买
17、 3 种商品之一,自动贩卖机吐出商品,并且找给用户零钱。如果商品用完,或者无法找零,则给出用户一个提示,商品已售完,并且退还纸币。自然,你的贩卖机用户希望尽可能地给用户找零,以免流失顾客。为了调查用户的喜好,希望得到三种商品的每日消费数据,由此来调整货柜中三种货物的存贮量。你的程序将实现以下功能: (1)库存查询:检索当前三种商品的储存量 http:/14(2)商品上架:为三种商品增加或者减少储量 (3)销售查询:分别统计今天每种商品的销售量和销售额 (4)会计查询:当天的往来帐目以及剩余零钞数目。3. 宿舍管理查询软件任务:为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求:A. 采用交互工作方式B. 建立数据文件 ,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)2) 查询菜单: (用二分查找实现以下操作)A. 按姓名查询 B. 按学号查询 C. 按房号查询3) 打印任一查询结果(可以连续操作)