神州电信为确保业务支撑系统的成功实施和维护,成立了企业信息中心部门,以面向构件的IT建设思想进行团队建设。而该部门主要负责业务支撑系统全生命周期的管理。该部门的组织结构图如图4.11所示。
需求管理部是与业务部门的接口部门,主要负责需求的收集、管理和需求分析、需求的变更管理、管理业务部门的反馈,并与业务部门签订SLA(Service Level Agreement,服务水平协议)。由于采用了面向构件的方法建设神州电信的IT系统,为SLA的实施提供了更好的保障。
规范标准部负责神州电信IT建设的规划,同时制定业务和技术规范,负责技术架构的选型。采用面向构件方法建设神州电信IT系统的规划,正是在规范标准部的主导下经过多方合作严格验证后确定的。在确立了这个方法后,该部门围绕该方法结合神州电信的具体状况,制定了神州电信的构件库建设方案和构件规范,用于指导面向构件系统的建设、管理和维护。
图4.11 神州电信信息中心部门职能图 |
应用开发部是具体采用面向构件方法进行应用系统建设的部门,负责在需求管理部提供的业务需求基础上,采用面向构件的方法组织系统开发,并负责系统建设过程中的项目管理。
知识管理部主要负责IT系统资产的管理,包括软件资产(以构件为载体)和数据资产。
系统维护部主要负责IT系统的维护和管理,包括应用系统运行的软硬件环境,系统的配置、优化等内容。
而业务支撑系统是在信息中心这个神州电信常规部门的主持下按照项目方式建设的。由于这是一个复杂的系统,系统的涉众较多,包括了业务部门、信息中心、基础平台厂商、咨询公司、开发商、设备厂商等多方面的人员;项目的周期也相对较长,从初期的IT规划咨询到最终完成所有地市的系统割接上线,经历了将近2年时间,因此项目管理的复杂性很大,本书的案例研究主要描述应用系统设计开发过程中与面向构件方法这一主题相关的部分内容。
在咨询公司ATrue完成了系统规划的咨询后,神州电信成立了项目领导小组,正式启动业务支撑系统的建设项目。项目领导小组在神州电信和合作伙伴中指定或选派形成了项目执行小组,项目执行小组负责项目的具体实施工作,由业务部门、信息中心和咨询公司、开发商的人员构成,包括项目经理、技术经理、主任架构师及各个下辖部门的经理等角色。在项目执行小组下,按照项目实施职能,又分为项目支持部、质量保证部、系统开发部、系统集成部、用户文档和培训部,其中主要由系统开发部采用面向构件方法进行应用的开发,项目团队的组织结构图如图4.12所示。
图4.12 业务支撑项目组织结构图 |
在项目实施中,项目执行小组制定总的项目计划以及各个阶段的项目实施计划,而系统开发团队则制定详细的构件系统开发计划。开发部门在对业务需求进行WBS(Work Breakdown Structure)分解时,结合面向构件的方法,按照构件系统(对应到应用系统)、构件子系统(对应到业务主题域)、业务构件(对应到业务模块)、业务构件接口(对应到用例)4个层次进行分解,产生了系统的系统功能分解矩阵,如图4.13所示。
图4.13 应用系统构件分解矩阵及进度表 |
在完成这个矩阵后,就确立了系统的业务构件列表和业务构件的接口,构件的数量表明了系统的规模和工作量的大小,同时这个矩阵也体现了系统的需求范围。于是,开发部将功能分解矩阵作为贯穿系统实施过程的需求范围、工作分配、进度监控的重要工作产品。对于每个业务构件及其接口,按照面向构件项目度量的方法,设立了设计、实现、走查、测试4个阶段。进度计算采用保守算法,以完成阶段工作对应某个百分率来进行度量。这样,完成设计表明完成30%的工作量,完成开发表明完成70%工作量,使得进度可以自动进行计算,获得的进度数据更加准确,而不是靠开发人员主观评估。
同时,在完成系统的功能分解矩阵后,神州电信利用面向构件中间件EOS产品的进度管理控制工具,可以比较直观地了解到项目中各个构件的进展状况。通过工具,可以自动将功能矩阵导入到EOS Studio的项目中,这样构件系统成为一个项目工程,构件子系统成为一个业务构件包,业务构件接口成为业务构件的Entry Point。设计开发人员在基于EOS进行设计开发时,在完成某个业务构件接口开发的阶段工作后,可以进行阶段设置。这样,工具就能自动显示各个业务构件实现的进度,即可以从业务构件包的视角看到各个业务构件的进度状况,如图4.14所示。
图4.14 业务构件包“销售过程管理”的进度信息 |
还可以进一步了解某个业务构件各个提供接口的实现进度,如图4.15所示。
在通过工具查看这些进度信息的同时,EOS还提供了进度文档导出的功能,能够形成基于Excel或者HTML格式的进度统计表。神州电信采用这种面向构件的项目计划和度量方法,通过EOS提供的相关工具,在项目实施过程中,项目管理人员能够快速获得准确的项目进展信息。
另外,在开发过程中,项目组大量采用了迭代的开发方法。在设计阶段,完成了系统总体设计、数据库设计、界面框架设计。在确立了项目的设计开发规范后,项目组将开发团队分成了若干个小组,每个小组由一名主程序员和2~3名构件所有者构成,负责某部分业务构件的设计和实现工作。具体做法为:假定1个开发小组由主程序员李杨和2名构件所有者迟易、李小小组成,开发组分配了销售过程管理的子系统交由该小组进行设计实现。李杨带领迟易、李小小首先完成了“销售线索”、“销售机会”、“销售计划”三个业务构件的设计(分配原则为每人一个业
图4.15 业务构件包接口实现进度 |
务构件),在设计通过评审后,仍然由这三人进行构件的实现。在设计和实现过程中,可以给一个人分配多个业务构件,但一个业务构件只分配给一个人。在设计实现过程中,由主程序员组织进行内部的构件设计、实现走查。在针对一批业务构件完成设计实现后,又开始另一批业务构件的设计实现。通过这种迭代方式,针对业务构件的优先级逐步进行实现,这样使得开发可以很快提交工作成果,测试人员也能够尽快进入到测试状态。实践表明,神州电信业务支撑项目组采用这种过程组织方法,提高了人员的工作效率,缩短了测试的周期。
回书目 上一节 |