1
1
Addressing Quality Requirements in
GIS Architectures
Ibrahim Habli
GIS Services Division
Khatib & Alami (CEC)
Lebanon
Tim Kelly
Department of Computer Science
University of York
United Kingdom
TS14.1 SIM and Quality
From Pharaohs to Geoinformatics, FIG Working Week 2005 and GSDI-8, Cairo, Egypt April 16-21, 2005
2
High Quality GIS
Attention is often paid to GIS functionalities
However, quality aspects are insufficiently
addressed. A GIS would be:
��
Ineffective
Ineffective if its processing misses deadlines
��
Unreliable
Unreliable if it is not available when it should be
��
Unusable
Unusable if it is difficult to understand
Hence, high quality GIS systems depend on
qualities, such as
� Efficiency
� Reliability
� Usability
� Security
3
Problems with GIS Quality
Requirements
Complexity and large volume of geographic
information
Often not systematically captured & documented
Common to find ambiguous statements such as:
�� ““System shall be portableSystem shall be portable””
�� ““System shall be highly securedSystem shall be highly secured””
�� ““GIS operations shall be efficientGIS operations shall be efficient””
Hence, no feasible means to assess whether the
system has met its quality requirements or not
4
Solution: Architectural Framework
Based on two architectural techniques
from the
S
Software
E
Engineering
I
Institute
(SEI):
(SEI):
� Quality Attribute Scenarios
� Attribute Driven Design Method (ADD)
Quality Attribute
Scenarios & Use Cases Conceptual Architecture
5
Quality Attribute Scenarios
SEI quality attribute scenarios consist of 6
yardsticks:
1. Source of stimulus
2. Stimulus
3. Environment
4. Artifact
5. Response
6. Response measure
Source: GIS administrator
Stimulus: The administrator requests to convert the data format of a
portion of the GIS data
Artefact: GIS system (Data source)
Environment: Runtime
Response: The required format is converted with no data inconsistency
Response Measure: Number of elements affected/ programming effort/ data loss
6
Attribute Driven Design
Method
Attribute Driven Design Method (ADD) is a recursive
approach to software architecture design based on the
quality attributes the software needs to achieve
1. Choose one design element
2. Choose the architectural drivers i.e. quality requirements
3. Choose architectural patterns
4. Assign functionality to each of the design elements
(resulting from the decomposition)
5. Verify that the decomposition has addressed the
selected architectural drivers
Quality Attribute
Scenarios & Use Cases Conceptual Architecture
2
7
Achieving GIS Quality
Requirements using ADD
Quality requirement scenarios addressed:
� Performance
� Editing a Geographic Feature
� Retrieve Data
� Modifiability
� Change GIS Data Format
� Add GIS Component
� Interface GIS with an External Software System
8
First Level of Decomposition
<>
GIS
<>
User-Interface
<>
Applications
<>
Data
<>
OperatingSystem
<>
Communication
• Scenarios addressed at this stage:
• Add GIS Component
• Change GIS Data Format
• Editing a Geographic Feature
• Retrieve Data
• Architectural Decisions:
• Maintain semantic coherence
• Published interfaces
• Client-Server
• Minimize clients & servers interaction
9
Second Level of Decomposition:
Applications Subsystem Decomposition
• Scenarios addressed at this stage:
• Mediator design pattern
• Use geographic information standards
• Separation unit operation
• Architectural Decisions:
• Interface GIS with an External Software System
• Change GIS Data Format
• Editing a Geographic Feature
• Retrieve Data
<>
User- Interface
<>
Applicat ions
<>
Data
<>
OperatingSystem
<>
Communication
10
Quality Attribute Scenarios:
� Editing a Geographic Feature
� Retrieve Data
� Change GIS Data Format
� Add GIS Component
� Interface GIS with an External
Software System
<>
DataFacade
<>
AttributeData
<>
GeographicData
<>
FileBasedData
IGeographicData IAttributeData IFileBasedData
IDataFacade
<>
DataSecurity
IDataSecurity
<>
ApplicationSecuri ty
<>
Services
<>
Mediator
<>
Real-TimeServices
IServices IApplicationSecurity
IMediator IReal-TimeServices
<>
Application
Facade
IApplicationFacade
<>
GUI
IGUI
<>
ThickGUI
IThickGUI
<>
ThinGUI
IThinGUI
<>
ExternalInterface
IExternalIn terface
<>
SWInterface
ISWInterface
<>
HWInterface
IHWInterface
<>
UIAdapter
IUIAdapter
User-Interface
Subsystem
Data Subsystem
Applications
Subsystem
Architectural Decisions:
1. Maintain semantic coherence
2. Published interfaces
3. Client-Server style
4. Minimize clients & servers interaction
5. Data accessor design pattern
6. Façade design pattern
7. Concurrency
8. Caching
9. Increase hardware resources
10. Mediator design pattern
11. Geographic information standards
12. Separation unit operation
13. Generalization style
14. Adapter (or wrapper) design
11
Evaluation: GIS Quality Attribute Scenarios
Understandability: scenarios unambiguously
define factors controlling the achievement of
quality attributes
Precision: response and response measure
offer specific means for assessing GIS
architectures
Traceability: decomposing each quality
attribute into scenarios enables traceability of
how an attribute is addressed during the
architectural design and evaluation
12
Evaluation: GIS Architecture Design
Attribute Driven Design Method:
• Simplifies architectural design process
• Systematic consideration of quality attributes
• Mapping between quality attribute scenarios
& architectural decisions
Design Documentation:
• Well organized architectural documentation
• Record of architectural design decisions
applied, resultant architectural views and
underlying design rationale
3
13
Q&A