论文部分内容阅读
摘 要:文章根据项目管理沟通相关理论对银行软件项目研发流程,包括需求分析阶段、软件设计阶段、编码设计阶段、测试和集成阶段四大阶段进行沟通识别研究,对银行软件开发项目沟通管理体系的建设有重要作用。
关键词:银行;软件开发;沟通识别
中图分类号:F830.49 文献标识码:A 文章编号:1006-8937(2014)29-0067-02
近年来,国内外学者开展了项目沟通管理的研究,制度化的沟通管理方法促进了项目沟通管理的发展,但是在研发项目实践运用中这些方法并没有大幅度地提高沟通管理水平,沟通无果的事情还是不断发生。究其原因,由于那些沟通管理方法的运用没有很好地贴合实际,没有针对性地消除沟通中存在的障碍。笔者在多年工作经验积累基础上,理论结合实际,对银行软件项目研发流程,包括需求分析阶段、软件设计阶段、编码设计阶段、测试和集成阶段四大阶段进行沟通识别研究,该研究充分考虑了沟通管理时间梯度上的各个阶段,并注重每一个沟通过程的完善。
银行软件项目研发的流程是:提出需求——需求分析——总体技术方案——概要设计——详细设计(数据库表设计、前台交易设计、后台代码设计)——编写代码——单元测试及编写业务测试案例——业务测试(功能测试及综合测试)及性能测试——并版测试及上线演练——业务培训、技术培训及上线推广。为了便于对流程每个阶段的沟通管理分析,根据项目沟通管理相关理论基础以及流程特点,本文将每个流程阶段整理归集为需求分析阶段、软件设计阶段、编码设计阶段、测试和集成阶段四大阶段,如图1所示。
1 需求分析阶段
如图1所示,A银行的需求分析阶段包括了提出需求、需求分析。这个阶段软件项目人员必须与用户需求,就软件功能性达成一致意见,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程。该阶段是指在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。笔者从外部沟通和内部沟通的角度,对该阶段的沟通管理活动主要内容进行分析归纳。
1.1 外部沟通
通过项目分析人员与用户的沟通进行需求抽取,识别用户的需求,从用户那里获得的所有信息进行整理,以区分业务需求及规范、功能需求、质量目标、解决方法和其他信息。通过这些沟通分析,产生一份初步需求报告分析,分析人员就需求报告的内容与用户开展进一步沟通,积极向用户解释报告中的一些图表、数据等,就不确定的和模糊的需求进行沟通。这要求用户尽量将每项需求的内容都阐述清楚,以便分析人员能准确地将需求写进软件需求报告中去,用户可以同开发人员一起反复修改,不断完善需求定义。由于A银行软件项目面对的用户群体多为银行内部各部门、分支机构等,因此A银行软件开发人员将需求可行性及成本评估并反馈给用户,项目管理人员。
同时,用户与开发人员必须就产品的使用特性进行沟通,使用特性是指实现功能需求的同时,还有软件的易用性、可靠性等;就变更造成的影响进行沟通,对需求变更可能造成的影响进行评估,包括影响、成本和得失等,并让用户知道:就变更发生时应采取的措施或程序进行沟通;对需求的优先级进行沟通;就开发人员在开发过程中的问题处理权限进行沟通。
1.2 内部沟通
就项目进展定期举行会议;项目经理与每个成员(或小组领导)进行沟通,熟悉各个成员情况;就需求的技术可行性及评估进行沟通,建立工作规范、标准,项目经理对团队成员的激励。
需求分析阶段应达到的目标是:产生一个清晰明了的、完整的和容易让人理解的需求分析报告;尽早确定多种需求;保证软件开发生命周期各个阶段中不同需求的来源是可追溯的;以用户导向为基础,同时协调人力、物力等资源的成本,使各因素相平衡,确定用户的最终需求。
2 软件设计阶段
如图1所示,A银行的软件分析阶段包括了总体技术方案、概要设计(主要包括功能点分割及实现方式、数据流向、涉及的数据库表、主要的公共函数)、详细设计(主要包括数据库表设计、前台交易设计、后台代码设计)。软件设计是将用的需求进行软件重现的过程,它是需求分析与编码的中间阶段,也是一个翻译的过程,主要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计,数据库设计等。软件设计阶段必须召开定期会议,各项目组成员汇报上一阶段的工作,项目经理与各开发人员定期沟通,使技术人员的作用充分发挥,同时注重全局和方案实施的可行性,成员间的信息分享一份完整规范的设计文档,就工作中碰到的问题进行沟通,提出解决方案。本文从外部沟通和外部沟通的角度分析,该阶段的沟通管理活动主要为:
①外部沟通:定期向用户提供项目状态报告;定期向用户提供项目质量和进程方面的数据;定期向客户提供下一步工作计划。内部沟通:就项目进展定期举行会议;设计人员与需求分析人员进行沟通,以需求分析确保被设计人员理解;全体成员就系统设计框架进行讨论;编写代码来检验架构,并获得具体的反馈;编写代码来检验架构,获得具体的反馈;项目经理对团队成员的激励。
②与需求分析阶段一样,该阶段最后产生一份设计报告,该阶段的目标是:将需求按照软件开发的技术要求转化为服务于编码的设计文档;设计报告应该文字表达清晰,易于编码人员理解;该设计结构正确、完整,便于编码等。
3 编码设计阶段
编写软件代码和相关的文档,是进行软件开发最基本的目标,也是满足项目要求的基础。此阶段是将设计结果转换成计算机可运行的程序代码,该阶段的主要沟通活动为:
①外部沟通:定期向客户提供项目状态报告;定期向用户提供项目质量和进程方面的数据;定期向客户提供下一步工作计划。内部沟通:就项目进展定期举行会议;编码人员(程序员)与设计人员(设计员)进行沟通,以确保设计报告被编码人员理解;编程成员间的信息分享,对所编写的代码的功能与工作方式等进行说明;编码人员就自己与他人所做模块的衔接点及其应该注意的地方与同行沟通;项目经理对团队成员的激励。
②编码工作应该达到的目标为:将设计完整、准确的转换为代码;正确的程序结构;编写出可以被重用,易于维护的代码;编写出符合内部、外部不同使用要求的文档等。
4 测试和集成阶段
在软件设计完成后要经过严密的测试,发现软件在整个设计过程中存在的问题要及时纠正。在此进行过程中,所有的模块将被集合成一个综合性的整体,进行系统集成和有效性测试,该阶段的主要沟通活动为:
外部沟通:定期向客户提供项目状态报告;定期向用户提供项目质量和进程方面的数据;对于用户进行培训。内部沟通:就项目进展定期举行会议;团队成员交流计划测试的对象、需要的资源、测试工作的安排等;规范的编制软件测试文档;测试人员人员就模块的衔接点及其应该注意的地方与相关人员沟通;项目经理对团队成员的激励。
该阶段达到的目标是:发现并修正错误;识别潜在的错误;按时完成测试,并保证测试足够充分;使软件能够按要求正常运行。
参考文献:
[1] 李盛华.论信息系统项目沟通管理[J].计算机光盘软件与应用,2013,(5).
关键词:银行;软件开发;沟通识别
中图分类号:F830.49 文献标识码:A 文章编号:1006-8937(2014)29-0067-02
近年来,国内外学者开展了项目沟通管理的研究,制度化的沟通管理方法促进了项目沟通管理的发展,但是在研发项目实践运用中这些方法并没有大幅度地提高沟通管理水平,沟通无果的事情还是不断发生。究其原因,由于那些沟通管理方法的运用没有很好地贴合实际,没有针对性地消除沟通中存在的障碍。笔者在多年工作经验积累基础上,理论结合实际,对银行软件项目研发流程,包括需求分析阶段、软件设计阶段、编码设计阶段、测试和集成阶段四大阶段进行沟通识别研究,该研究充分考虑了沟通管理时间梯度上的各个阶段,并注重每一个沟通过程的完善。
银行软件项目研发的流程是:提出需求——需求分析——总体技术方案——概要设计——详细设计(数据库表设计、前台交易设计、后台代码设计)——编写代码——单元测试及编写业务测试案例——业务测试(功能测试及综合测试)及性能测试——并版测试及上线演练——业务培训、技术培训及上线推广。为了便于对流程每个阶段的沟通管理分析,根据项目沟通管理相关理论基础以及流程特点,本文将每个流程阶段整理归集为需求分析阶段、软件设计阶段、编码设计阶段、测试和集成阶段四大阶段,如图1所示。
1 需求分析阶段
如图1所示,A银行的需求分析阶段包括了提出需求、需求分析。这个阶段软件项目人员必须与用户需求,就软件功能性达成一致意见,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程。该阶段是指在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。笔者从外部沟通和内部沟通的角度,对该阶段的沟通管理活动主要内容进行分析归纳。
1.1 外部沟通
通过项目分析人员与用户的沟通进行需求抽取,识别用户的需求,从用户那里获得的所有信息进行整理,以区分业务需求及规范、功能需求、质量目标、解决方法和其他信息。通过这些沟通分析,产生一份初步需求报告分析,分析人员就需求报告的内容与用户开展进一步沟通,积极向用户解释报告中的一些图表、数据等,就不确定的和模糊的需求进行沟通。这要求用户尽量将每项需求的内容都阐述清楚,以便分析人员能准确地将需求写进软件需求报告中去,用户可以同开发人员一起反复修改,不断完善需求定义。由于A银行软件项目面对的用户群体多为银行内部各部门、分支机构等,因此A银行软件开发人员将需求可行性及成本评估并反馈给用户,项目管理人员。
同时,用户与开发人员必须就产品的使用特性进行沟通,使用特性是指实现功能需求的同时,还有软件的易用性、可靠性等;就变更造成的影响进行沟通,对需求变更可能造成的影响进行评估,包括影响、成本和得失等,并让用户知道:就变更发生时应采取的措施或程序进行沟通;对需求的优先级进行沟通;就开发人员在开发过程中的问题处理权限进行沟通。
1.2 内部沟通
就项目进展定期举行会议;项目经理与每个成员(或小组领导)进行沟通,熟悉各个成员情况;就需求的技术可行性及评估进行沟通,建立工作规范、标准,项目经理对团队成员的激励。
需求分析阶段应达到的目标是:产生一个清晰明了的、完整的和容易让人理解的需求分析报告;尽早确定多种需求;保证软件开发生命周期各个阶段中不同需求的来源是可追溯的;以用户导向为基础,同时协调人力、物力等资源的成本,使各因素相平衡,确定用户的最终需求。
2 软件设计阶段
如图1所示,A银行的软件分析阶段包括了总体技术方案、概要设计(主要包括功能点分割及实现方式、数据流向、涉及的数据库表、主要的公共函数)、详细设计(主要包括数据库表设计、前台交易设计、后台代码设计)。软件设计是将用的需求进行软件重现的过程,它是需求分析与编码的中间阶段,也是一个翻译的过程,主要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计,数据库设计等。软件设计阶段必须召开定期会议,各项目组成员汇报上一阶段的工作,项目经理与各开发人员定期沟通,使技术人员的作用充分发挥,同时注重全局和方案实施的可行性,成员间的信息分享一份完整规范的设计文档,就工作中碰到的问题进行沟通,提出解决方案。本文从外部沟通和外部沟通的角度分析,该阶段的沟通管理活动主要为:
①外部沟通:定期向用户提供项目状态报告;定期向用户提供项目质量和进程方面的数据;定期向客户提供下一步工作计划。内部沟通:就项目进展定期举行会议;设计人员与需求分析人员进行沟通,以需求分析确保被设计人员理解;全体成员就系统设计框架进行讨论;编写代码来检验架构,并获得具体的反馈;编写代码来检验架构,获得具体的反馈;项目经理对团队成员的激励。
②与需求分析阶段一样,该阶段最后产生一份设计报告,该阶段的目标是:将需求按照软件开发的技术要求转化为服务于编码的设计文档;设计报告应该文字表达清晰,易于编码人员理解;该设计结构正确、完整,便于编码等。
3 编码设计阶段
编写软件代码和相关的文档,是进行软件开发最基本的目标,也是满足项目要求的基础。此阶段是将设计结果转换成计算机可运行的程序代码,该阶段的主要沟通活动为:
①外部沟通:定期向客户提供项目状态报告;定期向用户提供项目质量和进程方面的数据;定期向客户提供下一步工作计划。内部沟通:就项目进展定期举行会议;编码人员(程序员)与设计人员(设计员)进行沟通,以确保设计报告被编码人员理解;编程成员间的信息分享,对所编写的代码的功能与工作方式等进行说明;编码人员就自己与他人所做模块的衔接点及其应该注意的地方与同行沟通;项目经理对团队成员的激励。
②编码工作应该达到的目标为:将设计完整、准确的转换为代码;正确的程序结构;编写出可以被重用,易于维护的代码;编写出符合内部、外部不同使用要求的文档等。
4 测试和集成阶段
在软件设计完成后要经过严密的测试,发现软件在整个设计过程中存在的问题要及时纠正。在此进行过程中,所有的模块将被集合成一个综合性的整体,进行系统集成和有效性测试,该阶段的主要沟通活动为:
外部沟通:定期向客户提供项目状态报告;定期向用户提供项目质量和进程方面的数据;对于用户进行培训。内部沟通:就项目进展定期举行会议;团队成员交流计划测试的对象、需要的资源、测试工作的安排等;规范的编制软件测试文档;测试人员人员就模块的衔接点及其应该注意的地方与相关人员沟通;项目经理对团队成员的激励。
该阶段达到的目标是:发现并修正错误;识别潜在的错误;按时完成测试,并保证测试足够充分;使软件能够按要求正常运行。
参考文献:
[1] 李盛华.论信息系统项目沟通管理[J].计算机光盘软件与应用,2013,(5).