GIS软件工程开发中的问题与对策_第1页
GIS软件工程开发中的问题与对策_第2页
GIS软件工程开发中的问题与对策_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2005 年 8 月第 3 卷第 4 期aug., 2005vol.3, no.4地 理 空geospatial间 信 息information中图分类号: p208文献标识码: b文章编号: 1672- 4623( 2005) 04- 0050- 03gis 软件工程开发中的问题与对策李炳生,付仲良( 武汉大学 遥感信息工程学院, 湖北 武汉 430079)摘 要: 在软件工程方法学引入gis工程项目开发的过程中, 遇到了一些问题, 包括项目目标蔓延、需求变更与跟踪、模块设计、代码风格和文档管理等。提出解决这些问题的方法与途经, 使软件工程思想更好地与gis工程项目结合。关键词: gis软件

2、工程; 目标蔓延; 需求变更;模块化pr oblems and counter measur es in gis softwar e engineer ingli bing s he ng , fu zhong lia ng( school of remote sensing and information engineering, wuhan university, wuhan 430079, china)abstr act: many problems appear in the course of introducing software engineering to gis. thes

3、e problems, in-cluding target spread, requirement change, module design, code style and documents manage, directly affect the development of gis engineering. this thesis introduces the methods to resolve these problems and makes soft- ware engineering combine with gis felicitously.key wor ds: gis so

4、ftware engineering; target spread;requirement change; model designgis的开发可以在比较成熟的工具型地理信息系1.3模块化不合理现象模块化是解决软件复杂性问题的良好措施,统 基 础 之 上 进 行 二 次 开 发 ,也 可 以 从 底 层 进 行 开开发发。 gis工程项目的开发面临一般软件开发过程中的问题。因此, 运用软件工程的理论和方法来指导gis大的gis软件工程项目,将软件的功能进行适当的分解, 不但可以降低软件的复杂性, 还可以减少开发工作量。从而降低成本, 提高软件生产率。但是软件的 模块化流行的今天, 很多开发者没

5、有处理好模块的内 聚和耦合两个关键因素, 对模块的划分不尽科学。模工程的开发,对于保证gis工程的进度和质量、降低gis工程的开发成本, 是十分必要的。国内的gis软件工程通用的行业规范和标准正在研究和形成之中。无论是底层的工具型gis的开发还是二次开发,软件工块分的太细, 模块开发难度降低了,但是模块之间的程的思想正逐步被完整科学地纳入开发周期。接口开发代价却大大提高了; 模块分的太粗,解决不gis 软件工程活动中的问题描述软件工程方法规范了从分析阶段到设计阶段的各个步骤, 每个阶段都明确了开发工作人员进行的工作,采用的方法, 需要得到的成果等。但gis工程项目一般了简化程序, 减少开发成本

6、和提高软件重用度的作用。科学地划分模块一直很难取得标准。1文档管理不完善不仅是gis工程的开发人员,1.4很多一般软件开发人员都没有对文档赋予足够的重视程度。开发过程中的一系列文档, 包括需求分析、可行性分析、总体设 计、详细设计、数据库设计、数据规范和用户使用说 明等, 往往得不到统一规范的管理。每个开发阶段若 没有明确的文档作为指导和参考, 就会出现诸如开发 各自为政、风格不统一、项目目标迷失、开发者和用 户交流出现分歧等一系列致命的问题。2 解决gis 软件工程活动中的问题规模都比较大,常存在4个方面问题。1.1需求的变更由于gis工程项目的专业性和复杂性,用户的需求在系统开发的整个过程

7、中都在不断变更。如果没有一个完整的需求变更管理方案就贸然进入设计和开发 阶段, 所埋下的隐患是: 一旦用户的需求发生较大变 化, 对开发中的系统将可能是毁灭性的打击。这种情 况在实践中屡见不鲜。1.2项目目标蔓延软件项目的目标超出原始计划,2.1处理需求变更gis系统复杂和专业性的特点决定了用户需求的业界通常称为项目目标范围蔓延,这是软件开发中的固有矛盾。gis多样性和易变性,而且由于用户和工程人员知识背景项目目标定义困难, 而且由于开发周期内项目必然会面临改进, 这就极易导致项目目标的蔓延。如果处理 不当将成为项目失败的主要原因。因此, 必须采取一的不一致, 必然会导致对需求的描述和理解的不

8、一致。那么我们就必须使得初期需求分析充分完整, 最大限度满足用户的需求,消除隐患。对于gis工程项些措施控制对项目目标的蔓延,受到这些改进带来的负面影响。并确保开发者们不会目中不断变更的需求, 我们使用ibm的rational req-uisitepro 软 件 来 进 行 需 求 管 理 。 requisitepro 集 成 了收稿日期: 2004- 11- 04收集、分析问题记录至requisitepro文档 创建requisitepro概要说明跟踪需求 需求细节 在requisitepro中建立功能特性生成可见文档 用户需求分级、分派跟踪公布需求属性查询项目进展 requisitepro

9、确定需求变更重新定位需求microsoft word,以及一个数据库来提供强大而易使( 扩展) 的投资成本。这样管理者或用户方在提出改变用的框架,可以用它来对产品需求进行管理。requi-( 扩展) 项目目标要求的时候,就必须考虑到投资的增sitepro在需求文档中逐条标记用户的需求,然后通过加。这是防止因盲目而引起项目目标蔓延的有效途经。数据库对它们进行管理。在此基础之上, 开发者们可以不断跟踪和处理变动的需求。requisitepro需求管 理流程如下:科学地模块化工作流程模块化就gis系统而言: 是将gis工程项 目中的空间数据管理层和应用层中的各个部分相对独 立地划分为程序模块, 即可

10、以独立于系统之外运行,2.3也可以根据gis的规模组合为一个有机整体。如:在某城市管理gis服务系统中,我们划分了空间数据管理功能、三维显示功能、网上审批功能、制图与输出功能、空间查询功能、数据库维护功能、数据浏览功能( internet/intranet) 、gps执法车辆调度监控功能等。划分这些模块的标准是: 简化程序、减少工作量、降低开发成本、减少接口代价, 提高模块独立 性。系统开发的总成本是与模块开发成本和接口成本 相关的, 但并不是一个简单的求和过程。科学的划分模块应该将总成本控制在m区域内。见图2。图1 re quis ite p ro 需求管理流程图2.2 明确gis项目目标必

11、须让参与项目的所有人都清楚gis项目目标,建立统一的意识, 这对项目的成功具有很大的正面意 义, 也能确保项目不致迷失和蔓延。明确项目目标, 要注意以下几点:1) 确保项目参加者都明白项目的范围,目总体发布目标;定义项2) 整理需求。把经过开发方和用户讨论的项目目标细化成具体的工作要求;图2成本与模块划分度关系图3) 阶段化项目实施过程,编写一个大概的项目控制的方法是根据系统建设的投资预算和人力等因素, 填写模块划分成本预算表格, 根据表格中的数时间表或者甘特图, 以指导开发工作。见表1。表1 一个gis 项目实施计划表据,可以定位出最小投资成本区域。编号任务名称开始时间完成时间持续时间表2模

12、块划分成本预算表用户调研、需求分析可行性分析 总体设计资料收集、整理、校核 数据库详细设计子系统详细设计 数据库建库子系统开发 硬件安装子系统调试子系统测试22天20天20天22天23天22天45天65天22天23天23天9天43天9天12345678910111213142004- 4- 12004- 5- 32004- 5- 32004- 6- 12004- 6- 152004- 7- 12004- 7- 202004- 8- 22004- 4- 302004- 5- 282004- 5- 282004- 6- 302004- 7- 152004- 7- 302004- 9- 202004

13、- 10- 29接口总模块总开接口单 模块数 单个模块总开支开支位数n开支支( y)m( y)( y)方案1方案2 方案3 方案4 方案5 方案6方案76 0006 3006 5006 6007 0007 8008 50020354550606575101520253035408005003502502001801708 0007 5007 0006 2506 0006 3006 80014 00013 80013 50012 85013 00014 10015 3002004- 9- 30 2004- 10- 292004- 10- 12004- 11- 2从表中数据可以看出,当m=25 时

14、的划分方案最2004- 10- 15 2004- 11- 16系统安装、调试、试运行 2004- 11- 16 2004- 11- 26接近图2中两条曲线的交叉点,即为最佳模块化方案。文档整理培训2004- 10- 1 2004- 10- 302004- 12- 1 2004- 12- 132.4规范文档资料软件工程对于文档的要求是全面而细致的,不论 15 验收2004- 12- 15 2004- 12- 27 9天地理空间信息2005 年521) 加强开发人员之间的交流。几乎所有的大型软件系统都是将整个项目划分为若干个单独的模块或任务。纵向来说, 学术专家建立项目, 系统分析员整 理需求,

15、设计员指定总体设计, 程序员编制代码, 质 量评审员保证系统的性能和完整性, 测试人员保证系 统的稳定性等。每个阶段的工作都需要前面阶段的文结语3进行gis工程项目的开发人员, 大多数都具有gis专业背景, 而在理解软件工程的指导方面则显不足。 因此, 迫切需要对gis工程的研究人员、开发人员和管理人员进行软件工程方面的培训。当这些从事gis工程 项目的主力军在软件工程上有了较深层次的理解的时档作为指导和参考; 横向来说, 同一个阶段,不同的候,gis软件开发的工作将逐步走向标准化和国际化。开发人员有不同的任务, 对问题具有不同的理解。这个阶段的文档就可以起到消除理解分歧从而获得一致观念的作用

16、。gis软件系统的开发, 其过程极其耗费人力、物力、财力和时间。要想使项目开发达到预期目标, 就必须针 对组织、机构管理和计算机信息系统的特点, 根据软保证文档质量。重视对软件质量的评估, 制2)件工程思想, 采用科学的开发步骤和技术,对系统的定一系列的程序规格说明、数据规格说明和各种质量标准。这些文档既是指导质量评估的指南, 又是评估 的对象。高质量的文档是项目成功的关键和质量的保建立全过程进行控制与协调。其中最重要的是软件工程方法学的思想必须扎根于gis工程研究和开发人员的 工作中去, 这对gis的发展将是极大的推动力量。证, 应当体现在以下方面:( 1) 针对性:文档编制以前应分清读者对

17、象, 按不同的类型、不同层次的读参考文献者, 决定怎样适应他们的需要。例如,管理文档主要毕 硕 本 , 王桥. 地 理 信 息 系 统- 软 件 工 程 的 原 理 与 方 法1是面向管理人员的, 用户文档主要是面向用户的,这m.北京: 科学出版社, 2003邓良松, 刘海岩. 软件工程m. 西安 : 西 安 电 子 科 技 大 学 出 版社, 2000两类文档不应像开发文档 ( 面向软件开发人员) 那样2过多地使用软件的专业术语;连贯性:一个大整个过( 2)陈俊, 宫 鹏. 实用地理信息系统- 成功地理信息系统的3型的gis项目从立项开始至项目的交付使用,建设与管理m.北京:科学出版社,20

18、01张海藩.软件工程导论m.北京:清华大学出版社,1998吴信才.地理信息系统设计与实现m.北京: 电子工业出版 社, 2002程均有不同的文档来描述开发的活动, 我们需要把这45些文档统一管理, 如进行系统编号, 等;并茂: 文档编写应力求简明, 如有可能,图文( 3)配以适当的任何一个文图表, 以增强其清晰性;( 4) 完整性:邬伦.地理信息系统原理方法和应用m.北京: 科技出版6档都应当是完整的、独立的, 它应自成体系。同一项社, 2002目的几个文档之间可能有些部分相同,如gis工程项7毛锋 , 沈 小 华 , 艾 丽 双. arcgis8 开 发 与 实 践m. 北 京 :科技出版社

19、, 2002龚健雅. 地理信息系统基础m. 北京: 科学出版社, 2001目中, 我们必须在数据规范文档和数据库详细设计文档中描述空间数据的一些规范和具体设计, 这其中必 会 有 重 叠 , 这 些 重 复 是 必 要 的 。 应 当 少 出 现 “ 参89李钝, 余 俊.大力普及和应用软件工程学j.中国机械工程, 1995( 4) : 1310 晁 怡, 李清泉. 应用软件工程学方法开发gis工程的 必 要 性探讨j. 测绘通报, 2003.( 4) : 475011 藏卫东, 王 芸.软件工程管理策略j.交通与计算机, 1995,( 5) : 727812 赵永华, 软件工程的管理内容与管

20、理规范j.桂林电子工业 学院学报, 1994( 1) : 374513 吴 升, 王家耀 , 周 海 燕. 一 种 适 合gis开 发 的 软 件 工 程 方 法j.测绘学院学报, 2001( 1) : 5558考文档节”之类的文字,这将给文档使用者带来不必要的麻烦;( 5) 灵活性:各个不同的软件项目, 其规模和复杂程度有着许多实际差别,不能一律看待。对于较小的或比较简单的项目,可做适当调整或合并。但是对于一般比较庞大的gis软件系统,一般不能减少其中任何一个环节,相反有时候需要把一个文档分成两个文档来写;可追溯性: 由于各( 6)开发阶段编制的文档与各阶段完成的工作有着紧密的关系, 前后两个阶段生成的文档, 随着开发工作的逐 步扩展, 具有一定的继承关系。在一个项目各开发阶 段之间提供的文档必定存在着可追溯的关系。3) 加大对后期文档的重视程度。一个项目做到14 郭建文, 冯敏

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论