论文部分内容阅读
摘要:在开发软件时如果能将系统的开发过程分解为几个项目阶段,就能够更好地进行管理和控制。以农科院农业灾害管理系统为例,简要阐述项目管理在软件开发中的具体应用。
关键词:项目管理;需求分析;进度安排
中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2011)0220154-01
软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对人员(People)、产品(Product)、过程(Process)和项目(Project)进行分析和管理的活动。我们在开发软件时如果能将系统的开发过程分解为几个项目阶段,就能够更好地进行管理和控制。通常每个项目阶段都针对不同的相关人员分配一系列工作任务,设定这些工作任务使得管理控制能达到既定的水平。大多数这些工作任务都与主要的阶段工作成果有关,这些阶段通常被分为启动阶段、计划阶段、实施阶段、控制阶段和收尾阶段这五个阶段。
作为一名IT从业人员,本人在农业灾害管理系统开发中引入了软件项目管理实施项目开发。软件项目管理方案的引入调动了开发人员积极性,并且将开发人员的个人开发能力转化为项目小组的开发能力,有效降低了开发风险。针对农业灾害管理系统的使用需求和农业类专业特点,采用了一套适合系统开发要求的项目管理方案。
该系统主要实现对农业中的常见病害进行管理的一个系统,它改变了传统手工查找和处理病害的方式,通过对病害信息的集中存储和分类管理,用户能够快速检索相应的病害信息,能够对对相关的病害信息能够以图像的方式从多种角度和形式进行观察和对比,并且能够简单快捷的对相关的病害信息进行维护,提高了工作效率和准确度。
1、启动阶段
确定一个项目或一个阶段可以开始了,并要求着手实行。关联到项目中,这个阶段我们要做的主要就是需求分析。
需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终完成开发计划的一个复杂过程。需求分析主要包括:业务需求、客户需求和功能需求三个部分。业务需求(BusinessRequirement)意为客户对产品的目标或者要求;客户需求(UserRequirement)意为客户在使用产品过程中需要完成的一系列任务;功能需求(Functional Requirement)指定了产品系统必须提供的功能。
通过调研和沟通,我们了解到农业系统的大致需求:系统建设目标是充分运用计算机网络技术实现农业所统筹管理农业病害信息、植物病原信息、农业害虫信息等诸多资料。系统应具有服务器智能路由功能;系统能在某服务器故障情况下,其他服务器能自动替代管理,以保证系统运行的可靠性。系统必须配置功能强大、完善的管理软件,实现系统安全管理、网络用户权限管理、故障自动检测、报告提示和日志等功能。以及该系统的涉及人群:有关管理、业务分析和系统设计、实现和工程实施人员以及使用本系统相关的管理人员、技术人员。系统主要建设内容包括:信息录入系统、信息审核系统,用户管理系统。
2、计划阶段
进行较为详细的计划并且保持一份可操作的进度安排,确保实现项目的既定商业目标。为避免项目失控,比如进度落后、资源不足、资金紧缺等问题,项目负责人应预先做好周密的计划安排,在软件开发过程中是否按照计算执行,采取积极地应对措施,做好计划和控制计划是项目成功的必要条件。根据之前的需求分析,为农业灾害管理系统的顺利实施制订了人员安排以及进度安排。大致计划分为四个阶段完成这个系统的开发:
第一阶段:通过咨询、网络等方式收集有关资料、向農科院各部门工作人员请教,学习农业有害生物相关知识。第二阶段:对系统的模型进行初步的分析,进一步确定设计方案,建立农业有害生物基础数据库,分解各阶段任务并分配给相关人员,确定软硬件环境及编程语言等。第三阶段:项目组农业灾害管理系统实现、测试、部署。第四阶段:根据实际情况改进系统,对系统的模块功能进行有实际效用的增减。
在确定了既定目标以及人员时间等方面的安排之后,下面就能正式进入农业灾害系统开发项目中最重要的环节实施阶段。
3、实施阶段
协调人力和其它资源,执行计划。通过调研人员提供的资料和信息,以及所有工作人员的交流沟通,程序员着手进行系统的相关设计以及数据库的建立。该系统分为信息录入系统、信息审核系统、用户管理系统这三大功能模块:
1)信息录入系统:分类信息录入、农业病害信息录入、植物病原信息录入、农业害虫信息录入、杂草信息录入、图像信息录入。
2)信息审核系统:农业病害信息审核、植物病原信息审核、农业害虫信息审核、杂草信息审核、图像信息审核。
3)用户管理系统:角色信息管理、用户信息管理、模块权限列表,能够实现角色、用户、权限之间多对多的对应关系。
经过大家的协同合作,整个系统的结构设计按照预期计划的时间大致完成了。
4、控制阶段
通过监督和检测过程确保项目达到目标,必要时采取一些修正措施。通过与农科院工作人员的实时交流,大致上完成了他们的要求和既定的目标,进入了不容忽视的重要环节测试和修改,主要分为初步测试阶段以及测试运行阶段。在初步测试阶段,主要测试系统是否存在较大缺陷、安全隐患,以及每个功能模块是否满足设计的实际需要。在测试运行阶段,主要检查系统每个功能的正确性、安全性、稳定性,通过客户的反馈和系统的实际运行情况,我们再对系统出现的问题逐步修改完善,为日后正常投入使用做好充分准备。农科院的相关工作人员以及我们的测试员在试用版中输入不同的数据和信息。通过两个阶段的测试,我们在信息录入系统和信息审核系统中分别增加了“普通昆虫信息录入”和“普通昆虫信息审核”功能,用以与“农业害虫信息”对比,使农业有害生物所带来的危害一目了然。
5、收尾阶段
取得项目或阶段的正式认可并且有序地结束该项目或阶段。经过测试修改,农科院的领导及相关工作人员认为该系统大大提高了现有资源的利用率,方便技术交流,信息共享,及时、准确地反应出农业灾害现象的发生,避免了遗忘漏等现象,提高了工作效率,基本达到了项目的预期目标,并顺利通过了项目的验收和评审工作。在完成了这些测试工作之后,我们的美工设计师对该系统正式版的界面进行一定的设计和修饰,我们的相关文档编写人员开始整理编写系统使用功能说明书,以及总结报告,总结在本软件项目中哪些方法和事情可以使项目进行得更好,哪些是应该避免和注意的,这些经验的总结对项目人员今后从事项目开发提供了宝贵的第一手的依据材料。至此,农业灾害系统的开发已经可以宣告顺利结束了。我们也看到了一个软件开发项目所经历的较为完整的五个阶段。然而在实际的工作中,不是所有项目都需要有这些所有的程序,缺少某一个程序并不意味着这个程序不应该被实施。也并不是所有的内部相互关系都适用所有的项目。当需求变化时,则变化应清晰界定,仔细权衡和积极应对。同时这五个阶段也并非划定地如此严格,通常实施阶段和控制阶段都是混杂而行的,很多项目的进行需要边测试边实施,这样才能更好地满足需求方的要求,达到既定的商业目标。现在越来越多的软件项目开发都或多或少地引入了项目管理的理念。事实证明,实施项目管理,可有效将工作细化,促使项目正常如期进行。作为一名IT人员,掌握了项目管理的理论、培养了一定的管理技能,对于今后承担更多更大的项目开发任务起到了事半功倍的效果。
参考文献:
[1]韩万江、姜立新,《软件项目管理案例教程》(第2版),机械工业出版社,2009,4
[2]郑业鲁、黄梁、陈琴苓、李俊生、闫慧勇,《农业科研机构项目管理信息系统研发》,《农业图书情报学刊》,2005(02)
关键词:项目管理;需求分析;进度安排
中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2011)0220154-01
软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对人员(People)、产品(Product)、过程(Process)和项目(Project)进行分析和管理的活动。我们在开发软件时如果能将系统的开发过程分解为几个项目阶段,就能够更好地进行管理和控制。通常每个项目阶段都针对不同的相关人员分配一系列工作任务,设定这些工作任务使得管理控制能达到既定的水平。大多数这些工作任务都与主要的阶段工作成果有关,这些阶段通常被分为启动阶段、计划阶段、实施阶段、控制阶段和收尾阶段这五个阶段。
作为一名IT从业人员,本人在农业灾害管理系统开发中引入了软件项目管理实施项目开发。软件项目管理方案的引入调动了开发人员积极性,并且将开发人员的个人开发能力转化为项目小组的开发能力,有效降低了开发风险。针对农业灾害管理系统的使用需求和农业类专业特点,采用了一套适合系统开发要求的项目管理方案。
该系统主要实现对农业中的常见病害进行管理的一个系统,它改变了传统手工查找和处理病害的方式,通过对病害信息的集中存储和分类管理,用户能够快速检索相应的病害信息,能够对对相关的病害信息能够以图像的方式从多种角度和形式进行观察和对比,并且能够简单快捷的对相关的病害信息进行维护,提高了工作效率和准确度。
1、启动阶段
确定一个项目或一个阶段可以开始了,并要求着手实行。关联到项目中,这个阶段我们要做的主要就是需求分析。
需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终完成开发计划的一个复杂过程。需求分析主要包括:业务需求、客户需求和功能需求三个部分。业务需求(BusinessRequirement)意为客户对产品的目标或者要求;客户需求(UserRequirement)意为客户在使用产品过程中需要完成的一系列任务;功能需求(Functional Requirement)指定了产品系统必须提供的功能。
通过调研和沟通,我们了解到农业系统的大致需求:系统建设目标是充分运用计算机网络技术实现农业所统筹管理农业病害信息、植物病原信息、农业害虫信息等诸多资料。系统应具有服务器智能路由功能;系统能在某服务器故障情况下,其他服务器能自动替代管理,以保证系统运行的可靠性。系统必须配置功能强大、完善的管理软件,实现系统安全管理、网络用户权限管理、故障自动检测、报告提示和日志等功能。以及该系统的涉及人群:有关管理、业务分析和系统设计、实现和工程实施人员以及使用本系统相关的管理人员、技术人员。系统主要建设内容包括:信息录入系统、信息审核系统,用户管理系统。
2、计划阶段
进行较为详细的计划并且保持一份可操作的进度安排,确保实现项目的既定商业目标。为避免项目失控,比如进度落后、资源不足、资金紧缺等问题,项目负责人应预先做好周密的计划安排,在软件开发过程中是否按照计算执行,采取积极地应对措施,做好计划和控制计划是项目成功的必要条件。根据之前的需求分析,为农业灾害管理系统的顺利实施制订了人员安排以及进度安排。大致计划分为四个阶段完成这个系统的开发:
第一阶段:通过咨询、网络等方式收集有关资料、向農科院各部门工作人员请教,学习农业有害生物相关知识。第二阶段:对系统的模型进行初步的分析,进一步确定设计方案,建立农业有害生物基础数据库,分解各阶段任务并分配给相关人员,确定软硬件环境及编程语言等。第三阶段:项目组农业灾害管理系统实现、测试、部署。第四阶段:根据实际情况改进系统,对系统的模块功能进行有实际效用的增减。
在确定了既定目标以及人员时间等方面的安排之后,下面就能正式进入农业灾害系统开发项目中最重要的环节实施阶段。
3、实施阶段
协调人力和其它资源,执行计划。通过调研人员提供的资料和信息,以及所有工作人员的交流沟通,程序员着手进行系统的相关设计以及数据库的建立。该系统分为信息录入系统、信息审核系统、用户管理系统这三大功能模块:
1)信息录入系统:分类信息录入、农业病害信息录入、植物病原信息录入、农业害虫信息录入、杂草信息录入、图像信息录入。
2)信息审核系统:农业病害信息审核、植物病原信息审核、农业害虫信息审核、杂草信息审核、图像信息审核。
3)用户管理系统:角色信息管理、用户信息管理、模块权限列表,能够实现角色、用户、权限之间多对多的对应关系。
经过大家的协同合作,整个系统的结构设计按照预期计划的时间大致完成了。
4、控制阶段
通过监督和检测过程确保项目达到目标,必要时采取一些修正措施。通过与农科院工作人员的实时交流,大致上完成了他们的要求和既定的目标,进入了不容忽视的重要环节测试和修改,主要分为初步测试阶段以及测试运行阶段。在初步测试阶段,主要测试系统是否存在较大缺陷、安全隐患,以及每个功能模块是否满足设计的实际需要。在测试运行阶段,主要检查系统每个功能的正确性、安全性、稳定性,通过客户的反馈和系统的实际运行情况,我们再对系统出现的问题逐步修改完善,为日后正常投入使用做好充分准备。农科院的相关工作人员以及我们的测试员在试用版中输入不同的数据和信息。通过两个阶段的测试,我们在信息录入系统和信息审核系统中分别增加了“普通昆虫信息录入”和“普通昆虫信息审核”功能,用以与“农业害虫信息”对比,使农业有害生物所带来的危害一目了然。
5、收尾阶段
取得项目或阶段的正式认可并且有序地结束该项目或阶段。经过测试修改,农科院的领导及相关工作人员认为该系统大大提高了现有资源的利用率,方便技术交流,信息共享,及时、准确地反应出农业灾害现象的发生,避免了遗忘漏等现象,提高了工作效率,基本达到了项目的预期目标,并顺利通过了项目的验收和评审工作。在完成了这些测试工作之后,我们的美工设计师对该系统正式版的界面进行一定的设计和修饰,我们的相关文档编写人员开始整理编写系统使用功能说明书,以及总结报告,总结在本软件项目中哪些方法和事情可以使项目进行得更好,哪些是应该避免和注意的,这些经验的总结对项目人员今后从事项目开发提供了宝贵的第一手的依据材料。至此,农业灾害系统的开发已经可以宣告顺利结束了。我们也看到了一个软件开发项目所经历的较为完整的五个阶段。然而在实际的工作中,不是所有项目都需要有这些所有的程序,缺少某一个程序并不意味着这个程序不应该被实施。也并不是所有的内部相互关系都适用所有的项目。当需求变化时,则变化应清晰界定,仔细权衡和积极应对。同时这五个阶段也并非划定地如此严格,通常实施阶段和控制阶段都是混杂而行的,很多项目的进行需要边测试边实施,这样才能更好地满足需求方的要求,达到既定的商业目标。现在越来越多的软件项目开发都或多或少地引入了项目管理的理念。事实证明,实施项目管理,可有效将工作细化,促使项目正常如期进行。作为一名IT人员,掌握了项目管理的理论、培养了一定的管理技能,对于今后承担更多更大的项目开发任务起到了事半功倍的效果。
参考文献:
[1]韩万江、姜立新,《软件项目管理案例教程》(第2版),机械工业出版社,2009,4
[2]郑业鲁、黄梁、陈琴苓、李俊生、闫慧勇,《农业科研机构项目管理信息系统研发》,《农业图书情报学刊》,2005(02)