本论文为关于软件开发相关经济管理专业研究生毕业论文,关于供用电管理系统开发中的项目管理相关自考毕业论文开题报告,可用于软件开发论文写作研究的大学硕士与本科毕业论文开题报告范文和优秀学术职称论文参考文献资料下载。免费教你怎么写软件开发及管理系统及项目管理方面论文范文。
【摘 要】本文分析了油田电力数据管理软件开发时用户需求的不确定性和易变性,以Scrum方法为指导,以Scrum方法为指导,提出了持续交付开发成果和持续改进系统设计的项目开发思路,有效规避项目风险,并提高软件质量.
【关 键 词 】软件项目 敏捷方法 迭发 持续改进
1.引言
随着信息化大潮的到来,越来越多的管理工作都走向了信息化,针对油田公司的供用电管理,也急需一套管理信息系统的支持.
油田公司每年电力消耗近20亿千瓦时,用电能效对公司利润影响巨大.电力管理部门负责整个公司的供用电管理业务,需要广泛采集各采油厂的用电数据,并进行统计、分析和挖掘,为决策提供科学、准确的依据.然而,目前我公司的管理工作仍由人工完成,效率低下,难以采集基础用电数据,也难以获得具有时效性的统计报表.为此,与西安工业大学电力MIS研究所合作,联合开发油田公司的供用电管理系统.
在系统立项后,遵循软件工程的思想,采用结构化方法进行分析和设计,各项工作有条不紊的向前推进.但很快发现,这种方法存在一系列问题:首先是项目需求不清,软件使用者根本不清楚需要一套什么样的系统,很多用户都提出要先拿出一套系统,看了之后才能提意见;其次是开发进度难以控制,开发中用户不断提出新的需求,已确定的需求又不断的调整,始终不能确定项目工期;最后是项目质量难以控制,很多时候需求的变动会导致数据库结构的调整,这样解决了一个问题,可能会导致引入一系列问题,项目陷入了变化的泥潭.
可以看出,项目陷入困境的根本原因在于需求的不确定性,传统的方法难以适应这种变化,近些年出现的敏捷方法为我们提供了新的思路.
2.敏捷开发和Scrum方法
传统的软件项目开发遵循“瀑布模型”,该模型的基本思想是:将软件生命周期划分为制定计划、需求分析、概要设计、详细设计、编码测试以及运行维护护等六个阶段,并且规定它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落.瀑布模型基于严格的“里程碑”划分,每个阶段结束时都要经过评审,并生成相应文档,后一阶段必须建立在前一阶段文档的基础上.
敏捷方法是一种迭代、渐进的开发方法,经常使用反馈进行思考、反省和总结,不停地进行自我调整和完善.敏捷方法的核心价值是:个人交互优先于过程和工具;可用的软件优先于全面的文档;顾客协作优先于合同协商;对变更的影响优先于计划的遵循.
Scrum是目前应用最广泛的一种敏捷方法,该名称来源于英式橄榄球比赛中的争球,强调通过集体的行动,奋力实现同一目标.Scrum方法认为软件开发类似于新产品的研发,过程中需要研究、创意和尝试错误,没有一种固定的规程可以保证项目成功,所以团队要围绕目标,紧密协作,以高度弹性解决各种挑战,确保每天、每个阶段都向目标推进.
Scrum的过程框架如图1所示:完整的开发任务被分解为若干个短的迭代周期,称为Sprint,每个Sprint的工期建议为2到4周;团队使用Product Backlog来管理需求,并按商业价值对需求进行排序;每次迭始,团队挑选最高优先级的需求作为该Sprint的目标,协作完成该目标,并递交有价值的产品增量;在一个Sprint内,每天又是一个小的迭代,检查每个成员的进度与计划,了解开发中的困难并及时解决问题.
3.Scrum方法在供用电管理项目中的应用
3.1构建团队
为了保证供用电管理项目的顺利实施,根据Scrum团队的配置要求,为该项目配置了一个9人的团队,结构如下:
(1)产品负责人:由甲方的一名主管领导担任,对项目总体负责,协调双方的关系及有效沟通,保证团队的高效工作,并定期组织项目评审工作.同时也负责项目的需求和总体设计工作.
(2)scrum master:乙方的技术负责人,负责团队的开发工作.他要主持召开sprint会议,划分产品工作任务并,控制软件开发进度,设计软件总体结构,解决团队成员在开发中遇到的问题,保证sprint计划的顺利实施.
(3)团队成员:由3名软件开发人员及1名测试人员组成,接受项目负责人分派的任务,完成目标系统的开发与测试工作.
(4)用户方团队:代表软件的使用者,由3名对供用电管理业务比较熟悉的甲方人员构成,与乙方讨论系统需求,协商需求变更,并在每个sprint结束时参加评审会议,测试产品的功能是否符合需求.
3.2迭发
Scrum方法将整个软件交付过程分成多个迭代周期,帮助团队更好地应对变更和风险,实现增量交付、快速反馈.
供用电管理系统的项目开发分为6个迭代进行,如图2所示:
Sprint1:设计软件的基础结构,包括软件架构、功能模块结构、界面及导航结构、用户注册与登录、用户访问控制等,该阶段结束时能看到软件的总体运行效果,但没有实现具体功能.
Sprint2:设计供电管理模块,实现了基层供电电源点管理、计量点管理、计量点费率管理、计量点用电量及电费管理等功能.
Sprint3:设计用电管理模块,实现了基层用电计量点管理、计量点费率管理、计量点用电量及电费管理等功能.
Sprint4:设计查询审批模块,实现油田总部对各采油厂供、用电计量点、计量点费率、计量点用电量及电费等信息的查询和审批功能.
Sprint5:设计报表分析模块,根据基层录入的供用电原始数据,统计并生成基层数据报表,并根据基层报表统计生成油田公司使用的各类数据报表.
Sprint6:系统精化设计,对前面5个Sprint中遗留的问题进行持续改进,增加了数据导入导出功能,并优化了几个常用报表的算法.
3.3过程控制
从图2可以看出,Scrum方法符合戴明环持续改进的理论,引导软件开发过程朝着正确的方向发展.
每个Sprint被划分成4个阶段,如下:
计划:每个Sprint初期要召开计划会议,确定该阶段要完成的任务,标注任务的优先级并分配给每个成员;
开发:在Sprint周期内,每天要召开开发人员会议,汇报前一天的工作内容及存在问题,说明当天的工作任务,对出现的问题由Scrum Master协调解决;
评审:在Sprint结束时将产生阶段性的成果,这时召开评审会议,由产品负责人、用户方团队及Scrum Master参加,观看成果的演示,提出问题和改进方法;
回顾:在Sprint评审后,开发组要召开Sprint回顾会议,对发现的问题进行说明和总结,指导后续开发.
另外,在前面5个Sprint结束时,系统的基本功能已经实现,通过最后一个Sprint对系统进行优化和重构,完成了总体开发过程的持续改进.
4.结论
软件项目最大的风险在于需求变动,延长油田供用电管理系统项目存在明显的需求不确定及易变的特性,采用传统的项目管理方法很难适应这种变化,为此,必须引入敏捷方法.本文以Scrum方法为指导,合理的构建开发团队,以迭代的方式持续交付开发成果,以戴明环理论持续改进系统设计,很好的适应了需求的变动,有效规避了项目风险,缩短了工期,并提高了软件质量.