时间:2022-10-11 04:26:38
摘要:本文针对高等职业IT院校的项目实践教学,提出了一套具体解决的方法,以供同行参考。在这里介绍了在高等职业IT院校进行项目实践教学课程的具体实施办法,并通过实践验证该办法确实是有效可行。
关键词:项目实训课;虚拟公司
中图分类号:G642文献标识码:B
文章编号:1672-5913(2007)05-0023-04
对于IT院校常出现的问题是教育与实践脱节,常常是培养出的学生到IT企业后不能适应公司的工作环境,所学的知识与应用存在距离,公司还要对他们进行特殊培训。在IT院校开设项目实训课,模拟公司的工作环境,把学生组织成项目小组,按照公司的项目开发流程指导学生对真实项目的开发,能够很好地解决这个问题。为此,本文提供了一个项目实训课的实现案例。学生通过项目实训课的学习锻炼,使其达到具有一定IT领域项目开发经验,体验、了解公司的工作环境,熟悉公司的项目开发及项目管理流程,成为上手快、实战能力强、技术过硬、基本功较扎实、具有较强的团队精神和创业能力、用人单位抢手的人才。如果条件允许项目实训课程可采用双语教学,指导教师可尽量用英语指导学生。
1 项目团队组成
教师指导学生以一个虚拟公司为背景,组织成多个项目小组,每个学生在项目小组中承担一个或若干开发角色。进入项目小组后不得无故退出。项目小组有以下角色:
项目经理:负责本小组的人员协调和安排,制定项目开发计划,按照开发计划控制进度,在负责整体的同时,开发好属于自己的模块。
产品经理:主要使命是提高客户的满意度,在项目开发过程中代表为项目付款的系统拥有者的利益。
用户体验角色:代替实际用户使用产品,排除用户在使用产品过程中遇到的问题和障碍。
文档人员:协助项目经理、系统分析员完成要提交的文档,并敦促小组成员提交他们所负责的模块相应的文档,并整理后按照存储路径和格式及项目开发计划任务书中的时间段提交给导师。
系统分析员:负责本小组项目开发技术支持(软件配置管理、培训等),协助项目经理带领小组成员完成需求分析、概要设计、详细设计、编码、测试等一系列工作。
开发人员:按照项目经理和系统分析员以及项目开发计划任务书的要求,完成相应的工作任务,提交自己所负责的模块或者子系统的文档给文档负责人。
测试人员:负责系统测试。
2 实施流程
实施流程如图1所示。
图1 实施流程
3 项目管理
为了使同学们更好地熟悉掌握软件项目开发流程及项目管理规范,项目管理通过适当精简,主要包括以下活动:
(1)项目进度跟踪与监控
①项目周报制度:项目团队每周总结项目进度情况,撰写《项目周报》。
②周例会制度:导师每周召开项目例会,探讨问题,总结工作。
③项目计划跟踪:老师指导下各项目小组由项目经理根据项目开发计划对实际项目进展情况进行跟踪,作好项目跟踪记录。
④控制偏差:老师指导下项目经理根据项目的需求及设计文档对项目的功能实现进行监控,如果出现偏差应及时更正。确保项目的各功能与需求文档所要求的一致。
⑤指导教师应该给学生作适当的项目管理方面的培训,让学生了解软件工程及项目管理方面的知识。
(2)项目各阶段评审
①项目开发计划评审:由指导教师主持,由该虚拟公司的所有项目小组参加,对各项目小组制定的开发计划进行评审,学生可以提出自己的观点,进行辩论。老师进行讲评总结,然后各小组对项目开发计划进行修改、提交,作为考核项目小组工作的文档。
②项目需求分析报告评审:由指导教师主持,由该虚拟公司的所有项目小组参加,对各项目小组作的需求分析报告进行评审,学生可以提出自己的观点,进行辩论。老师进行讲评总结,各小组对需求分析报告进行修改、提交,作为考核项目小组工作的文档。
③项目设计报告评审:由指导教师主持,由该虚拟公司的所有项目小组参加,对各项目小组作的设计报告进行评审,学生可以提出自己的观点,进行辩论。老师进行讲评总结,各小组设计报告进行修改、提交,作为考核项目小组工作的文档。
④项目实施与测试指导评审:由指导教师主持,由该虚拟公司的所有项目小组参加,对各项目小组演示所做项目的功能,讲解项目实现原理,对认为好的算法或使用先进技术解决问题,应进行说明。其他学生对系统进行评审,学生可以提出自己的观点,进行辩论。老师进行讲评总结,各小组对项目系统作进一步进行修改,然后提交,作为考核项目小组工作的文档。
⑤项目总结与评审:由指导教师主持,由该虚拟公司的所有项目小组参加,以项目小组为单位对项目进行总结,指导学生写出项目总结报告。
(3)里程碑成果提交
①评审确认的各阶段文档。包括:项目开发计划、需求分析报告、设计报告等文档。
②项目总结报告。
③程序代码。
④最终成果物。
可以按照需求达到设计标准的可运行系统。
(4)管理文件及表格
项目开发进度表等。
4 项目质量保证
(1)执行研发中心质量管理体系
①依据ISO9001:2000质量保证体系要素
②适当加入特定文件及质量表格
③严格风险控制
④严格设计及测试环节
(2)加强预防和纠正措施
(3)加强管理评审
(4)加强问题跟踪
5 配置管理
软件配置管理分为版本管理和配置库管理,配置管理软件SourceSafe。
版本管理包括以下主要任务:
* 建立项目;
* 重构任何修订版的某一项或某一文件;
* 利用加锁技术防止覆盖;
* 当增加一个修订版时要求输入变更描述;
* 提供比较任意两个修订版的使用工具;
* 采用增量存储方式;
* 提供对修订版历史和锁定状态的报告功能;
* 提供归并功能;
* 允许在任何时候重构任何版本;
* 权限的设置;
* 晋升模型的建立;
* 提供各种报告。
6 项目考核
平时成绩与项目结项答辩成绩的比例为1∶1。
平时成绩考核:由考勤、程序代码及整个项目实施过程中所产生的所有文档的评审结果的综合。
项目结项答辩成绩考核:
(1)检查项目的系统运行是否正常,各项功能是否按照需求要求实现。
(2)项目结项后组织对项目的答辩会。
7 项目培训
指定项目实训课指导计划,设计流程,按计划对学生进行培训。
(1)指导教师在指导学生从事项目实施过程中,将“软件工程与项目管理”课程融入到项目的立项管理、需求开发与需求管理、系统概要设计等各个过程当中。同时将进行二次集中的知识讲授,讲授内容包含:项目场景的描述、分析项目;项目实施与测试指导、评价。
(2)指导教师根据学生的特点及项目的特点对项目实现过程中所要使用的一些关键技术进行培训。
(3)在项目的实现阶段,对学生项目开发工具的使用、项目开发环境的设置等方面进行指导。可对系统的整体框架,根据每个学生的具体情况,对一两个比较典型的模块进行剖析,让学生有一个开发参照模式,可以避免学生开发时无从下手的问题。
8 项目研讨
实训课的项目研讨分为三部分内容:
答疑解问:导师集中对同学在项目开发过程中出现的各种问题进行解答。
技术预研:是指在项目立项之后到项目开发工作完成之前的这段时间内,对项目所采用的关键技术提前学习和研究 ,以便尽可能早地发现并解决开发过程中将遇到的技术障碍。
项目阶段性研讨会议:实训课分为项目说明会、项目小组确定;项目需求分析研讨;项目设计研讨。其中项目小组成员对评审中的问题可以发表自己的意见,可以进行相互辩论,最后指导教师进行点评。
9 项目评审
由指导老师组成项目评审小组,听取项目团队的汇报并进行评审。包括项目开发计划评审、项目需求分析报告评审、项目设计报告评审、项目实施与测试指导评审、项目总结与评审。
评审目标如下:
* 发现任何形式表现的软件功能、逻辑或实现方面的错误;
* 通过评审验证软件的需求;
* 保证软件按预先定义的标准表示;
* 使项目更容易管理。
通过评审使项目小组成员真正掌握项目开发流程、了解软件工程及项目管理在项目开发过程中的作用。同时解决项目开发中一些问题,也起到对项目小组成员工作考核作用。
(1)评审过程
召开评审会议:一般应有3-5人参加。会议结束导师给予评审分数。
评审报告与记录:所提出的问题都要进行记录,在评审会结束前产生一个评审问题表,另外必须完成评审简要报告。
(2)评审准则
对每个正式技术评审分配资源和时间进度表;
对全部评审人员进行必要的培训。
10 结束语
本文中所论述的实训课的设计及实施方法已在我院的大学生创业中心实施,并收到了明显的效果,经过实训课培训后学生的项目能力有了明显的增强,完全可以在我们的创业中心参与各虚拟公司的项目开发工作并从中得到更多的工作经验。
参考文献:
[1] 林锐,唐勇,黄曙江,石志强. IT企业项目管理:问题、方法和工具[M].北京:电子工业出版社.2005.
[2] 陈宏刚,熊明华,林斌,等.软件开发过程与案例[M].北京:清华大学出版社.2003.
收稿日期:2006-11-23
作者简介:林跃进,男;出生年月:1958年5月21日,籍贯辽宁,副教授职称,硕士学位。研究方向:中间件技术及应用及软件工程与项目管理。