北华航天工业学院软件项目管理案例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
北华航天工业学院
软件项目管理案例
课程设计题目:档案管理系统
作者所在系部:计算机与遥感信息技术学院作者所在专业:软件工程
作者所在班级:B13531
作者学号:201322636
作者姓名:
指导教师姓名:王健
完成时间:2015年11月19日
2015年11月19日
第一章需求分析
北华航天工业学院一直采用人工进行档案管理工作,档案管理人员经常报怨劳动强度大,效率低下,为节省人力和财力,节省借阅人员的等待时间,设计院决定引入计算机管理,拿出专项经费,委托软件开发公司开发一套功能齐全的档案管理系统。
于是在2016年3月,在院长的指示下,由档案室牵头,项目管理专家参与,起草了一份《北华航天工业学院档案管理系统开发项目需求建议书》(即招标书),并在报纸上公布。
在需求建议书中,给出了以下主要信息:北华航天工业学院向软件开发承约商征求档案管理系统开发;承约商必须最迟在2016年4月30日前向北华航天工业学院提交《北华航天工业学院档案管理系统开发项目申请书》(即投标书);北华航天工业学院将在5月15日前选中一家承约商;该项目完成的期限为6个月,从7月1日到12月31日,所有的交付物必须不迟于12月31日提供给北华航天工业学院;合同必须以一个商定的价格,向满足建议书要求的承约商付款。
多家软件开发公司在报纸上看到项目需求建议书后,纷纷编制申请书,并寄发给北华航天工业学院。
最后,亚华软件开发公司经过激烈竞争,以35万元的价格承接了此项目。
亚华软件开发公司经过研究,决定由张强出任此项目的项目经理。
第二章项目章程
2.1项目名称:开发一套功能齐全的档案管理系统
2.2项目重要性:
节省人力和财力,提高档案管理人员的工作效率
节省借阅人员的等待时间
有利于提高学院的核心竞争力
2.3项目目标
总目标:为东方建一套筑设计院开发一套劳动强度小,效率高,节省人力和财力,节省借阅人员的等待时间的工作方法
分目标:开发一套20用户、运行在Windows7版本以上功能齐全的档案管理系统
2.4项目主要可交付成果
交付物:北华航天工业学院档案管理系统、软件文档、用户手册(修改)2.5项目经理及职责
项目经理:张强
项目经理的职责:计划并执行整个项目,同潜在用户进行交流,需求分析,界面设计
2.6项目主要干系人
主要内部干系人:吴斌、刘丽
主要外部干系人:谢红、张辉
2.7项目总体进度计划及主要里程碑
项目开始时间:2016年7月1日
项目结束时间:2016年12月31日
主要里程碑安排:
2016年7月1日~2016年7月10日:方案设计
2016年7月11日~2016年7月20日:用户需求调研
2016年7月21日~2016年12月10日:软件开发
2016年12月11日~2016年12月31日:BETA测试
2.8项目总体预算
项目总体预算:35万元以内
2.9各职能部门应提供的配合
1.设计院项目领导和负责人能及时处理工程建设过程中遇到的问题,无相互推诿,延时响应等延误工期的情况发生。
2.能及时向上级部门上报工程建设进度及建设过程中遇到的问题
2.10项目审批要求:符合讨论中的标准
2.11章程的批准
本项目章程于2016年5月16日由下列人员签字批准:
姓名:张强职务:项目经理
签字:张强
第三章项目计划
3.1进度计划
根据合同的要求,亚华软件开发公司要提交一套项目计划书,张强对项目实施各工作阶段进行了初步的划分和进度安排,具体如表1:
工作阶段进度安排
方案设计2016年7月1日~2016年7月10日
用户需求调研2016年7月11日~2016年7月20日
软件开发2016年7月21日~2016年12月10日
BETA测试2016年12月11日~2016年12月31日
表1
表1列出的初步进度安排转化成相应的甘特图如图1:
图1
3.2工作分解
张强对上表划分的各工作阶段进行了工作分解,并把工作分解的内容列在表2中。
档案管理系统开发项目工作分解清单
1.方案设计
2.用户需求调研
3.软件开发
3.1功能框架设计
3.2程序代码编制
3.2.1用户输入功能代码编制
3.2.2用户查询功能代码编制
3.2.3用户数据功能代码编制
3.2.4主界面代码编制
3.2.5安全登陆界面代码编制
3.2.6界面美化代码编制
4.Beta测试
表2
根据上表编制该软件开发项目的WBS工作分解结构图,同时对各项工作进行编码,结构如图2:
图2
3.3网络计划
在编制项目网络计划图前,张强经理对项目各项工作任务的工期进行了估计,估计值列于表3中第4列,并且他还明确了各项间的逻辑关系,确定了需要延迟的工作任务及延迟时间,制作了网络计划工作表3:
序号任务名称紧后工作工期
(天)搭接关系搭接时间
(天)
A方案设计B10
B用户需求调研C10
C功能框架设计D,E,F,G,H,
I
20
D用户输入功能代码编制J40
E用户查询功能代码编制J50
F用户数据功能代码编制J80
G主界面代码编制J40FS20 H安全登陆界面代码编制J20FS40 I界面美化代码编制J10FS80 J Beta测试20
表3
为编制网络图,首先设置紧前紧后工作。
设置图如图3:
图3 3.3.1编制单代号网络图步骤:
首先设置网络图选项,如图4:
图4得到的网络图如图5:
图5
●所要解决的问题
1.在项目规划阶段需要对项目的目标进行描述,请你为张强经理明确确定项目的目标描述(交付物、里程碑、性能、工期、成本)。
交付物:北华航天工业学院档案管理系统、软件文档、用户手册(修改)
里程碑:方案设计开始\结束、需求调研开始\结束、软件开发开始\结束、测试开始\结束、培训开始\结束、项目结束
性能:20用户、运行在Windows7版本以上、
工期:从7月1日到12月31日(7个月)
成本:35万元之内
2.根据合同的要求,亚华软件开发公司要提交一套项目计划书,张强对项目实施各工作阶段进行了初步的划分和进度安排,具体如下表1:
工作阶段进度安排
方案设计2016年7月1日~2016年7月10日
用户需求调研2016年7月11日~2016年7月20日
软件开发2016年7月21日~2016年12月10日
BETA测试2016年12月11日~2016年12月31日
上表列出的初步进度安排转化成相应的甘特图如下:
3.张强对上表划分的各工作阶段进行了工作分解,并把工作分解的内容列在表2中。
档案管理系统开发项目工作分解清单
1.方案设计
2.用户需求调研
3.软件开发
3.1功能框架设计
3.2程序代码编制
3.2.1用户输入功能代码编制
3.2.2用户查询功能代码编制
3.2.3用户数据功能代码编制
3.2.4主界面代码编制
3.2.5安全登陆界面代码编制
3.2.6界面美化代码编制
4.Beta测试
根据上表编制该软件开发项目的WBS 工作分解结构图,同时对各项工作进行编码,
结构如下:
4.在编制项目网络计划图前,张强经理对项目各项工作任务的工期进行了估计,估计值列于表3中第4列,并且他还明确了各项间的逻辑关系,确定了需要延迟的工作任务及延迟时间,制作了网络计划工作表3:序号
任务名称
紧后工作
工期
(天)
搭接关系搭接时间
(天)
A 方案设计
B 10B 用户需求调研
C 10C
功能框架设计
D,E,F,G,H,I
20
D 用户输入功能代码编制J 40
E 用户查询功能代码编制J 50
F 用户数据功能代码编制J 80
G 主界面代码编制J 40FS 20
H 安全登陆界面代码编制J 20FS 40I
界面美化代码编制
J
10
FS
80
J Beta测试20
为编制网络图,首先设置紧前紧后工作。
设置图如下:
1编制单代号网络图,在网络图上填入工作任务的序号、工期、最早开始时间、最早结束时间、最迟开始时间、最迟结束时间、延迟时间、总时差、自由时差。
首先设置网络图选项,如下:
得到的网络图如下:
2在网络图中找出并标明关键路径,并据此计算项目总工期。
关键路径即为下图中红色标识路线:
经设置后,可以显示项目总工期如下:
5.假使参与项目的每位工作人员每天工作8个小时,张强经理在编制项目预算过程中得出表4,表4中给出了项目各项工作任务需要的工时、工期、人力资源种类、人力资源费率、除人力资源外的其它投入:
序号任务名称工时工
期
资源
名称
资源费率(元
/小时•人)
人力资源数
目(人)
其它投
入
(元)
成本预算
(元)
A方案设计40010设计
人员
405140017400
B用户需求调
研16010调研
人员
30220006800
C功能框架设
计64020设计
人员
404100026600
D用户输入功
能代码编制64040编程
人员
502100033000
E用户查询功
能代码编制160050编程
人员
50480000
F用户数据功160080编程5031000090000
能代码编制人员
G
主界面代码编制
112040
编程人员
504100057000
H
安全登陆界面代码编制
24020
编程人员
50212000
I
界面美化代码编制
16010
编程人员
5028000
J
Beta 测试
64020
测试人员
30419200
合计
16400350000
项目各项工作任务预算成本表
各种资源的统计图如下:
最终成本累积图如下:
6.在项目的实施过程中,2016年10月15日,亚华软件开发公司对项目实施进行检查,发现一些工作任务已经完成,一些工作任务正在实施,另外一些工作任务还没有开工。
在10月15日这个时间点上,项目各项工作任务的实际成本在表5中给出;项目各项工作任务的进度实际状态在下图中给出,图中的百分数表示工作任务的完成情况。
序号任务名称实际成本
(元)
A方案设计18000
B用户需求调研11000
C功能框架设计21000
D用户输入功能代码编制15000
E用户查询功能代码编制0
F用户数据功能代码编制40000
G主界面代码编制30000
H安全登陆界面代码编制12000
I界面美化代码编制0
J Beta测试0
合计147000
2016年10月15日项目各项工作任务实际成本表
2016年10月15日项目各项工作任务进度状态图(按月并以完成百分比表示)
第四章项目管理
4.1团队管理
培养软件开发中的交流与沟通
在工作中,软件开发领导者必须注意培养团队的沟通意识。
沟通是解决项目问题的基础,没有有效的沟通,就不可能对软件开发进度进行管理。
如果在开发过程不及时沟通的话,很容易造成最后项目的巨大偏差。
建设完备的团队激励机制
一个高效的软件开发团队必然有一套内部的激励体制。
明确的激励体制会调动员工的对于工作的热情,员工会为了达到某一激励项目而全身心投入到工作中去,这会提高个人的工作效率,从而将整个团队的工作效率提高上去。
合理搭配团队中的人员
首先要了解不同成员的特点,例如某人的创新性很强,某人的编程十分细致等。
根据这些成员不同的特点进行合理搭配。
将具有创新性的成员与编程能力较强的成员组成一个小组,有利于快速创新出新的方法,将责任心强的成员与编程能力扎实的成员搭配为一组,可以完成对某些需要限时解决的问题。
有时候在安排人员方面还要根据人员的性格来决定,避免发生不必要的摩擦。
建立统一的规范软件开发标准
软件的开发是一项需要创造性的工作,但是创造的时候必须要有一定的规范。
这个规范就是统一的软件开发框架。
统一的软件开发框架可以让团队成员知道应该如何达到开发目标,知道自己在什么时候应该做什么事情,也可以建立起一套团队的开发风格。
建设软件开发团队的团队文化
文化是一套做事的方式,团队文化就是团队以何种工作方式进行工作,每一个成功的团队都有自己的团队文化。
团队的领导者应该在建立团队的时候就注意,逐渐培养团队的文化。
优秀的团队文化会让团队成员树立长远的目标,产生强烈进取心,高标准要求自己,从而更多地投入软件开发中去,把简单的事情做到极致。
4.2风险管理
软件项目管理存在着风险,如果我们提前重视风险,并且有所防范,就可以最大限度减少风险的发生。
进行风险管理是有效的手段。
4.2.1风险的分类
根据风险内容,我们可以将风险分为项目风险(成本提高,时间延长等)、技术风险(技术不成熟等)、商业风险(销售问题等)、战略风险(公司的经营战略发生了变化)、管理风险(公司管理人员是否成熟等)、预算风险(预算是否准确等)等。
另外,我们还可以将风险分为已知风险(如员工离职等)、可预报风险(从以往经验得出可能有风险的)和不可预知风险。
4.2.2风险的识别
风险识别的有效方法是建立风险项目检查表。
主要涉及以下几方面检查:产品规模风险检查
业务影响风险检查
与客户相关的风险检查
过程风险检查
技术风险检查
开发环境风险检查
与人员的模式和经验有关的风险检查
4.2.3风险评估
风险评估主要从下面七个方面进行:
发生的可能性
发生的结果(影响)
建立一个尺度表示风险可能性(如,极罕见、罕见、普通、可能、极可能)描述风险带来的后果
估计对产品和项目的影响
确定风险评估的正确性
根据影响排定有限队列
另外,要对每个风险的表现、范围、时间做出尽量准确的判断。
4.2.4风险的评价
对风险的评价主要依据三个因素:风险描述、风险概率和风险影响。
从成本、进度及性能三个方面对风险进行评价。
确定项目的中止点,在中止点出再一次进行风险评价。
4.2.5风险的驾驭和监控
风险的驾驭与监控主要要靠管理者的经验来实施。
如,某开发人员的离职概率是0.7,离职后会对项目造成一定的影响,则该风险驾驭和监控的策略如下:与在职人员协商,确定流动原因。
在项目开始前,把环节这些流动原因的工作列入风险驾驭计划。
项目开始时,作好人是会流动的准备,采取一些措施确保人员一旦离开时,项目仍能继续。
制定文档标准,并建立一种机制,保证文档及时产生。
对所有工作进行细微详审,使更多人能够按计划进度完成自己的工作。
对每个关键性技术人员培养后备人员。
在考虑风险成本之后,决定是否采用上述策略。
结束语
项目管理虽然没有非常高深的理论,但要真正实施起来,也绝非易事。
对于软件开发企业而言,这不是一个小的改变,而是一种变革,企业需要为此付出艰苦的努力,宣传并树立公司范围内的项目管理文化十分重要。
从而在实践中锻炼提高,解决各种各样的问题,使项目管理工作越做越好。