Best Practices for Implementing a GIS project 2008 FINAL v2
70
2008 ESRI 2008 ESRI Business GIS Summit Business GIS Summit Business GIS Summit Business GIS Summit Best Practices for Implementing a Best Practices for Implementing a Best Practices for Implementing a Best Practices for Implementing a Successful GIS Project Successful GIS Project Presented by Presented by Gerry Clancy Gerry Clancy Services Manager Services Manager 1 Federal Federal-Civilian and Commercial Civilian and Commercial ESRI ESRI-DC DC Business GeoInfo Summit 2008 Business GeoInfo Summit 2008
Best Practices for Implementing a GIS project 2008 FINAL v2
Best Practices for Implementing a GIS project 2008 FINAL v22008
ESRI 2008 ESRI Business GIS SummitBusiness GIS SummitBusiness GIS
SummitBusiness GIS Summit
Best Practices for Implementing aBest Practices for Implementing
aBest Practices for Implementing a Best Practices for Implementing
a Successful GIS ProjectSuccessful GIS Project
Presented byPresented by Gerry Clancy Gerry Clancy Services
ManagerServices Manager
11
AgendaAgenda
•• Overview of the Implementation ProcessOverview of the
Implementation Process
•• StepStep--byby--Step Discussion of the Implementation Process
andStep Discussion of the Implementation Process andStepStep byby
Step Discussion of the Implementation Process and Step Discussion
of the Implementation Process and Recommended Best
PracticesRecommended Best Practices
22Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Goals for This SessionGoals for This Session
1.1. Provide a road map for planning a GIS projectProvide a road
map for planning a GIS project
22 Describe best practices for implementing a successful
projectDescribe best practices for implementing a successful
project2.2. Describe best practices for implementing a successful
projectDescribe best practices for implementing a successful
project
3.3. Help you plan for risks and avoid common mistakesHelp you plan
for risks and avoid common mistakes
44 Provide information on available project planning
resourcesProvide information on available project planning
resources4.4. Provide information on available project planning
resourcesProvide information on available project planning
resources
33Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Scope of This SessionScope of This Session
IncludesIncludes
P j MP j M Does Not IncludeDoes Not Include
•• Project Management Project Management
perspectiveperspective
•• Best Practices for project Best Practices for project lif l l
ilif l l i
•• Specific Geodatabase Specific Geodatabase planning
adviceplanning advice
lifecycle planninglifecycle planning
•• Lessons Learned from past Lessons Learned from past Enterprise
GIS Enterprise GIS implementationsimplementations
•• Specific systems architecture Specific systems architecture
sizing guidelinessizing guidelines
S ifi d t d iS ifi d t d iimplementationsimplementations ••
Specific product adviceSpecific product advice
•• Programming adviceProgramming advice
44Business GeoInfo Summit 2008Business GeoInfo Summit 2008
GIS Is Deployed In Many WaysGIS Is Deployed In Many Ways
TraditionalTraditional
EmergingEmerging
University of Akron, December 2005University of Akron, December
2005 55
What is Enterprise GIS?What is Enterprise GIS?
“Enterprise” has several meanings: •
OrganizationalOrganizational
– Multiple Departments, Multiple Business Processes and Many
Systems Involved in GIS Applications
• Deployment and Licensing S ft Li i d P h i A t– Software
Licensing and Purchasing Agreements
– Large Scale Deployments of Software • Enterprise IT
Architecture
– A Technology Strategy and Architectural Decisions that gy gy are
Organizing Principles for Design
– Broad-based Applications, Data, and Systems Design For
Business-critical Systems
66Business GeoInfo Summit 2008Business GeoInfo Summit 2008
What is Enterprise GIS?What is Enterprise GIS?
OthOth
An enterprise GIS is an An enterprise GIS is an integrated,
multiintegrated, multi--departmentaldepartmental system of
components used to collect, organize, analyze, system of components
used to collect, organize, analyze, is ali e and disseminate
geographic informationis ali e and disseminate geographic
information
ApplicationApplication ApplicationsApplications
OtherOther Business UnitsBusiness Units
pppp ApplicationsApplications ApplicationsApplications
ApplicationsApplicationsThe goal of an enterprise The goal of an
enterprise
GIS is to implement GIS is to implement interoperable
interoperable
ServicesServices ServicesServices
Data Warehouse
ServicesServices Enterprise Service Bus
data and services can data and services can support core business
support core business needs more efficiently needs more
efficiently
77
eeds o e e c e t yeeds o e e c e t y and more effectively.and more
effectively.
Requires a Higher Level of Planning, Integration, Testing and
SupportBusiness GeoInfo Summit 2008Business GeoInfo Summit
2008
Components of a GISComponents of a GIS
ApplicationApplication HardwareHardware
Policy/Procedure
Proposal Authority Legal description Public Interest Benefit (PM
2-1)
Acquisition: Conveyance in an interest in land to the US from a non
Federal party
Review and Process Proposal
(MM)
Proposal may be initiated by private individuals or federal
agency
Land Description Verification
Assumption: this flow describes serialized applications
Q C
S upervisor
QC (G)
In the case of a reconveyance there will be an automatic re-opening
notation; in some acquisitions there may be a re-opening
notation
Create Map Output
Flow of tasksStarting point PM Use Case Other Use Case
Ongoing Ongoing PlanningPlanning
Operations & Operations & MaintenanceMaintenance
ESRI Project CenterESRI Project Center
1010––http://support.esri.com/projectcenterhttp://support.esri.com/projectcenter
Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Strategy & Strategy & PlanningPlanning
Analysis & Analysis & DesignDesign
••Database Database DevelopmentDevelopment
••Deployment Deployment PlanningPlanning
••Business Case Business Case DevelopmentDevelopment
••Implementation Implementation
pp TestingTesting
••Software Software MaintenanceMaintenance
••Application Application DesignDesign
Strategy & Strategy & PlanningPlanning
Analysis & Analysis & DesignDesign
••Database Database DevelopmentDevelopment
••Deployment Deployment PlanningPlanning
••Business Case Business Case DevelopmentDevelopment
••Implementation Implementation
pp TestingTesting
••Software Software MaintenanceMaintenance
••Application Application DesignDesign
Strategy and Planning Activities:Strategy and Planning Activities:
Process OverviewProcess Overview
1313Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Strategy and Planning Activities:Strategy and Planning Activities:
Developing the VisionDeveloping the Vision
•• What Is the Business Problem Being Solved?What Is the Business
Problem Being Solved?
•• What Is the Proposed Solution?What Is the Proposed Solution?What
Is the Proposed Solution?What Is the Proposed Solution?
•• Who Are the Target Users?Who Are the Target Users?
•• How Does This Solution Integrate With Other Existing or Planned
How Does This Solution Integrate With Other Existing or Planned g
gg g Systems?Systems?
•• How Will This Solution Benefit the Organization?How Will This
Solution Benefit the Organization?
•• What Are the Criteria for Success?What Are the Criteria for
Success?
Template for Creating a Project Vision Statement
1414
Template for Creating a Project Vision Statement Available on the
Project Center
Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Strategy and Planning Activities:Strategy and Planning Activities:
Developing the Business CaseDeveloping the Business Case
•• What Are the What Are the Benefits Benefits of the Project? How
Does It Support the Mission of of the Project? How Does It Support
the Mission of the Organization?the Organization?
•• What Are the Estimated What Are the Estimated CostsCosts??
•• What Is the Expected Return On Investment (What Is the Expected
Return On Investment (ROIROI) ?) ?
•• How Does the Project Relate to Other Efforts Within the
Enterprise?How Does the Project Relate to Other Efforts Within the
Enterprise?
•• ESRI Press:ESRI Press: ––Measuring UpMeasuring Up -- Outlines a
Number of Case Studies and GeneralOutlines a Number of Case Studies
and GeneralMeasuring UpMeasuring Up Outlines a Number of Case
Studies and General Outlines a Number of Case Studies and General
Methodology for Doing Cost Benefit Analysis Methodology for Doing
Cost Benefit Analysis ––Thinking About GISThinking About GIS ––
Roger TomlinsonRoger Tomlinson –– ROI ROI book book
Th B i f GISTh B i f GIS––The Business of GIS The Business of GIS
–– new ESRI book and web site on ROI new ESRI book and web site on
ROI
1515Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Strategy and Planning Activities: Strategy and Planning Activities:
Activity PlanningActivity Planning
•• Define the Initial Work Breakdown Structure (WBS)Define the
Initial Work Breakdown Structure (WBS) –– By Project PhaseBy
Project Phase –– By ComponentBy Component
•• Define the ActivitiesDefine the Activities •• Assign
ResourcesAssign Resourcesgg •• Define Dependencies Between
ActivitiesDefine Dependencies Between Activities •• Assign
DurationsAssign Durations
1616Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Strategy and Planning Activities:Strategy and Planning Activities:
Identifying & Monitoring Project RisksIdentifying &
Monitoring Project Risks
•• InternalInternal –– StaffStaffStaffStaff –– BudgetBudget ––
ScheduleSchedule –– User ExpectationsUser Expectationspp
•• ExternalExternal –– Hardware FailureHardware Failure –– “3“3rdrd
Party” Software Release SchedulesParty” Software Release
Schedulesyy –– “3“3rdrd Party” ContractorsParty” Contractors ––
Integration IssuesIntegration Issues –– Natural DisasterNatural
Disaster
1717
Risk Monitoring Should Be Done Throughout the Project LifecycleRisk
Monitoring Should Be Done Throughout the Project Lifecycle
Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Strategy and Planning Activities:Strategy and Planning Activities:
Managing ChangeManaging Change
•• Managing Change Is Essential to Managing Scope, Schedule and
BudgetManaging Change Is Essential to Managing Scope, Schedule and
Budget •• Clearly Identify Procedures for Identifying, Documenting,
and Approving Clearly Identify Procedures for Identifying,
Documenting, and Approving
Change RequestsChange Requests •• Assess Schedule and Budget Impact
of Proposed ChangesAssess Schedule and Budget Impact of Proposed
Changes •• Set Up a Project Change Management Board, if
NecessarySet Up a Project Change Management Board, if Necessaryp j
g g , yp j g g , y •• Many Changes Have Contractual Implications
and Must Be Handled Many Changes Have Contractual Implications and
Must Be Handled
AccordinglyAccordingly
…..This May Be Your Most Important Job As a Project Manager!…..This
May Be Your Most Important Job As a Project Manager!
1818Best PracticesBest PracticesBusiness GeoInfo Summit
2008Business GeoInfo Summit 2008
Strategy and Planning Activities:Strategy and Planning Activities:
Summary of Best PracticesSummary of Best Practices
•• Identify Project Stakeholders and Understand their Identify
Project Stakeholders and Understand their Criteria for
SuccessCriteria for Success
•• A Well Defined A Well Defined VisionVision Will Help Avoid Scope
Creep at All Stages of the Will Help Avoid Scope Creep at All
Stages of the ImplementationImplementation
•• Quality PlanningQuality Planning Needs to Start at theNeeds to
Start at the BeginningBeginning of the Projectof the Project
LifecycleLifecycleQuality PlanningQuality Planning Needs to Start
at the Needs to Start at the BeginningBeginning of the Project of
the Project LifecycleLifecycle
•• Don’t create a plan that is so Don’t create a plan that is so
ComplexComplex that it will provide no value to that it will
provide no value to anyone anyone –– planning and management should
be in direct planning and management should be in direct
ProportionProportion to to th d l f th j tth d l f th j tthe scope
and scale of the project.the scope and scale of the project.
•• The Project Manger’s Primary Job is to The Project Manger’s
Primary Job is to Effectively Manage ChangeEffectively Manage
Change
G d C i tG d C i t th t th M i S f llth t th M i S f ll•• Good
CommunicatorsGood Communicators ensure that the Message is
Successfully ensure that the Message is Successfully Transmitted
AND ReceivedTransmitted AND Received
1919Best PracticesBest PracticesBusiness GeoInfo Summit
2008Business GeoInfo Summit 2008
Analysis & Design PhaseAnalysis & Design Phase
Strategy & Strategy & PlanningPlanning
Analysis & Analysis & DesignDesign
••Database Database DevelopmentDevelopment
••Deployment Deployment PlanningPlanning
••Business Case Business Case DevelopmentDevelopment
••Implementation Implementation
••Software Software MaintenanceMaintenance
••Application Application DesignDesign
Assurance Assurance TestingTesting
••Configuration Configuration ManagementManagement
•• Processes and ServicesProcesses and Services –– AsAs--Is
business processes documentedIs business processes documented ––
New services definedNew services defined
•• Requirements Requirements –– Includes Functional and NonIncludes
Functional and Non--FunctionalFunctional
•• Use CasesUse Cases•• Use Cases Use Cases –– ActorsActors ––
WorkflowsWorkflows –– ToTo--Be Business Processes documented in
detailBe Business Processes documented in detail
•• External Systems and Services With Which GIS External Systems
and Services With Which GIS Integrates/Interfaces Have Been
IdentifiedIntegrates/Interfaces Have Been Identified –– ERP, CRM,
ERP, CRM, etc.etc.
•• Glossary EstablishedGlossary Established•• Glossary
EstablishedGlossary Established
2222Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Business Process AnalysisBusiness Process Analysis
•• Document the AsDocument the As--Is business processes, if
applicableIs business processes, if applicable –– User
interviewsUser interviews
Application walkthroughsApplication walkthroughs–– Application
walkthroughsApplication walkthroughs –– Review user documentation
from existing systemsReview user documentation from existing
systems
•• Identify pain points in the current workflowsIdentify pain
points in the current workflows Id tif t iti f i tId tif t iti f i
t•• Identify opportunities for process improvementIdentify
opportunities for process improvement
Customer fills out request for a
survey
evaluates the request
Surveyor pulls out the official records and determines the scope of
job --------------- SM1.01 GC1.01
yes
customer and how to solve without
survey
yes
Reviewer creates job folder and assigns jobs ---------- texteditor
Word Processor ---------- .ASR .REC ---------- SM1.01 (SM3.02) no
NILS GC1.01 GC3.01
Surveyor does field preparation and starts a project ---------
INREC.exe -------- .LSA .SD .REC -------- SM1.02 SM2.01 SM3.01
(SM3.02) no NILS SM4.02 MM3.05-MM3.06 GC1.01
Changing conditions on the ground might request for a Survey but
only if Public Land is involved.
Copies of plats, assignment instructions, special instructions,
horizontal control stations, topographic maps
Digital data formats
Is research required?
Images of official records Horizontal control - Geodetic control
points/reference stations GPS coordinates - Clearing house GCDB
Local Parcel coverages Georeferenced topographic maps
Official Plats and Notes Group file (initially a job folder) -
Field tablets - internal use - Deck Pads - Copies of other types of
plats Analysis of Survey work Topographic maps
Physical records
PCCS to GMM conversion -------- NODUP.exe -------- .RA2, .DEF,
.CON, .LSA, .SD, .RAW, .SID, .PGC, .COR, .ADD, .LXN, .DUP
Official Plats and
------------
Used control points (.CON) RAW line data (.RAW) Units/Projection
(.DEF)
List of sources (.SID) - optional
Lines/points/pen (.LX) Label attributes (.AN)
PCCS data -----------
RAW line data (R-file) Units/Projection (Q-file)
Geographic coordinates (PGC) Plane coordinates (X-files)
Lines/points/pen (LX-files) Label attributes (LQ-file)
Data conversion ----------------- DCSS (UNIX)
stations
folder
Group file (initially a job folder) - Field tablets - internal use
- Copies of other types of plats - Analysis of Survey work
Topographi c maps
Digitizing found corner symbols
Create CON file by: text editor or SQL query or INRAW.exe, below
-------------- -------------- .CON
Field Surveying Index
-------------------- Informix (Denver) Oracle(Arizona)
Create SID file by: text editor or SQL query or INRAW.exe, below
-------- -------- .SID
GCDB outGCDB in If .DEF exists there is no State Plane zone value,
yet
P a rc e l M a n a g e m e n t - A c q u is it io n A c q u is it
io n : C o n v e y a n c e in a n in te re s t i l d h U S f F d
l
Flow DiagramsFlow Diagrams
Swimlane DiagramsSwimlane Diagrams Surveyor goes to the field
--------- SM2.01 SM3.02 GC3.01
Surveyor finds the necessary monuments --------- SM4.02
MM1.11
Surveyor collects evidence through measurements and by observing
conditions ------ SM4.01 MM3.02
Surveyor documents the
information to solve the problem
Surveyor calculates the coordinates and layout measurements
-------- CSTUF.exe CMOVE.exe CURVE.exe CONVERT.exe (ADJUST.exe)
(ADJUSTSTUFF.exe) or CAPD --------- SM3.01 SM4.02 MM1.01-MM1.04
MM1.06-MM1.07 MM1.11-1.13
YES
documents
yes
Surveyor submits field notes to the office ----------------
GC3.01
A survey plat is created from field notes information -----------
CAPD (AutoLISP) ----------- #37 in General Requirements (DFF)
Notes and Plats are submitted for review ----------------
GC3.01
Reviewer reviews and edits the plat
and notes
Cadastral Survey Chief reviews the plats and notes
Are field corrections necessary?
NO
Surveyor performs LSA ------------ LS386.exe ------------ .LSA .ADJ
.PGC .GEO .COR ----------- MM2.07 MM2.08.1-MM2.08.2 MM2.08.4
Surveyor does blunder detection ------ CHECKER.exe COMPAR.exe
LOOPER.exe SECTSHOW.exe WHATIS.exe SORTLSA.exe CSTUF.exe RAW.exe
BLUNDER.exe or CAPD ------ .CHK .DIF .WHA .RAW .BLU ----------
MM2.02-MM2.03 MM2.08.4-2.08.7 MM3.03-MM3.06
Calculate and examine snoop values in .ADJ file
Surveyor exports to data collector formats -------------
CMM2SMI.exe CMM2TDS.exe CMMCG.exe ------------- SM3.03
Import collected measurements to CMM --------- CGCMM.exe TDS.exe
TRIMBLEOFFICE SOKKIA HP48 ---------- ASCII .OBS .CG .TDS
----------- SM3.01 (SM3.02) no NILS MM3.03
Merge with other CMM data --------- COMBIN.exe ---------- .LSA .SD
.COR ---------- MM2.01
Surveyor creates sketch ----------- DXF.exe or WinGMM -----------
.DXF ----------- G3.4 G3.5
Prepare data for LSA single adjustment or robusting ---------
LOOPER.exe GENER.exe PROJEC.exe --------- .DEF .GEN .LSA .SD .COR
--------- MM2.01 MM2.06
Plats get photographed
Plats and Notes are submitted for official filing at
In storage at the Eastern State BLM
Office
Deck Pads Copies of other types of plats
Cadastral Electronic Field Book ----------- WinCMM
Field tablets Deck pads
is updated
Official Plats and Notes Group file (initially a job folder) -
Field tablets - internal use - Deck Pads - Copies of other types of
plats Analysis of Survey work Topographic maps
Photocopy full scale of plat
Physical records
Surveyor sets up a GCDB - project in GMM -------------- PROJEC.exe
--------------- .DEF
Surveyor imports any digital data into GMM --------------- INRAW
.exe WinGMM (APD) ------------------- .CON .RAW .SID
--------------- MM3.01-3.02
Input and editing point, line and source data -------------------
INRAW.exe texteditor ------------------- .CON .RAW .SID
----------------- MM2.04-MM2.05 MM3.03-3.06
LSA of township ------------------- LSGMM.exe -------------------
Updates coords. in .LSA file .ADJ (report file) Creates coordinate
files: .PGC .COR .GEO ----------------- MM2.07 MM2.08.1-MM2.08.2
MM2.08.4
Prepare data for LSA of township Single/robusting
------------------- INRAW.exe optional: GEN.exe PROJEC.exe
------------------- .LSA .SD .GEN (report file) -----------------
MM2.08.4-05 MM2.08.1 MM2.04-06
User performs blunder detection and data analysis
--------------------- RAW.exe COMPAR.exe CK.exe GEN.exe SNOOPER.exe
----------------- RAW.LSA .CHK .GEN .REP .JNK .SID
------------------ MM2.02-2.03 MM2.08.7 MM2.08.2-2.08.3
MM3.03-3.06
no
User performs Section subdivision and polygon creation
---------------- APROP.exe ---------------- see next page
--------------- MM1.01-MM1.07 MM1.11-MM1.12
User performs G-linking ----------------- GETLLD.exe RPOLY.exe
LLD.exe WinGMM GUI AutoCAD ---------------- .LOT .RPO .IID .AN
----------------- MM4.01-4.03
User gets .LLD file ------------------- BRIO query
User defines project name and project parameters ------------
PROJEC.exe ------------- .DEF -------------- MM2.08.6
User defines a list of townships to be adjusted in regional
adjustment and any data to adjust to ------------ Text editor or
WinGMM GUI ------------- .HOW -------------- MM2.01
Adjust data - Robusting - SIngle adjustment ------------ LSGMM.exe
------------ .LSA .ADJ .PGC .GEO .COR --------------- MM2.07-2.08.2
MM2.08.4-2.08.6
Reliabilities calculated ------------ FORMREL.exe ------------ .REL
.PGC ------------ MM2.08.1
Separated adjusted regional data into constituent datasetsd
------------ FORMCOR.exe ------------ .LSA .PGC .ADJ .GEO
.COR
Calculate and examine snoop values ------------ REGSNOOP.exe
texteditor ------------ MM2.08.3
Examines report files ------------ .ADJ .REL (optional)
------------ MM2.08.2-08.3
Are blunders removed from
data?
Looking for large snoop numbers in control points, bearings and
distances to define problem areas.
no yes
Update constructed coordinate values in the township data set
------------ APROP..exe ------------ - subdivides sections with
normal rules - subdivides sections with non-normal rules (IRR) -
Adds lines (ADD) - COGO computations (ADD) - Makes lines invisible
(NOT) - Performs intersections "autoI" - creates points "950xxx
points" - assigns points IDs to new points - break parent lines
into child lines
User performs G-linking ----------------- WinGMM GUI AutoCAD
----------------- MM4.01-4.03
no
Update links between area points and label attributes
---------------- VERIID.exe ---------------- .IID .AN .GLD
VER
Is the linking Okay?
no
Is data good?
Give job name, set units/ projection, projection parameters and
object behavior
Diagram Coordinates ----------
defined (coordinate value
yes
User converts MAT data to spatial format to check edge match
------------ QCMAT.exe WinGMM GUI optional: DXF.exe optional:
ACAD.exe FORMLSA.exe ------------ QC.LSA QC.COR Optional: QC.DXF
------------- N/A in geodatabase
Is automatic analysis of estimates needed?
no
yes
Merge townships into one dataset ------------ FORMLSA.exe
------------ .LSA .SD .MAT ------------- MM2.01
A djudicator
P roponent
P r o p o s a l A u th o r it y L e g a l d e s c r ip t io n P u b
lic In te re s t B e n e f it (P M 2 -1 )
in la n d to th e U S f ro m a n o n F e d e ra l p a r ty
R e v ie w a n d P r o c e s s P r o p o s a l
(P M 0 -2 )
S
S
P ro p o s a l m a y b e in i t ia te d b y p r iv a te in d iv id
u a ls o r fe d e ra l a g e n c y
L a n d D e s c r ip tio n
2323
get scanned official filing at Land Records -------------------
GC3.01
Plats gets index number
Notes gets book number
Official notice of signed Survey Plat is send to interest
organizations
is send to requester
Generate GMM files from CMM files ------------ CMM2GMM.exe
------------ .CHN .RAW ------------ MM3.07
Field survey index
the State Office ftp site
Reading file
CMM data
Group file (initially a job folder) - Field tablets - internal use
- Copies of other types of plats - Analysis of Survey work
- Outputs line data (LXN) - Outputs coordinate data (PGC, GEO ,
COR) - Outputs polygon data (INT) - Outputs report file (SUB)
------------- MM1.01-1.07 MM1.11-1.12
.VER ------------ MM4.01-4.03
<= 8 chars
yes yes
Batch ftp
firewall firewall
State office public ftp site --------------- GMM flat files GCDB
covera. Scanned images
State office public ftp site --------------- GMM flat files GCDB
covera. Scanned images
GCDB Township folder ------------------------------
QC checklist/ QA checklist Acceptance/Rejection forms Printing of
data and analysis Copies of records used with computations skteched
into
margins Sketches and plots
C artographer
N o t in g to M A P S /D A T A (P M 0 -1 2 )
A s s u m p t io n : th is f lo w d e s c r ib e s s e r ia l iz e
d a p p lic a t io n s
Surveyor Q
C S
upervisor
S u r v e y ( if th e re is n o s u rv e y c o n t ro l in p ro p o
s a l)
(M M )
Q C (G )
L a n d D e s c r ip tio n V e r if ic a t io n
(u s u a lly fo r fo re s t s e rv ic e a c q u is i t io n s
a n d d is p o s a ls )
In th e c a s e o f a re c o n v e y a n c e th e re w i ll b e a n
a u to m a t ic re -o p e n in g n o ta t io n ; in s o m e a c q u
is i t io n s th e re m a y b e a re -o p e n in g n o ta t io
n
C r e a te M a p O u tp u t
(G )
F lo w o f ta s k sS ta r t in g p o in t P M U s e C a s e O th e
r U s e C a s e
InterviewsInterviews Business GeoInfo Summit 2008Business GeoInfo
Summit 2008
Requirements AnalysisRequirements Analysis
•• Requirements Should Requirements Should ––Describe WHAT not
HOWDescribe WHAT not HOW––Describe WHAT not HOWDescribe WHAT not
HOW ––Only Contain One RequirementOnly Contain One Requirement ––Be
Unambiguous, Measurable, And Achievable Be Unambiguous, Measurable,
And Achievable ––Be “Testable”Be “Testable” ––Map Back to the
SOWMap Back to the SOW
•• Requirements Form the Basis ForRequirements Form the Basis For
Software Design and Application DevelopmentSoftware Design and
Application Development––Software Design and Application
Development Software Design and Application Development
ActivitiesActivities
––Testing and Acceptance ActivitiesTesting and Acceptance
Activities
2424Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Requirements Analysis:Requirements Analysis: NonNon--Functional
RequirementsFunctional Requirements
2525Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Requirements Analysis: Requirements Analysis: Lessons
LearnedLessons Learned
Define and Maintain a Define and Maintain a Do Not Assume
AnythingDo Not Assume Anything;; Common VocabularyCommon
Vocabulary
Do Not Assume AnythingDo Not Assume Anything; ; Express All
Requirements Express All Requirements In Explicit TermsIn Explicit
Terms
Define Requirements in Define Requirements in Terms of the Business
Terms of the Business Need, NOT the TechnicalNeed, NOT the
Technical Manage User ExpectationsManage User Expectations;;Need,
NOT the Technical Need, NOT the Technical SolutionSolution
Manage User ExpectationsManage User Expectations; ; Communicate the
Communicate the Constraints of the ProjectConstraints of the
Project
Find out best way to Find out best way to communicate within all
communicate within all team membersteam members
2626
Use Case Analysis:Use Case Analysis: OverviewOverview
•• Following From The Functional Following From The Functional
Requirements…Requirements…qq
•• Use Cases Seek To:Use Cases Seek To: –– Clearly Document the
ToClearly Document the To--Be Business Be Business
ProcessesProcesses •• I E Workflows And AssociatedI E Workflows And
Associated•• I.E. Workflows And Associated I.E. Workflows And
Associated
Business RulesBusiness Rules –– Clearly Identify the “Actors” Using
the Clearly Identify the “Actors” Using the
SystemSystem •• Can Be Mapped Directly ToCan Be Mapped Directly
To•• Can Be Mapped Directly To Can Be Mapped Directly To
“Groups” Or “Roles” In an LDAP “Groups” Or “Roles” In an LDAP Or
Active DirectoryOr Active Directory
–– Clearly Clearly Document the User Interaction Document the User
Interaction With the (New) SystemWith the (New) SystemWith the
(New) SystemWith the (New) System
•• Involves Technique Of “Scenarios”Involves Technique Of
“Scenarios” –– As As Mentioned, Functional Mentioned,
Functional
Requirements Should Be Mapped Requirements Should Be Mapped Onto
Use Cases For TraceabilityOnto Use Cases For Traceability
2727
Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Use Case Analysis: Use Case Analysis:
DocumentationDocumentation
•• Use Case Overview/InteractionUse Case Overview/Interaction ––
Show System Overview and InteractionShow System Overview and
Interaction –– Updated On An Ongoing Basis During DesignUpdated On
An Ongoing Basis During Design
•• Use Case ScenariosUse Case ScenariosUse Case ScenariosUse Case
Scenarios –– Language Appropriate For a User GuideLanguage
Appropriate For a User Guide –– User And System Interaction To
Complete Specific Tasks User And System Interaction To Complete
Specific Tasks –– Include Primary and Alternate ScenariosInclude
Primary and Alternate Scenariosyy –– CrossCross--reference
Functional Requirements reference Functional Requirements ––
Updated on an Ongoing Basis During DesignUpdated on an Ongoing
Basis During Design
2828Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Business Process, Requirements, & Use Case Analyses: Business
Process, Requirements, & Use Case Analyses: Best PracticesBest
Practices
•• End Users May Need to Be Trained in GIS Capabilities at the
Beginning End Users May Need to Be Trained in GIS Capabilities at
the Beginning of the Analysis Phaseof the Analysis Phase
•• Requirements Should Describe Requirements Should Describe What
What the System Needs to Do, the System Needs to Do, Not HowNot How
to Do Itto Do It
•• Use Cases/To Be Business Processes Should Be Developed Based on
Use Cases/To Be Business Processes Should Be Developed Based on
Available COTS Technology, Where PossibleAvailable COTS Technology,
Where Possible
•• User Expectations Need To Be Carefully Managed During the
Analysis User Expectations Need To Be Carefully Managed During the
Analysis PhasePhase
2929Best PracticesBest PracticesBusiness GeoInfo Summit
2008Business GeoInfo Summit 2008
Database Considerations:Database Considerations: Process
OverviewProcess Overview
3030Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Database Considerations:Database Considerations: Information
ProductsInformation Products ToolsTools
MapsMaps
Web ServicesWeb Services
Evacuation Route Pl i X X X
AnalysesAnalyses
Emergency Vehicle Routing X
Database Considerations:Database Considerations: Database
DesignDatabase Design
•• Database Design Is a Part of the Overall Database Design Is a
Part of the Overall Data Management StrategyData Management
Strategy –– Requires Analysis of Requirements for Data Access, Data
Distribution, Requires Analysis of Requirements for Data Access,
Data Distribution,
Security, and ReplicationSecurity, and Replication –– Data
Management Strategy is Addressed Through the System Architecture
Data Management Strategy is Addressed Through the System
Architecture
Design ProcessDesign Process –– Enterprise GIS Project Should
Include a System Architecture Design Enterprise GIS Project Should
Include a System Architecture Design
Workshop and Development of a System Architecture Design Strategic
PlanWorkshop and Development of a System Architecture Design
Strategic Plan –– Multiple Databases May Be AppropriateMultiple
Databases May Be Appropriate
•• Distributed Organization With Regional Business UnitsDistributed
Organization With Regional Business Units •• Security
FactorsSecurity Factors •• Controlled RedundancyControlled
Redundancy
Oth ROth R•• Other ReasonsOther Reasons
3232Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Database Considerations:Database Considerations: Database Design
ProcessDatabase Design Process
3333
B t P tiB t P ti
•• Consider Use of ESRI Data Model TemplatesConsider Use of ESRI
Data Model Templates
http://support.esri.com/index.cfm?fa=downloads.dataModels.gatewayhttp://support.esri.com/index.cfm?fa=downloads.dataModels.gateway
Best PracticesBest Practices
Prevent ProgressPrevent ProgressPrevent ProgressPrevent Progress ••
Case Tools (UML) Are Helpful, but Not EssentialCase Tools (UML) Are
Helpful, but Not Essential •• Only Model Data and Metadata that Can
Realistically Be MaintainedOnly Model Data and Metadata that Can
Realistically Be Maintained
–– Tendency to be Inclusive Often Results in More Attributes Being
Modeled thanTendency to be Inclusive Often Results in More
Attributes Being Modeled thanTendency to be Inclusive Often Results
in More Attributes Being Modeled than Tendency to be Inclusive
Often Results in More Attributes Being Modeled than Can Be
Maintained EffectivelyCan Be Maintained Effectively
•• Avoid OverAvoid Over--Complication Complication –– Simpler Is
Usually BetterSimpler Is Usually Better
3434Lessons LearnedLessons LearnedBusiness GeoInfo Summit
2008Business GeoInfo Summit 2008
Database Considerations:Database Considerations: Data Migration and
ConversionData Migration and Conversion
•• Pilot Project is Always Valuable, Usually EssentialPilot Project
is Always Valuable, Usually Essential •• Expect to Make Refinements
to Database Design and Migration Process Expect to Make Refinements
to Database Design and Migration Process
Based On PilotBased On Pilot
Best PracticesBest Practices
Based On PilotBased On Pilot •• Document Procedures for
Repeatability and RecordDocument Procedures for Repeatability and
Record •• Select Appropriate Migration Tools, Possibly More Than
OneSelect Appropriate Migration Tools, Possibly More Than One
•• Careful Planning of Cutover to New System is CrucialCareful
Planning of Cutover to New System is Crucial •• Ensure That the
Data Maintenance Environment is Ready Prior to Ensure That the Data
Maintenance Environment is Ready Prior to
Completion of Data Migration or ConversionCompletion of Data
Migration or Conversion •• Users Must Be Trained in the Use of the
New Database and the Users Must Be Trained in the Use of the New
Database and the
Maintenance Tools Prior to Going LiveMaintenance Tools Prior to
Going Live
3535Lessons LearnedLessons LearnedBusiness GeoInfo Summit
2008Business GeoInfo Summit 2008
Database Considerations:Database Considerations: Quality
AssuranceQuality Assurance
•• Quality Assurance Plan Should Be Developed in Advance of the
Migration Quality Assurance Plan Should Be Developed in Advance of
the Migration or Conversion and Should Address:or Conversion and
Should Address:
Best PracticesBest Practices
–– Quality Assurance WorkflowQuality Assurance Workflow –– Types of
Validation to be Applied to Each Type of Data:Types of Validation
to be Applied to Each Type of Data: –– Specific Checks to Be
PerformedSpecific Checks to Be Performed –– Allowable Error
Tolerances, if AnyAllowable Error Tolerances, if Any –– Quality
Assurance RecordsQuality Assurance Records
•• Data Migration Is Not Always As Straightforward As It Might
SeemData Migration Is Not Always As Straightforward As It Might
Seem –– Don’t Assume Migration Process is Foolproof Don’t Assume
Migration Process is Foolproof –– Some Level of QA is EssentialSome
Level of QA is Essential
3636Lessons LearnedLessons LearnedBusiness GeoInfo Summit
2008Business GeoInfo Summit 2008
What is System Architecture Design? What is System Architecture
Design?
System Architecture Design System Architecture Design Evaluates the
FollowingEvaluates the Following
ApplicationApplication Resources Resources
Evaluates the Following Evaluates the Following Inputs:Inputs: ––
User RequirementsUser Requirements
D t R i tD t R i t–– Data RequirementsData Requirements ––
Application Resource Application Resource
RequirementsRequirements –– Available Hardware Available
Hardware
TechnologyTechnology To Provide Hardware To Provide Hardware
Hardware Hardware SpecificationsSpecificationsData Data
NeedsNeeds
3737
Business GeoInfo Summit 2008Business GeoInfo Summit 2008
System Architecture Design Activities:System Architecture Design
Activities: Process OverviewProcess Overview
3838Business GeoInfo Summit 2008Business GeoInfo Summit 2008
GIS Can Be Implemented in Many Ways:GIS Can Be Implemented in Many
Ways: GIS Architecture AlternativesGIS Architecture
Alternatives
Business to BusinessBusiness to Business
D t tD t t
OrganizationOrganization
WorkgroupWorkgroup
DepartmentDepartment
3939
System Architecture:System Architecture: Recommended Environments
Recommended Environments
Development ActivitiesDevelopment Activities Deployment &
Operational Deployment & Operational ActivitiesActivities
Development Development EnvironmentEnvironment Staging
Staging
EnvironmentEnvironment
4040
Test Test EnvironmentEnvironment
Production Production EnvironmentEnvironment
Depending on the Size of the Project, You May Need Multiple
EnvironmentsDepending on the Size of the Project, You May Need
Multiple Environments
Testing AnalystsTesting Analysts End UsersEnd Users
Business GeoInfo Summit 2008Business GeoInfo Summit 2008
System Architecture Design: System Architecture Design: Summary of
Best PracticesSummary of Best Practices
•• Start With Well Defined User RequirementsStart With Well Defined
User Requirements •• Choose System Architecture Deployable In 6
MonthsChoose System Architecture Deployable In 6 MonthsChoose
System Architecture Deployable In 6 MonthsChoose System
Architecture Deployable In 6 Months •• Use a Phased ApproachUse a
Phased Approach •• Leverage Existing Infrastructure If It Meets
RequirementsLeverage Existing Infrastructure If It Meets
Requirements •• Purchase Hardware When You Need It (To Support 3+
Years)Purchase Hardware When You Need It (To Support 3+ Years)( pp
)( pp ) •• Utilize Existing IT Established PracticesUtilize
Existing IT Established Practices •• Use Industry Standards Use
Industry Standards –– OGC, Security, DatabaseOGC, Security,
Database •• Plan for Business Continuance (Protect Your
Investment)Plan for Business Continuance (Protect Your Investment)
•• Plan for Technology ChangesPlan for Technology Changes ••
Establish Clear Roles and Responsibilities For Establish Clear
Roles and Responsibilities For Operations Support StaffOperations
Support Staff
4141Best PracticesBest PracticesBusiness GeoInfo Summit
2008Business GeoInfo Summit 2008
Security Planning:Security Planning: Security MechanismsSecurity
Mechanisms
Security LayersSecurity Layers Security MechanismsSecurity
Mechanisms
DataData ControlsControls
D t Fil E tiD t Fil E ti
Network ControlsNetwork Controls
FirewallsFirewalls NIDSNIDS SSLSSL
Host/DeviceHost/Device ControlsControls
Hardening GuidesHardening Guides HIDSHIDS
HTML Content FiltersHTML Content Filters Validation
ChecksValidation Checks
HIDSHIDS
4242Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Security Planning:Security Planning: Best PracticesBest
Practices
Leverage Your Existing IT Security ArchitectureLeverage Your
Existing IT Security Architecture
Design A Flexible, Scalable Security Solution that allows for
Frequent Design A Flexible, Scalable Security Solution that allows
for Frequent UpdatesUpdates
If You Derive Your Security From Your Business Requirements Your
Risk Level will be appropriate:
ESRI Whitepaper: ESRI Whitepaper: ArcGIS Enterprise Security:
Delivering Secure SolutionsArcGIS Enterprise Security: Delivering
Secure Solutions
htt // i /lib / hit / df / ihtt // i /lib / hit / df / i it dfit
dfhttp://www.esri.com/library/whitepapers/pdfs/arcgishttp://www.esri.com/library/whitepapers/pdfs/arcgis--security.pdfsecurity.pdf
http://www esri com/library/whitepapers/pdfs/sysdesig pdf
4343Best PracticesBest PracticesBusiness GeoInfo Summit
2008Business GeoInfo Summit 2008
http://www.esri.com/library/whitepapers/pdfs/sysdesig.pdf
Application Design:Application Design: Lessons LearnedLessons
Learned
Reduce Reduce ‘Moving Requirements’ ‘Moving Requirements’ –– Avoid
A Process Which Lets You Change Anything On the Basis that "Change
Is Avoid A Process Which Lets You Change Anything On the Basis that
"Change Is
Lessons LearnedLessons Learned
Free" Free" Promote Communication Between Design Team And
CustomerPromote Communication Between Design Team And Customer ––
Involve Design Team Early (Even During Requirements Phase)Involve
Design Team Early (Even During Requirements Phase)
Don’t let a cool technology dominateDon’t let a cool technology
dominate
4444Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Application Design:Application Design: Best PracticesBest
Practices
•• Use Or Build An Enterprise Application Framework Use Or Build An
Enterprise Application Framework •• System Architecture:System
Architecture:
U SOA F L S t E l ti d I tU SOA F L S t E l ti d I t d t t ld t t
l–– Use SOA For Legacy System Encapsulation and InterUse SOA For
Legacy System Encapsulation and Inter--departmental departmental
ServicesServices
–– Use NUse N--tier Or Client/Server for Transactional Processing
and Authoringtier Or Client/Server for Transactional Processing and
Authoring •• Web ServicesWeb Services
–– Start Out With Secure Web Services Start Out With Secure Web
Services –– WSWS--securitysecurity –– Encapsulate Legacy Systems
And External SystemsEncapsulate Legacy Systems And External
Systems
•• GIS / ArcSDE SecurityGIS / ArcSDE Security Use ‘Direct
Connect’Use ‘Direct Connect’–– Use ‘Direct Connect’Use ‘Direct
Connect’
–– Use ‘RoleUse ‘Role--based’ Security Configurationbased’ Security
Configuration •• Use A Structured MethodologyUse A Structured
Methodology •• Avoid Analysis ParalysisAvoid Analysis
ParalysisAvoid Analysis ParalysisAvoid Analysis Paralysis
–– Endless Debate About Whether to Use Includes or Extends In Your
UMLEndless Debate About Whether to Use Includes or Extends In Your
UML •• Hold Regular Design Reviews With the UsersHold Regular
Design Reviews With the Users •• Design Must Trace Back To
RequirementsDesign Must Trace Back To Requirements
4545Best PracticesBest PracticesBusiness GeoInfo Summit
2008Business GeoInfo Summit 2008
Enterprise Application Development ActivitiesEnterprise Application
Development Activities
Strategy & Strategy & PlanningPlanning
Analysis & Analysis & DesignDesign
••Database Database DevelopmentDevelopment
••Deployment Deployment PlanningPlanning
••Business Case Business Case DevelopmentDevelopment
••Implementation Implementation
••Software Software MaintenanceMaintenance
••Application Application DesignDesign
Assurance Assurance TestingTesting
••Configuration Configuration ManagementManagement
Development Activities
4747Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Application Application Development:Development: What is Special
About Enterprise Development?What is Special About Enterprise
Development?
–– Enterprise Systems are Large and Enterprise Systems are Large
and Often ComplexOften ComplexOften ComplexOften Complex
•• Leads to Large Leads to Large Development TeamsDevelopment
Teams
Will Interact with Existing ProductionWill Interact with Existing
Production–– Will Interact with Existing Production Will Interact
with Existing Production SystemsSystems
•• Must be Rugged and Must be Rugged and
ReliableReliableReliableReliable
•• Must be SecureMust be Secure –– Will Be Maintained Over Multiple
Will Be Maintained Over Multiple
COTS ReleasesCOTS ReleasesCOTS ReleasesCOTS Releases
•• Must Stand the Test of Must Stand the Test of TimeTime
4848
Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Application Application Development:Development: Establishing the
Development Process Establishing the Development Process ––
Essentials (Essentials (Before CodingBefore Coding))
Focus Is On Core Processes First:Focus Is On Core Processes First:
•• Establish Fully Automated Builds andEstablish Fully Automated
Builds and
Code `
Establish Fully Automated Builds and Establish Fully Automated
Builds and InstallInstall •• Establish Source Code Control
Establish Source Code Control
E t bli h B T ki S tE t bli h B T ki S t
BuildTest
Install
http://www.joelonsoftware.com/articles/fog0000000043.htmhttp://www.joelonsoftware.com/articles/fog0000000043.htm
ll
•• (The Joel Test, 12 Steps to Better Code)(The Joel Test, 12 Steps
to Better Code)
4949Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Application Application Development:Development: Establishing the
Development Process Establishing the Development Process ––
Essentials (Before Coding)Essentials (Before Coding)
•• Configure the Development Environment:Configure the Development
Environment: –– I.D.E. and 3I.D.E. and 3rdrd Party ComponentsParty
ComponentsI.D.E. and 3I.D.E. and 3 Party Components Party
Components
•• Special Controls, Reporting and Charting Tools, etc Special
Controls, Reporting and Charting Tools, etc •• Can Be
Organizational Issue (i.e. a Standard Toolset already in place)Can
Be Organizational Issue (i.e. a Standard Toolset already in
place)
–– Target O.S., COTS SoftwareTarget O.S., COTS Software ••
Developing on Beta or Release?Developing on Beta or
Release?Developing on Beta or Release?Developing on Beta or
Release?
–– Web Server, Servlet Engine, RDBMS, RDBMS Client installsWeb
Server, Servlet Engine, RDBMS, RDBMS Client installs
•• Recommendation: Recommendation: Establish a Project Website
and/or WIKIEstablish a Project Website and/or WIKI–– Establish a
Project Website and/or WIKIEstablish a Project Website and/or
WIKI
–– Document Development SetDocument Development Set--up
Instructionsup Instructions –– Document Tricky Configuration
ProceduresDocument Tricky Configuration Procedures ––
Document/Explain Special Coding Tips/TechniquesDocument/Explain
Special Coding Tips/Techniques –– …..…..
5050
Enterprise Application Development:Enterprise Application
Development: Summary and Best PracticesSummary and Best
Practices
––Develop a Team Structure that Can Support and Develop a Team
Structure that Can Support and Sustain the Coding EffortSustain the
Coding EffortSustain the Coding EffortSustain the Coding Effort ••
Avoid Overloading Your DevelopersAvoid Overloading Your
Developers
––Invest in Automation Of ProcessesInvest in Automation Of
Processes •• Build, Install, Database Loading, Etc.Build, Install,
Database Loading, Etc.
––Establish a Project Website And/Or Wiki For Establish a Project
Website And/Or Wiki For Documentation Of:Documentation Of:
–– Configuration Info, Development SetConfiguration Info,
Development Set--up, Tips, Etc. up, Tips, Etc.
Minimize Interruptions to Your Development TeamMinimize
Interruptions to Your Development Team––Minimize Interruptions to
Your Development TeamMinimize Interruptions to Your Development
Team ––Use An Enterprise Application Framework for Use An
Enterprise Application Framework for
ImplementationImplementation
5151
ImplementationImplementation
Deployment ActivitiesDeployment Activities
Strategy & Strategy & PlanningPlanning
Analysis & Analysis & DesignDesign
••Database Database DevelopmentDevelopment
••Deployment Deployment PlanningPlanning
••Business Case Business Case DevelopmentDevelopment
••Implementation Implementation
••Software Software MaintenanceMaintenance
••Application Application DesignDesign
Assurance Assurance TestingTesting
••Configuration Configuration ManagementManagement
Deployment Activities:Deployment Activities: OverviewOverview
Develop Detailed Deployment Plan
Deploy User Support
I t ll SW d D t
Test Data &
Fix DefectsProcure Hardware Install SW and Data in Test
Environment
Install & Test Install Released SW Cond ct SiteTest Data &
Applications in Test
Environment
& Data to Production Env.
Conduct Site Acceptance Testing
Deployment Activities:Deployment Activities: Configuration
ManagementConfiguration Management
•• A Set of Procedures to Control Changes to the Project During All
Phases A Set of Procedures to Control Changes to the Project During
All Phases of the Software Lifecycleof the Software Lifecycle
•• Typical Activities Include :Typical Activities Include :Typical
Activities Include : Typical Activities Include : –– Identification
of Deliverables Subject to Configuration ManagementIdentification
of Deliverables Subject to Configuration Management –– Creation of
A Source Code Repository and Documentation LibraryCreation of A
Source Code Repository and Documentation Library –– Identification
of Change Request ProceduresIdentification of Change Request
Procedures –– Definition of Problem Report ProceduresDefinition of
Problem Report ProceduresDefinition of Problem Report
ProceduresDefinition of Problem Report Procedures –– Identification
of Variances Between Development and Deployment
EnvironmentsIdentification of Variances Between Development and
Deployment Environments –– Write It Down > Software
Configuration Management PlanWrite It Down > Software
Configuration Management Plan
Ch C t l i E i ll I t t if W ki ith M lti lCh C t l i E i ll I t t
if W ki ith M lti lChange Control is Especially Important if
Working with Multiple Change Control is Especially Important if
Working with Multiple Development Teams Development Teams –– Must
Have a Single “Gatekeeper” to Approve Must Have a Single
“Gatekeeper” to Approve CM Changes During Deployment CM Changes
During Deployment
5454Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Deployment Activities:Deployment Activities: Configuration
ManagementConfiguration Management
•• Software Upgrade Requests Should Be DocumentedSoftware Upgrade
Requests Should Be Documented •• Installation Packages Should Be
Developed Early In the Project LifecycleInstallation Packages
Should Be Developed Early In the Project Lifecycle
Lessons LearnedLessons Learned
•• Data Model Must Be the Same In Each EnvironmentData Model Must
Be the Same In Each Environment –– Restrict Data Model Access and
Track Changes For Each ReleaseRestrict Data Model Access and Track
Changes For Each Release
•• Consolidate Data Model Updates To Designated Team
Member(s)Consolidate Data Model Updates To Designated Team
Member(s) •• Review Data Model Plans/Changes To Ensure Consistency,
Performance And IntegrationReview Data Model Plans/Changes To
Ensure Consistency, Performance And Integration •• Track Requested
Data Model Updates To Verify Changes Were Implemented Correctly
Track Requested Data Model Updates To Verify Changes Were
Implemented Correctly •• Update Data Management Plan Documentation
For Each Update Data Management Plan Documentation For Each
Software Software ReleaseRelease
5555Best PracticesBest PracticesBusiness GeoInfo Summit
2008Business GeoInfo Summit 2008
Deployment Activities:Deployment Activities: Quality
AssuranceQuality Assurance
•• 2002 Study2002 Study11 by the National Institute of Standards
& Technology found:by the National Institute of Standards &
Technology found:
Software bugs, or Software bugs, or errors are soerrors are
soerrors, are so errors, are so prevalent and so prevalent and so
detrimental that they detrimental that they cost the U.S. economy
cost the U.S. economy
Source: IBM Systems Sciences Institute
an estimated an estimated $59.5 $59.5 billion annuallybillion
annually
Although all errors cannot be removed, Although all errors cannot
be removed, more than a third of these more than a third of these
costs, could be eliminated by an improved testing
infrastructurecosts, could be eliminated by an improved testing
infrastructure that that enables earlier and more effective
identification and removal of enables earlier and more effective
identification and removal of software defectssoftware
defects
5656
1 1 NIST Planning Report O2NIST Planning Report O2--3, The Economic
Impacts of Inadequate Infrastructure for Software Testing3, The
Economic Impacts of Inadequate Infrastructure for Software Testing
Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Deployment Activities: Deployment Activities: Deploy and Test
Incremental ReleasesDeploy and Test Incremental Releases
•• Start deployment and testing early on, reStart deployment and
testing early on, re--test after fixes or changes, test after fixes
or changes, plan for adequate testing and bug fixesplan for
adequate testing and bug fixes
•• Early testing ideally includes unit testing by developers and
builtEarly testing ideally includes unit testing by developers and
built--in in testing and diagnostic capabilitiestesting and
diagnostic capabilities
Deploy & Test: Deploy & Test: Functions 1Functions 1
--33
Deploy & Test: Deploy & Test: Functions 1Functions 1
--66BenefitsBenefits
TimeTasks Time Time Time Alpha
Functions 1 Functions 1 33 Functions 1 Functions 1 66
••Early deployment planning Early deployment planning and
implementation and implementation
••Early code integrationEarly code integration
BenefitsBenefits
Tasks
Tasks
••Functional prioritizationFunctional prioritization
Final ••Mitigates impact of schedule Mitigates impact of schedule
creepcreep
Best PracticesBest PracticesBusiness GeoInfo Summit 2008Business
GeoInfo Summit 2008
Deployment Activities: Deployment Activities: Summary of Best
PracticesSummary of Best Practices
•• Recognize that Deployment is Harder than It LooksRecognize that
Deployment is Harder than It Looks •• Use a Source Control
SystemUse a Source Control System •• Implement a Quality Assurance
Review ProgramImplement a Quality Assurance Review Program ••
Regularly Deploy and Test Incremental ReleasesRegularly Deploy and
Test Incremental Releases •• Create and Test Installation
PackagesCreate and Test Installation PackagesCreate and Test
Installation PackagesCreate and Test Installation Packages •• Well
Tested Software is Easier to DeployWell Tested Software is Easier
to Deploy •• Start Planning EarlyStart Planning Early
D l D l t Ch kli tD l D l t Ch kli t•• Develop a Deployment
ChecklistDevelop a Deployment Checklist •• Know Your End User
Audience and Target Training and Supporting Know Your End User
Audience and Target Training and Supporting
Documentation To Meet Their NeedsDocumentation To Meet Their
Needs
5858Best PracticesBest PracticesBusiness GeoInfo Summit
2008Business GeoInfo Summit 2008
Operations & MaintenanceOperations & Maintenance
Strategy & Strategy & PlanningPlanning
Analysis & Analysis & DesignDesign
••Database Database DevelopmentDevelopment
••Deployment Deployment PlanningPlanning
••Business Case Business Case DevelopmentDevelopment
••Implementation Implementation
••Performance Performance MonitoringMonitoring
••Systems Systems MaintenanceMaintenancep e e tat op e e tat
o
PlanningPlanning
••Quality Quality AssuranceAssurance
a te a cea te a ce
••Software Software MaintenanceMaintenance
••Application Application DesignDesign
Assurance Assurance TestingTesting
••Configuration Configuration ManagementManagement
5959
gg
The Project Lifecycle Does Not End With Deployment!The Project
Lifecycle Does Not End With Deployment! Business GeoInfo Summit
2008Business GeoInfo Summit 2008
Operations & Maintenance Activities:Operations &
Maintenance Activities: User Support ConsiderationsUser Support
Considerations
•• How Many People Are You Supporting?How Many People Are You
Supporting? •• What Are Their Geographic Parameters?What Are Their
Geographic Parameters?
-- Domestic or International?Domestic or International?-- Domestic
or International?Domestic or International? -- What Time Zones Are
They In?What Time Zones Are They In?
•• Will You Provide 24/7 Support?Will You Provide 24/7 Support? ••
How Do You Select Your Support Staff?How Do You Select Your Support
Staff?How Do You Select Your Support Staff?How Do You Select Your
Support Staff?
-- From Internal Personnel?From Internal Personnel? -- Use
Outsourced Professionals?Use Outsourced Professionals? -- A
Combination of The Two?A Combination of The Two?
•• What Applications Do You Support?What Applications Do You
Support? -- Commercial Off The Shelf?Commercial Off The
Shelf?Commercial Off The Shelf?Commercial Off The Shelf? -- Custom
Applications?Custom Applications? -- ThirdThird--party
Configurations?party Configurations?
6060
Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Operations & Maintenance Activities:Operations &
Maintenance Activities: User SupportUser Support
•• Tiered Support Model Tiered Support Model ––Tier 1: Help
DeskTier 1: Help DeskTier 1: Help DeskTier 1: Help Desk
•• Solves Issues InternallySolves Issues Internally •• Directs
Issues To Tier 2 Or Tier 3Directs Issues To Tier 2 Or Tier 3
––Tier 2: Domain/Technical KnowledgeTier 2: Domain/Technical
Knowledge I t l E tiI t l E ti•• Internal ExpertiseInternal
Expertise
•• External ExpertiseExternal Expertise •• Directs Issues To Tier
3Directs Issues To Tier 3
––Tier 3: Vendor SupportTier 3: Vendor Support •• Standard Level
SupportStandard Level Support •• Extended Level SupportExtended
Level Support
6161Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Operations & Maintenance Activities:Operations &
Maintenance Activities: Performance Monitoring &
TuningPerformance Monitoring & Tuning
•• Establish a Performance BaselineEstablish a Performance
Baseline
•• Define and Measure Performance Metrics Based on Business
Processes Define and Measure Performance Metrics Based on Business
Processes Not Button ClicksNot Button Clicks
•• Plan For System Tuning After Each InstallationPlan For System
Tuning After Each Installation
•• Develop Administrative Procedures to Automate System
TuningDevelop Administrative Procedures to Automate System Tuning••
Develop Administrative Procedures to Automate System Tuning Develop
Administrative Procedures to Automate System Tuning
6262Best PracticesBest PracticesBusiness GeoInfo Summit
2008Business GeoInfo Summit 2008
Operations & Maintenance:Operations & Maintenance: System
AdministrationSystem Administration
•• Regular Regular GeodatabaseGeodatabase Maintenance is
RequiredMaintenance is Required –– Monitor StatisticsMonitor
StatisticsMonitor StatisticsMonitor Statistics –– Manage Your
VersionsManage Your Versions
•• Reconcile and Post Edits as Frequently as PossibleReconcile and
Post Edits as Frequently as Possible •• Delete Unnecessary When
PossibleDelete Unnecessary When Possible •• Compress the Database
on a Regular ScheduleCompress the Database on a Regular
ScheduleCompress the Database on a Regular ScheduleCompress the
Database on a Regular Schedule
–– Use SQL Scripts to Perform Nightly Tuning of an ArcSDE Use SQL
Scripts to Perform Nightly Tuning of an ArcSDE
DatabaseDatabase
•• Rebuilds All Indexes Owned By Any User That Owns SDE Data
Rebuilds All Indexes Owned By Any User That Owns SDE Data •• Treat
Your GIS As You Would Any Other IT System InTreat Your GIS As You
Would Any Other IT System InTreat Your GIS As You Would Any Other
IT System In Treat Your GIS As You Would Any Other IT System
In
Terms Of Disaster Recovery and Business Continuity Terms Of
Disaster Recovery and Business Continuity PlanningPlanning
6363Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Operations & Maintenance:Operations & Maintenance: Software
MaintenanceSoftware Maintenance
•• Enhancement RequestsEnhancement Requests –– Need to Be
Prioritized and Need to Be Prioritized and
•• COTS SW UpgradesCOTS SW Upgrades –– Evaluate New Releases to
Evaluate New Releases to
Approved By the Change Approved By the Change Management
BoardManagement Board
–– Regression Test After New Regression Test After New Capabilities
Are AddedCapabilities Are Added
Determine If There Is a Business Determine If There Is a Business
Need to UpgradeNeed to Upgrade
–– Consider the Impact of Upgrading Consider the Impact of
Upgrading Your Geodatabase BeforeYour Geodatabase
BeforeCapabilities Are AddedCapabilities Are Added
–– Plan For Beta Releases and HandsPlan For Beta Releases and
Hands-- on User Review on User Review –– Before Going LiveBefore
Going Live
–– Allow Time to Implement Required Allow Time to Implement
Required
Your Geodatabase Before Your Geodatabase Before
UpgradingUpgrading
–– Evaluate Compatibility Of Upgrades Evaluate Compatibility Of
Upgrades To 3To 3rdrd Party SW Before Party SW Before p qp q
Changes After Beta ReviewsChanges After Beta Reviews –– Train the
Users to Use New Train the Users to Use New
CapabilitiesCapabilities
Implementing i.e. Do Not Upgrade Implementing i.e. Do Not Upgrade
Your RDBMS Without Evaluating Your RDBMS Without Evaluating the
Impact On ArcSDEthe Impact On ArcSDE Regression Test New
ReleasesRegression Test New Releases–– Provide Refresher Training
in Key Provide Refresher Training in Key
Problem AreasProblem Areas –– Allow Enough Time Between Allow
Enough Time Between
ReleasesReleases
–– Regression Test New Releases Regression Test New Releases Within
Your Test/Development Within Your Test/Development Environment
FirstEnvironment First
6464
ReleasesReleases ~6 Months For Major Releases~6 Months For Major
Releases
Best PracticesBest Practices Business GeoInfo Summit 2008Business
GeoInfo Summit 2008
SummarySummary
6565Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Summary of Best Practices for Planning and Managing a Summary of
Best Practices for Planning and Managing a GISGIS
•• Communication, communication, communicationCommunication,
communication, communication
S C f S CS C f S C•• Start With a Clearly Defined Vision and
Success CriteriaStart With a Clearly Defined Vision and Success
Criteria
•• Identify and Monitor RisksIdentify and Monitor Risks
•• Use a Phased Approach Use a Phased Approach
•• Involve the Users and Key Stakeholders Early and OftenInvolve
the Users and Key Stakeholders Early and OftenInvolve the Users and
Key Stakeholders Early and OftenInvolve the Users and Key
Stakeholders Early and Often
•• Manage Change Manage Change
•• Manage tasks in proportion to the overall project Manage tasks
in proportion to the overall project –– Not all projects need to
include every step discussed today Not all projects need to include
every step discussed today
Pil tPil t G d t bG d t b Mi tiMi ti
6666
Best PracticesBest PracticesBusiness GeoInfo Summit 2008Business
GeoInfo Summit 2008
Summary of Best Practices for Planning and Managing a Summary of
Best Practices for Planning and Managing a GISGIS
•• Use a Structured Development MethodologyUse a Structured
Development Methodology
•• Don’t get too focused on technology and cool stuff Don’t get too
focused on technology and cool stuff –– make it make it business
relevantbusiness relevant
•• Assign a Dedicated Configuration Management Team to Manage
Assign a Dedicated Configuration Management Team to Manage the
Development, Test, and Staging Environmentsthe Development, Test,
and Staging Environments
•• Hire or Train a Skilled Geodatabase AdministratorHire or Train a
Skilled Geodatabase Administrator
•• Plan for PostPlan for Post--Deployment User Support Deployment
User Support
6767
Additional ResourcesAdditional Resources
•• ESRI Systems Integration Web SiteESRI Systems Integration Web
Site ––
http://www.esri.com/systemsint/index.htmlhttp://www.esri.com/systemsint/index.html
ESRI Developer NetworkESRI Developer Network•• ESRI Developer
NetworkESRI Developer Network ––
http://edn.esri.comhttp://edn.esri.com
•• ESRI Professional ServicesESRI Professional Services ––
http://www.esri.com/consulting/index.htmlhttp://www.esri.com/consulting/index.html
•• Project Management InstituteProject Management Institute ––
http://www.pmi.orghttp://www.pmi.org
6868Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Additional ResourcesAdditional Resources
•• Doug Rosenberg (primary author)Doug Rosenberg (primary author)
–– Use Case Driven Object Modeling with UMLUse Case Driven Object
Modeling with UML –– Agile Development with Iconix ProcessAgile
Development with Iconix ProcessAgile Development with Iconix
ProcessAgile Development with Iconix Process
•• Grady BoochGrady Booch –– Managing an Object Oriented
projectManaging an Object Oriented project
6969Business GeoInfo Summit 2008Business GeoInfo Summit 2008
Questions?Questions?
Please Fill Out Your Evaluation FormsPlease Fill Out Your
Evaluation Forms
Thank You!Thank You!