GIS软件工程的总体设计

合集下载

5_GIS软件工程的总体设计

5_GIS软件工程的总体设计

GIS软件 第五章 GIS软件 工程总体设 计
课堂提要
5.1 系统目标的确 定 5.2 总体设计的基 本原则 5.3 体系结构设计 5.4 数据库概念设 计 5.5 模块设计 5.6 应用模型设计 5.7 代码设计
GIS 软件工程
4)先进性 要考虑计算机及外设、 要考虑计算机及外设、基础软件的 新版本,新的操作系统等先进设备、 新版本,新的操作系统等先进设备、先 进技术的应用。 进技术的应用。
5.6 应用模型设计 5.7 代码设计
GIS软件 第五章 GIS软件 工程总体设 计
GIS 软件工程
1、确定目标的原则 1)针对性
GIS软件 第五章 GIS软件 工程总体设 计
提高信息管理的效率, 以提高信息管理的效率,提高信息 5.1 系统目标的确 质量,为决策者提供及时、准确、 质量,为决策者提供及时、准确、有效 定 的信息,向社会提供所需信息为出发点。 的信息,向社会提供所需信息为出发点。5.2 总体设计的基 对具体的专业应用要有具体的设计目标。 对具体的专业应用要有具体的设计目标。 本原则
5.3 体系结构设计 5.4 数据库概念设 计 5.5 模块设计 5.6 应用模型设计 5.7 代码设计
GIS 软件工程
5.3 体系结构设计 1、常用系统体系 1)层次体系
所谓层 所谓层次的概念就是一层一层分割一目了 概念就是 的处理方 体系就 用分层 然的处理方式。层次体系就是利用分层的方式 处理复杂 功能, 复杂的 系统要求上 来处理复杂的功能,层次系统要求上层子系统 下层子系统的功能, 下层子系统 子系统的功能 子系统不 可以使用下层子系统的功能,而下层子系统不 子系统的功能 功能。 下层每 能够使用上层子系统的功能。一般下层每个程 接口执行当前 一个简 功能, 序接口执行当前的一个简单的功能,而上层通 下层程 过调用不同的下层程序,并按不同的顺序来执 这些下层 下层程 体系就是以这 行这些下层程序,层次体系就是以这种方式来 多个复杂 复杂的 功能的 完成多个复杂的业务功能的。

第五章GIS软件工程总体设计123

第五章GIS软件工程总体设计123
3.理想模块(黑箱模块)
特点:
(1)每个理想模块只解决一个问题。 (2)每个理想模块的功能都应该明确,使人容易理解。 (3)理想模块之间的联结关系简单,具有独立性。 (4)由理想模块构成的系统,容易使人理解,易于编程,易于测试,易于 修改和维护。
对用户来说,其感兴趣是模块的功能,而不必去理解 模块内部的结构和原理。
5.3 软件结构设计-模块
模块的特点:
1.属性
外部属性:输入/输出、逻辑功能
内部属性:运行程序、内部数据 • 在结构化系统设计中。人们主要关心的是模块的外 部属性,至于内部属性,将在详细设计中完成。 2.大小 • 模块有大有小,它可以是一个程序,也可以是程序 中的一个程序段或者一个子程序。
5.3 软件结构设计-模块
信息隐蔽
5.3 软件结构设计-模块
一 模块: 在程序中数据说明、可执行语句等程序对
象的集合,或者是单独命名和编址的元素
。 模块化:指解决一个复杂问题时自顶向下逐层把软 件系统划分若干模块的过程。
(1) 模块的逻辑功能是指模块能够做什么事,表达了模块把输 入转换成输出的功能,可以是单纯的输入/输出功能。 (2) 模块的运行程序指模块如何用程序实现其逻辑功能。
5.3 软件结构设计-模块的独立性
四、模块的独立性
模块独立性, 是指软件系统中每个模块只完成系 统要求的独立的子功能, 并且与其它的模块的联 系最少且接口简单。 例如, 若一个模块只具有单一的功能且与其它 模块没有太多的联系, 则称此模块具有模块独 立性。 一般采用两个准则度量模块独立性。即模块 间耦合和模块内聚。
5.3 软件结构设计
结构化设计的主要思想:认为一个程序 、一组程序或者一个系统无非是由一组功能 操作来构成的,并进而吸取了结构化分析的 “黑盒子”的概念。

第6章GIS软件工程的详细设计

第6章GIS软件工程的详细设计
• 当技能级别增加时可以使交互流水化并允许 定制交互 • 使用户隔离内部技术细节 • 设计应允许用户和出现在屏幕上的对象直接 交互
黄金规则:减少用户的记忆负担
Mandel定义了一组设计原则,使界面能够 减少用户记忆负担:
• 减少对短期记忆的要求
• 建立有意义的缺省
• 定义直觉性的捷径 • 界面的视觉布局应该基于真实世界的隐喻 • 以不断进展的方式揭示信息
界面举例MSN
界面举例红心大战
缺省值
黄金规则:保持界面一致
用户应以一致的方式展示和获取信息
• 所有可视信息的组织均按照贯穿所有屏幕显 示所保持的设计标准
• 输入机制被约束到有限的集合,在整个应用 中被一致地使用 • 从任务到任务的导航机制被一致地定义和实 现
黄金规则:保持界面一致
用户应以一致的方式展示和获取信息
• 对系统有了解的经常用户
影响用户行为特性的因素
•人-机匹配性 •人的固有技能 •人的固有弱点 •用户的知识经验 •用户对系统的期望和态度
用户对计算机系统的要求
• 让用户灵活地使用
• 适应不同类型用户
• 系统的行为及效果对用户透明
• 用户对系统的期望和态度
• 提供联机帮助功能 • 人机交互尽可能和人际通信相似
界面设计主要包括三个方面:
• 设计软件构件之间的接口 • 设计模块和其他非人的信息生产者和消费
• 设计人(如用户)和计算机间的界面
者的界面
界面的设计原则
• 分析用户类型 • 应用程序和界面分离 • 一致性 • 尽量减少用户工作 • 提供反馈 • 出错处理和帮助功能 • 增加可视化图形表示
黄金规则
程序流程图符号
系统流程图示例
卫星通信车载站手持监控设备设计软件流程图

GIS设计与实现4.总体设计

GIS设计与实现4.总体设计

空地 平
空分
样级
间形 均 曲引间值 分 点差
内坡 高 面力扩频 值 级收
插度 程 分模散率 分 别益
分分 分 级型分分 级 提测
析析 析
析析
取算
二、HIPO图
HIPO图是由美国IBM公司发明的“层次+输入 /处理/输出图”的英文缩写。HIPO图实际上由H图( 即层次图)和IPO图两部分组成。
Hierarchical 层次 Input 输入 Process 处理 Output 输出
如果某模块只有一个上级模块调用它,可以 把它合并到调用它的上级模块中。
(2)模块规模应该适中
模块规模不应过大,规模过大,不易理解;规模也不 宜过小,模块过小,模块数量将增大,使得模块接口变 得复杂;
适当的模块规模一般其编码能写在一页纸上(通常在 60行左右)
返回
(3)深度、宽度、扇出、扇入都应当适中
运行数据库服务器程序 的机器,称为应用服务 器,一旦服务器程序被 启动,就随时等待响应 客户程序发来的请求。
运行在客户端电脑上,当 需要对数据库中的数据进 行操作时,通过网络向服 务器程序发出请求,服务 器程序根据预定的规则作
出应答,送回结果。
1.客户端和服务器端分别由相应的软硬件组成; 2.多个客户端共享服务器资源; 3.通过网络协议进行通讯; 4.客户端可实现功能和数据的透明访问和存取.
将 WEB 服 务 应 用 于 GIS 。 目 前 正 处 于 实验性阶段
第四节 软、硬件环境配置方案设计
一、硬件环境 二、软件环境
一、硬件环境
支持GIS开发和运行的硬件平台,用于存储、处
理、传输和显示空间数据。
主机
用于数据管理、存储 和处理的设备,如工

GIS软件工程的总体设计-课件 (二)

GIS软件工程的总体设计-课件 (二)

GIS软件工程的总体设计-课件 (二)
1. GIS软件工程的总体设计需要考虑到系统的功能需求,包括数据管理、地图展示、空间分析等。

2. 在GIS软件工程的总体设计中,需要考虑到系统的数据源,包括地图数据、卫星影像数据、传感器数据等。

3. GIS软件工程的总体设计需要考虑到系统的用户需求,包括不同用户的使用习惯、需求差异等。

4. 在GIS软件工程的总体设计中,需要考虑到系统的安全性,包括数据的保密性、系统的防护能力等。

5. GIS软件工程的总体设计需要考虑到系统的可扩展性,包括支持新的数据源、新的功能模块等。

6. 在GIS软件工程的总体设计中,需要考虑到系统的性能需求,包括数据处理速度、系统响应时间等。

7. GIS软件工程的总体设计需要考虑到系统的可维护性,包括代码的易读性、易维护性等。

8. 在GIS软件工程的总体设计中,需要考虑到系统的用户界面设计,包括界面的美观性、易用性等。

9. GIS软件工程的总体设计需要考虑到系统的可靠性,包括系统的稳定性、容错能力等。

10. 在GIS软件工程的总体设计中,需要考虑到系统的成本效益,包括系统的开发成本、维护成本等。

GIS软件工程的总体设计方法

GIS软件工程的总体设计方法

是进 行 变 换 分 析 。 变换 分 析 方 法 由 如 下 四 步 组 成 :①重 画数据 流 图 ;②确 定 系统 的逻 辑 输 人 、 逻 辑 输 出和 中心 变换 部分 ;③ 进行 一级 分解 ,设 计 系 统模 块 结构 的顶 层和 第一 层 ;④进 行二 级 分 解 ,设 计 输 人 、中 心变换 、输 出部 分 的 中、下层 模块 。 2 事务 分 析 设计 方 法 ,在 数据 流程 图 中 有 ) 各 种 数据 流 可 以引发 一个 或多 个处 理 ,这些 处理 能够 完成 该 作业 要求 的功 能 ,这种 数据 流就 叫做 事 务 。对 这类 数 据 流程 图进行 变换 建立 系统 结构 图就 是事 务 分析 ,与变换 分析 一样 ,也 是从 分 析 数 据 流 图开 始 , 自顶 向下 ,逐 步分 解 ,建立 系统 结 构 图 。数 据分 析设 计方 法 的步骤 :① 识别 事务 源 ;②确 定适 当的事 务型 结构 ;③ 识别 各种 事务 和它们 定 义 的操 作 3 系统 结 构 图 完善 ,通 过 如上 方 法 获 得 的 )
[ 要] 本文 结合工作 实际,阐述 了 G S软件 工程 总体设 计方法。通 过时 G S软 件工程设计方法的研 究 ,达到优化 G S 摘 I I I
设 计 的 目的 。
[ 键词 ] GI 构 化 设 计 方 法 ,G S面 向 对 象设 计 方 法 }J P方 法 ;J D 方 法 l 关 S结 I S S
务型 系 统 结 构 图 ,对 系 统结 构 进 行 分 解 ;然 后 , 根据 系 统结 构 的形 式对各 个 部分 的数 据流 程 图导
出相应的系统结构图,组成初始系统结构图;最
后 ,对 初始 系统 结 构 图进 行修 改得 到最 终 系统 结

GIS软件工程_系统总体设计

GIS软件工程_系统总体设计
在了解城市中心主要大气点污染源的基础上,通过GIS的一系列插值方法,得到 城市大气污染扩散情况。
(三)大气质量评价模块
大气质量评价模块主要包括基于AQI指数模型评价和基于GIS网格划分模拟模型 评价两个子模块。
AQI指数模型评价模块
通过分别对各个区的大气环境监测点进行AQI指数计算,得到每个区的AQI指数, 进而得到合肥市中心城区AQI指数。
提供打印浏览、地图要素添加、打印等功能;
图层控制模块
图层控制包括,图层的添加、移动、删除、图层属性表浏览、图层属性、图层符号化功 能;
数据输出模块
用户可以将现有数据格式转换为shp、gdb或mdb格式的数据,对数据进行投影转换、坐标 转换等功能。
GIS软件工程 2017/4/20
7
(二)大气污染模拟模块
GIS软件工程 2017/4/20
4
系统简介
大气环境质量评价是改善大气质量,而对于反映环境质量的环 境基础信息而言,基于GIS的大气环境质量评价系统更具有直观性、 空间性。它把城市大气点状污染源和大气环境监测点等有关数据输 入系统,并在此基础上进行分析,进行环境信息的存储和查询、大 气污染的分析、污染物排放的预测等工作。 系统的设计思路是利用VS 2010平台和ArcGIS Engine组件开发, 通过两大数据库系统管理和转换空间数据及属性数据,进行动态数 据的交换。系统主要由模型、数据和接口组成,数据模块为模型和 接口模块提供数据来源。 系统中应用到插件技术,实行框架+插件的软件架构。插件技术 是指在程序的设计开发过程中,设计了宿主和插件两部分程序,宿 主和插件之间通过数据可以相互连接,并且通过增减插件或修改插 件来调整应用程序的功能。
GIS软件工程
2017/4/20

GIS软件工程-第7章 GIS软件工程的设计方法

GIS软件工程-第7章 GIS软件工程的设计方法

GIS软件工程-第7章 GIS软件工程的设计方法GIS 软件工程第 7 章 GIS 软件工程的设计方法在当今数字化和信息化的时代,地理信息系统(GIS)的应用日益广泛。

从城市规划到资源管理,从环境保护到交通运输,GIS 都发挥着重要作用。

而 GIS 软件工程作为开发高质量 GIS 系统的关键,其设计方法更是至关重要。

GIS 软件工程的设计方法涵盖了多个方面,包括需求分析、体系结构设计、数据设计、界面设计等。

需求分析是整个设计过程的基础,它旨在明确用户对 GIS 系统的功能和性能需求。

这需要与用户进行深入的沟通和交流,了解他们的业务流程、工作场景以及面临的问题和挑战。

通过需求分析,可以确定系统需要处理的数据类型、数据量、数据精度等,以及系统需要提供的功能,如地图绘制、空间分析、数据查询等。

体系结构设计则决定了系统的整体框架和组织方式。

常见的 GIS 体系结构包括C/S(客户端/服务器)架构和B/S(浏览器/服务器)架构。

C/S 架构具有较强的交互性和处理能力,适用于对性能要求较高的专业应用;B/S 架构则具有易于部署和维护的优点,适合广泛的用户通过网络访问使用。

在进行体系结构设计时,需要考虑系统的可扩展性、可维护性和可靠性等因素,以确保系统能够适应未来的业务发展和技术变化。

数据设计是 GIS 软件工程中的核心环节。

GIS 系统涉及大量的空间数据和属性数据,如何有效地组织和管理这些数据是关键。

需要确定数据的存储格式、数据结构和数据库模式。

常见的数据存储格式包括矢量数据和栅格数据,它们各有优缺点,需要根据具体应用场景进行选择。

数据结构的设计要考虑数据的一致性、完整性和高效查询等要求。

同时,还需要建立合理的数据库模式,以实现数据的有效存储和管理。

界面设计对于 GIS 系统的用户体验至关重要。

一个好的界面应该简洁明了、易于操作,能够让用户方便地完成各种任务。

在界面设计中,需要考虑用户的操作习惯和认知能力,合理布局功能按钮和菜单,提供清晰的操作提示和反馈。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
interface design architectural design
data design
THE DESIGN MODEL
4
翻译分析模型到软件设计
数据设计将分析时创建的信息域模型变换为软件所需的数 据结构,侧重于数据结构的定义。
体系结构设计定义软件系统各主要结构构件之间的关系。 过程设计则是把结构构件转换成软件的过程性描述。在编
从技术和管理的角度看设计的关系
2
两类软件工程的简单比较
3
翻译分析模型到软件设计
Data object description
E-R
Process specification DFD DD
STD Control specification
THE ANALYSIS MODEL
prቤተ መጻሕፍቲ ባይዱcedural design
第五章 GIS系统总体设计
第一节 总体设计的基本理论 第二节 软件体系结构设计 第三节 空间数据库设计 第四节 GIS应用分析模型设计 第五节 GIS用户界面设计 第六节 系统总体设计报告
1
第一节 总体设计的基本理论
一、系统设计概述
系统设计是一个把系统需求变换成软件表示的过程。 最初这种表示只是描绘出系统的总的框架,然后进一步细 化,在此框架中填入细节,把它加工成在程序细节上非常 接近于源程序的软件表示。
13
模块化的优点: 使软件结构清晰; 使软件容易测试和调试,因而有助于提高软件的
可靠性; 模块化能够提高软件的可修改性; 提高程序编写的可分解性;
14
2.抽象(abstraction)
抽象是抽出事物的本质特性而暂时不考虑它们的 细节。随着软件规模的不断增大,设计的复杂性 也不断增大,抽象便成了控制复杂性的基本策略 之一;
17
4.信息隐藏 (Information Hiding) 信息隐藏是把系统分解为模块时应遵守的指导
思想。模块内部的数据与过程,应该对不需要 了解这些数据与过程的模块隐藏起来; 这一指导思想的目的,是为了提高模块的独立 性;
18
5.模块独立性 为什么模块的独立性很重要呢?
第一,有效的模块化的软件比较容易开发出来。 第二,独立的模块比较容易测试和维护。
模块化就是把程序划分成独立命名且可独立 访问的模块,每个模块完成一个子功能,把这些 模块集成起来构成一个整体,可以完成指定的功 能满足用户的需求。
11
模块化论据: C(x)定义为问题x的感知复杂性 E(x)定义为解决问题x所需要的工作量 对p1和p2两个问题,
若 C(p1) > C(p2),则 E(p1) > E(p2) C(p1 + p2) > C(p1) + C(p2) E(p1 + p2) > E(p1) + E(p2)
软件工程过程的每一步都是对软件解法的抽象层 次的一次精化;
软件设计其实就是在不同抽象级别考虑和处理问 题的过程。在由高级抽象到低级抽象的转换过程 中,要进行一连串的过程抽象和数据抽象。
15
过程抽象与数据抽象: 过程抽象:把完成一个特定功能的动作序列抽象 为一个过程名和参数表; 数据抽象:数据抽象把一个数据对象的定义抽象 为一个数据类型名。用此类型名可以定义多个具 有相同性质的数据对象。
9
三、总体设计的方法
由问题结构导出系统结构,即问题结构到系统结构的映射。 通过自顶向下分解和层次组织的方法来简化系统,产生模 块结构。 运用一系列的图表工具。 提供一系列的系统设计策略。 提供一组评价系统设计质量的准则。
10
四、设计基本原理 1.模块化(Modularity)
这个不等式“各个击破”的结论——把复杂的问题分解 成许多容易解决的小问题,原来的问题也就容易解决了。这 就是模块化的根据。
12
模块化和软件成本:
如何确定最小成本区?
最小成本区
成 本
每个程序都相应地 有一个最适当的模 块数目M,使得系 统的开发成本最小。
软件总成本
接口成本
成本 / 模块
模块数目
不要过度模块化!每个模块的简单性将被集成的复杂性所掩盖。
码步骤,根据这种过程性描述,生成源程序代码,然后通 过测试最终得到完整有效的软件。 接口设计是建立软件内部的关系以及软件人-机之间的交 互机制。
5
软件设计的重要性
软件设计是后续开发步骤及软件维护工作的基础。如果 没有设计,只能建立一个不稳定的系统结构。
6
二、总体设计的任务
总体设计从回答“做什么”到回答“怎样 做”; GIS总体设计阶段的主要任务是将系统需求转换为数据 结构和软件体系结构。 数据设计:把分析阶段所建立的信息域模型变换成软 件实现中所需的数据结构。 体系结构设计:则是把系统的功能需求分配给软件结 构,形成软件的模块结构图、并设计模块之间的接口关 系。
19
模块独立性的度量标准: 内聚(cohesion)和耦合(coupling)
耦合衡量不同模块彼此间互相依赖(连接)的紧密 程度;
内聚衡量一个模块内部各个元素彼此结合的紧密程 度。
20
(1)内聚 cohesion
简单地说,理想内聚的模块只做一件事情;
内聚级别:偶然内聚 逻辑内聚 时间内聚 过程内聚 通信内聚 顺序内聚 功能内聚
7
模块: 模块指的是具有输入和输出、逻辑功能、运行程序、 内部数据四种属性的一组程序语句。除了上述四个 主要属性外,模块还有其他的属性。例如,它有一 个名称,可以使用别的模块,也可以被别的模块使 用,即“调用”和“被调用”。
8
模块(续): 软件结构:即由模块组成的层次系统; 应该把模块组织成良好的层次系统,顶层模块调 用它的下层模块以实现程序的完整功能,每个下 层模块再调用更下层的模块,从而完成程序的一 个子功能,最下层的模块完成最具体的功能。
16
3.细化(Refinement)
1971年,N.Wirth发表了“用逐步细化的方法开 发程序”的文章,强调程序设计是一个“渐进” 的过程。
抽象与细化是互补的概念。细化实际是一个详细 描述的过程。
细化的实质就是分解。在逐步细化中,特别强调 这种分解的“逐步”性质,这样,在相邻两步之 间就只有微小的变化,不难验证它们的内容是否 等效。
相关文档
最新文档