测绘软件工程过程模型研究

更新时间:2019-08-15 来源:工程论文 点击:

【www.rjdtv.com--工程论文】

摘要: 针对测绘软件装备研制过程各阶段存在的问题,深入分析测绘软件不同项目类型的研制要求和项目特点,并结合这些要求及特点建立预先研究项目、常规科研项目、型号研制项目对应的 SMEM 模型。通过应用 SMEM 模型到 4 个独立的测绘软件研制项目中,与以往同类项目相比,应用模型后的项目软件工程各阶段的目的性和可控性增强,模型中针对阶段的风险管理和有规律的需求确认降低了项目风险,使软件的总开发周期缩短约 20%,显着节约了项目过程的时间和人力成本。
  关键词: 测绘软件; 软件工程; 过程管理; 软件工程过程模型;SMEM 模型

  随着软硬件装备数量与水平的逐年提升,测绘行业的软件装备需求也与日俱增,各类测绘软件和数字化系统在武器装备中的作用不断增强,测绘软件装备的质量问题也逐渐受到重视。最近一次测绘行业软件梳理的统计结果表明,测绘软件工程水平相较于其他行业还较为落后,软件产品在生命周期的各个阶段几乎均存在质量隐患,导致产品在装备需求、可靠性、稳定性、可维护性、可移植性等方面均难以得到保障,最终的研制成本还远高于预计成本。事实上,类似的问题在美军各类软件立项研制阶段也曾经普遍存在过,通过过往经验的分析表明,这些问题与测绘软件装备的研制过程及研制管理的落后存在着必然联系。
  本文针对测绘软件的研制过程,即软件工程过程中存在的问题开展研究。通过深入分析测绘软件项目的特点,建立有针对性的软件工程过程模型,力图使软件研制过程有序、有据可依,通过过程顺序、手段的确定降低软件研制的风险,提高研制效率,使测绘软件项目通过软件工程全过程的模型化、规范化实现提高软件产品质量的目的。软件生命周期是通过软件工程过程实现的,因此,软件工程过程是保证软件质量、提高软件可靠性的关键手段和流程。20 世纪 70 年代,从循环迭代解决问题的过程模型出发,开始逐渐衍生出了多种软件工程过程模型。从表1 中的分析可见,不同的需求明确程度、不同规模大小、不同经费数量、不同时限要求下软件产品工程化过程所依据的软件工程过程模型必然是迥异的。
  测绘软件在数据处理、数据适应性、模型算法、业务流程、数据成果等方面具有较明显的专业特点; 同时,不同项目来源决定对软件质量、软件管理文档、软件进度控制的要求也不同。考虑这些因素可将测绘软件项目产品划分为预先研究项目产品、常规科研项目软件产品、型号研制项目软件产品等。下面就根据测绘软件的项目类型、专业差别,并结合质量管控的严格程度、交付软件产品的应用领域等对测绘软件的项目特点进行分析。测绘软件预先研究项目的研究内容主要为前瞻性和新兴科学领域的新理论、新方法和新技术。预先研究项目常完成顶层设计、方案可行性论证、模型扩展、框架改进、功能扩充、平台迁移的改造升级技术研究、试验验证降低型号研制风险等研究,这些预先研究项目的前瞻性研究一般都是存在一定理论和技术风险的。
  预先研究项目的软件产品一般有原理实现性质的原型系统软件、仿真系统软件、验证平台软件等,项目一般要求严格控制项目风险,提高软件过程质量与产品文档的管理控制水平。分析表 1 中的各模型可知,螺旋模型适用于测绘软件预先研究项目的软件工程,能够实现风险的严格控制及软件产品规模的逐渐扩大、软件产品质量的螺旋上升。测绘软件常规科研项目的研究工作主要围绕科研条件建设、科研论证、特色技术研究、改进研制、技术革新、使用研究、保障性研究、试验验证和基础性科研项目等开展。常规科研项目中,软件研制过程中的需求改进相对其他类型项目较为频繁,项目研制周期相对灵活。项目软件研制中一般需要核心软件产品的尽快产出,并不断完善相应的补充功能,最终形成完整、完善的软件产品并交付使用方使用,研制过程中会面临的部分风险通过逐渐迭代而消除。
  由分析可见,测绘软件常规科研项目适用增量模型、快速原型模型、螺旋模型的部分特点,同时可结合项目研究周期和产品特点构建软件工程过程模型。测绘软件的型号研制项目主要是将成熟技术应用于实际装备并进行批量生产、装备的项目,包含重点装备、主要装备、一般装备及相应装备的配套装备。因此,型号研制项目对装备研制过程及产品质量要求非常严格。型号研制项目中,有的项目是单个单位承研的,规模较小,如卫星导航用户机软件的型号研制;有的项目是多家单位合作完成的大系统软件,项目规模庞大,经费较为充足,质量管控严格,如某地面应用系统的相关软件、某测绘数据管理服务软件等。这些大系统软件常常以分布式系统软件形式研发,软件运行环境庞大、复杂,需要更全面地考虑各类因素,大型的软件系统项目对软件工程管理文档、软件生命周期各个阶段有非常严格的要求。
  软件定型程序的详细规定中定义的过程包含: 定型测评、单位试验试用、申请定型、定型审查、定型审批。可见,需要考虑装备特点及型号研制项目的特点来构建软件工程过程模型。通过对测绘软件项目特点的分析,针对 3 类项目分别建立了各自的 SMEM 模型( Surveying and Map-ping Engineering Model,测绘软件工程过程模型) 。预先研究项目 SMEM 软件工程过程模型通过第三章第一节的分析,可以利用螺旋模型实现测绘专业的预先研究项目软件工程过程。螺旋模型沿着螺线形进行若干次各种活动的迭代,当项目被定义得更好、更稳定时,项目逐步从很小的规模展开成较大规模。项目人员不需要在刚开始的时候就把所有需求都定义得十分清楚,只需要定义最重要的功能,实现这些功能后,通过各种渠道尽量多地听取使用方的意见,然后再进入到下一个阶段。如此不断重复,直至得到使用方满意的最终项目产品。
  通过第三章第二节的分析,结合增量模型、螺旋模型、快速原型模型的特点,并考虑软件产品交付实际单位使用特点,可以构建测绘软件常规科研项目的 SMEM 软件工程过程模型,如图 2 所示。在此过程中,首先根据易实现的主要功能及项目组的相关项目开发经验完成一个原理实现的系统 1,进行原型系统的运行、评价与修改,从而形成功能较为完善的原型系统 2; 其次,进行软件测试后运行评价和进一步修改此系统中的少量缺陷,从而形成系统稳定、可靠性高的原型系统 3; 然后交付单位进行试应用,软件系统在单位的运行、评价反馈到项目组,项目组结合单位应用意见进行原型的进一步修改完善形成原型 4; 最后结合项目组的各项软件系统的生产服务过程,交付给单位使用功能完善、性能稳定、符合装备需要的最终软件产品。
  将本文研究建立的 SMEM 模型应用于国防科技大学计算机学院、武汉立得空间信息技术有限公司、军队某测绘信息中心 3 家单位的 4 个独立项目的软件项目研制过程中,通过项目过程中统计的数据验 证 了 本 文 新 构 建 SMEM 模 型 的 有 效 性。预先研究项目 SMEM 模型由于结合自身特点选取的是成熟的螺旋模型,故不再作实践验证。本文研究建立的 SMEM 模型是针对测绘软件项目的特点和详细要求设计制定的,在模型构建中充分考虑了在地方工业部门和装备研发部门开展软件装备研制的特点,在保证相关文件规定的必不可少的流程情况下,尽量考虑需求变更及过程面临的风险状况。实践中,SMEM 模型的应用使地方工业部门对测绘软件产品的全生命周期各阶段要求更加明晰,使装备研究部门有科学的流程模型作为软件工程过程管理依据。当然,要真正提高软件产品质量,控制和降低经费及时间风险,在有针对性地应用软件工程过程模型外,还需要软件研制过程管理的真正落实。
  参考文献:
  [1] 汤晓涛. 测绘生产软件梳理工作情况[R]. 西安: 西安测绘研究所,2009: 23-27.
  [2] 刘丽华. 美军软件密集系统成功采办与管理指南[M]. 北京: 电子信息基础部技术基础管理中心.2003,158-162.
  [3] 周鹏,尹菲. 基于云计算技术的 GIS 软件工程模式[J]. 测绘通报,2010( 11) : 22-24.
  [4] 晁怡,李清泉. 应用软件工程学方法开发 GIS 工程的必要性探讨[J]. 测绘通报,2003( 4) : 47-49,60.
  [5] 李娜. 测绘软件能力成熟度模型 CMM 研究技术报告[R]. 西安: 西安测绘研究所. 2010: 42-68.
  [6] ( 美) 沙赫. 软件工程: 面向对象和传统的方法[M]. 徐天顺,韩松,邓迎春,译. 北京: 机械工业出版社,2007:125-130.
  [7] PFLEEGER S L,ATLEE J M. 软件工程: 理论与实践[M]. 3 版. 北京: 高等教育出版社,2006: 256-261.
  [8] 软件产品定型管理办法[S]. 北京: [s. n. ],2005:11-12.
  [9] 软件质量管理规定[S]. 北京: [s. n. ],2005: 31-33.
  [10] PRESSMAN R S. 软件工程: 实践者的研究方法[M].6 版. 郑人杰,马索霞,白晓颖,等. 北京: 机械工业出版社,2007:

本文来源:http://www.rjdtv.com/gongchenglunwen/897.html