We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Building Enterprise GIS with FOSS4G

00:00

Formal Metadata

Title
Building Enterprise GIS with FOSS4G
Title of Series
Number of Parts
156
Author
Contributors
License
CC Attribution 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Enterprise GIS is often understood to be only a marketing term for big companies and public institutions to purchase more software and services. Enterprise GIS can be built with FOSS4G (Free and Open Source Software for Geospatial). In this talk, I will cover basics of enterprise architecture and real world examples of how to use FOSS4G to build sustainable and affordable solutions for enterprises. Enterprise GIS is an organisation-wide collection of interoperable GIS softwares to manage and process geospatial information. Enterprise GIS will follow basic principles of enterprise architecture. Enterprise GIS architecture is based on three layers: User Interface, Application Server and Data Storage layers. In this talk, I will give best practices to define and design Enterprise GIS architecture. This presentation is targeted to ICT and GIS experts to better understand how to build Enterprise GIS with FOSS4G. After the presentation, you understand how to start the design and implementation of Enterprise GIS. You also have basic knowledge on how to use FOSS4G to build Enterprise GIS.
Keywords
127
Streaming mediaBuildingEnterprise architectureOpen sourceOpen setFreewareSoftwareTheory of everythingUser interfaceServer (computing)Data storage deviceMathematical analysisSelf-organizationArchitectureBlogScalar fieldBusiness modelOperations researchPressureMenu (computing)Process (computing)Electric currentSystem programmingEnterprise architectureSoftwareCartesian coordinate systemBuildingPhysical systemInformationProcess (computing)Software developerData storage deviceData modelField (computer science)Decision theoryServer (computing)PhysicalismLogicTerm (mathematics)Product (business)Service-oriented architectureMereologyGeometryInformation technology consultingSelf-organizationGoodness of fitSet (mathematics)Flow separationLevel (video gaming)Disk read-and-write headProjective planeMultiplication signData managementDevice driverUser interfaceComputer hardwareBitArchitectureTelecommunicationOffice suiteWeb 2.0Open setMathematicsDependent and independent variablesRight angleDatabaseSatelliteProxy serverSpacetimeMachine visionExistenceLecture/ConferenceComputer animation
Service-oriented architectureProcess (computing)Vulnerability (computing)Mathematical analysisServer (computing)ArchitectureEnterprise architectureOpen sourceFreewareStack (abstract data type)AreaBuildingSurfaceEmailSoftware maintenanceRectangleInstallation artGeometryMetreClique-widthPublic domainInformationLogicBusiness modelType theoryFinitary relationSurgeryRule of inferenceImplementationConstraint (mathematics)VoltmeterIntegerField (computer science)System programmingGoogolCurveFingerprintIntegrated development environmentTerm (mathematics)Physical systemElectric currentUser interfaceData storage deviceRaster graphicsComputer fileVector spaceTexture mappingSanitary sewerExpert systemDecision theorySoftwareDigital rights managementCodeGroup actionDigital signalCartesian coordinate systemTask (computing)Public domainExpert systemOpen sourcePresentation of a groupLogicInformationProcess (computing)PhysicalismSoftwareMultiplication signDisk read-and-write headSelf-organizationStack (abstract data type)Expected valueEnterprise architectureVideo gameCycle (graph theory)Level (video gaming)Field (computer science)Library (computing)Computer fileVector spaceMappingIntegrated development environmentVulnerability (computing)Mathematical analysisProof theoryDatabasePhysical systemCurveBusiness modelData modelData typeServer (computing)Cloud computingUser interfaceWeb 2.0Wave packetBitMereologyCodeForcing (mathematics)Service-oriented architectureElectronic mailing listMobile appProjective planeWindowWeb applicationProzesssimulationGroup actionDecision theorySelectivity (electronic)Different (Kate Ryan album)Attribute grammarAreaTable (information)CodeData storage deviceMultiplicationSoftware developerAnalytic setDivisorGenderPhysical lawData integrityVirtueller ServerImplementationWeb serviceData warehouseFlow separationRaster graphicsGeometrySoftware bugMobile WebOpen setDigitizingPoint cloudLatent heatComputer animation
Expert systemOpen sourceProcess (computing)SoftwareData managementMultiplicationAxiom of choiceInformation technology consultingPresentation of a groupInformationDecision theoryMathematicsDifferent (Kate Ryan album)Revision controlSelf-organizationPoint (geometry)View (database)QuicksortLevel (video gaming)Goodness of fitComponent-based software engineeringDivisorService-oriented architectureServer (computing)Vulnerability (computing)Multiplication signRight angleEnterprise architectureWave packetBuildingLecture/Conference
Information managementLimit (category theory)Server (computing)Internet service providerPresentation of a groupSoftwareSoftware developerGeometryCodeSet (mathematics)Transportation theory (mathematics)Open sourceINTEGRALChemical equationWordService-oriented architecturePhysical systemProcess (computing)InformationMultiplication signCore dumpExtension (kinesiology)Self-organizationProjective planeMaxima and minimaQuicksortLevel (video gaming)ArchitectureGoodness of fitLatent heatLecture/Conference
Least squaresGeometryComputer-assisted translationComputer animation
Transcript: English(auto-generated)
So my name is Pekka Sargal, I'm coming from GISPO, and I want to give you some kind of idea how to build an enterprise GIS with FOSS4G software. It's my experience and our experience from various customers in last 10 years or something, but we have been in business.
So the GISPO is company established in 2012, now we are 25 plus people, we consult, we develop, we train our users, our customers, and we support. We also like to be a good OSG or FOSS4G citizenship, so we also support and with money and resources the software development.
But how about the enterprise GIS? It's not only marketing term, you hear that quite often that people want to sell
you or you want to buy or somebody is consulting, but it's not only marketing term. I think it's very useful when you need to communicate your general ICT people, you have ICT department and usually they want to separate GIS people in separate room or house or somewhere because they don't understand what is the GIS.
But that enterprise GIS gives you more vision or how to do the GIS in enterprise level. And of course the head of organizations, they understand better than when you talk about the enterprise kind of systems.
When you need to be bigger than you are, it's good to have some kind of vocabulary to terms that understand it that how to do bigger systems. It's not a product or a service, it's a way to manage the GIS, share space or information in your organization.
So first thing I steal from the Wikipedia, what is the enterprise software and what is the enterprise architecture or enterprise system. So idea is that it satisfies the needs of the organization, not individual user.
So you have to think about the organization all the time, not the individual users. So my definition for enterprise GIS is that it's an organization wide of collection of the softwares to manage the geospatial information and process the geospatial information.
It's not one desktop and if one person is leaving, the process won't stop. It's focusing on the organization processes more than projects.
So processes are going for all the time, projects are like starting and ending and stopping and that's it. But the processes are always there whenever the organization exists. So basic architecture is very simple. You have a data storage layer, then you have application server layer and then you have user interface.
Nothing new in there. Maybe some idea is that API, they could be in several levels. Not only in the application server layer but also in the data storage layer.
So how to build enterprise GIS? You have to start with the principles of enterprise architecture. And one step is to check that what is your ICT people saying about the enterprise architecture.
If the organization have enterprise architecture, you have to follow that. If not, you have a problem. Whatever, you have always a little bit of a challenge because you have to understand how they see the enterprise architecture.
If you are a GIS person, you go to a new field and you have to understand that it will be something that you have to learn. And sometimes GIS people have to show the path. Sometimes organization don't have enterprise architecture when you start to build the enterprise GIS and then
you have a challenge because you have to understand in the better way how they do this. It's very complex concept and it's not technology design tool. It's more like communication tool, discussion tool between business owners and IT people.
There are some tools where you can use to build up but you see that in the right side, you see that CFO, the chief financial officer, somebody who is taking out the finance of the organization, he has a problem or ideas, drivers and goals what he has to fulfill.
And it goes, the requirements goes in the organization from the top to down. Usually we are concentrating the low level. We are building the software, we are buying the hardware and we are doing this kind of technology thing but the managers don't understand what you need.
If you need the server, they don't understand why you need the server. You have to see their drivers and goals and fulfill their drivers and goals, you need the server or something else. Where to start? I think the first thing is to describe the processes. You have to describe the processes,
how the organization is working, how your geospatial information is maintained and delivered or shared or something like that. And you have to find the process owners and actors. If you don't have an owner of the
process, you don't know who is responsible and who will be funding the services or servers or project developments. After describing the processes, you have to figure out are they good enough, if
there is some kind of way to make it more simple or streamlining the processes. And usually people who are part of the processes understand why we are doing this because it just takes more time and so on. Who will then describe the processes? You can do it by yourself as an actor in an organization but
you have problems because you understand too much may be sometimes the problem or you are part of the problem. Consultant is also very good if you are an outsider, you can see, you don't understand all the details of what's going on there.
But for a good farm hand but a bad master, the same thing goes to the consults. Data architecture is an important thing and you need to define and document the conceptual data model, logical data model and physical data model.
But very important in the GIS and my feeling is and my experience is that GIS is maybe the only field in ICT that you need some kind of external data sets always. I haven't seen any customer who is not using external data sets from the organization because it's too
expensive to, for example, collect your own road network or topographic database or aerial imagery or satellite imagery. You always use somebody else's data sets in your organization when you manage the geospatial information.
You have to figure out who is, how you use those external data sets, APIs or are you downloading the data or whatever you want to do it. One important thing is also understanding the data ownership. Who is the owner of the data? If you haven't described that in your organization, you have also the difficulties to understand who maintains the
data and if you want to open the data, who will make the decision about opening the data. Data ownership is important but also the ownership of the data model is important.
If you purchase some kind of software, whereas the data model who is made by a vendor and you want to make changes on the data model, what is your responsibilities or what are your rights to correct the data model or make add-ons.
Application servers in Enterprise GIS, map APIs, data APIs, geoprocessing services, web map applications. You can describe internal services to implement and then also describe external services which you are going to provide or using.
Also, if you think about that your processes are dependent of external APIs, you have to make the vulnerability analysis what happens if those APIs are not available.
If your business process will stop because you don't get the geocoding services from somewhere and your commercial store will be stopped, it will cost a lot of money for you guys or organization.
User interface layer in Enterprise GIS, that's the most important in a way because the end users will see that, nothing else. The other layers are just serving the layers or services. It could be a desktop application or web application or mobile application but keep in mind that if you have only one user interface, it's not the Enterprise GIS.
In Enterprise GIS, you have multiple different kind of user interfaces. Of course, discussion is if API is the user interface or not depends who you ask.
Developer seems that's the best user interface. The fast lane for Enterprise GIS, describe the process, design the data layer, create data models, define the external data sources, design application server level, internal and external API services and design user interface.
What tool to whom to do what, that's maybe the question. And then you have to iterate this two to three times. You can't do it like one workshop two days and then it's ready. You have to have some kind of calendar days or time to better understand how it goes on.
You have to communicate all the time for all the stakeholders like head of the organisation but also the end users what you are going to do. If you are not communicating, there may be false expectation in the future.
FOS4G software, this is maybe not new for you guys but my definition is like any GIS software with open source licence is FOS4G software. Of course, OSGO is giving some kind of insurance about the quality of software and the life cycle
of the softwares but you have to remember that choosing the right software is always a risky task. My recommendation is that it's better deploy some kind of proof of concepts and learn and discuss with other users how they use and what kind of problems they have.
Every software has problems and challenges and bugs and so on so you have to think about what is the risk to take one software and implement your enterprise GIS on top of that. Usually we say that open source GIS stack, it's not all the logos here but you see
that there is a desktop mobile application, you have a GIS server database and some kind of libraries. So when you do with the enterprise GIS with FOS4G, so if you describe the process, that's not anything related to the technology.
Whatever software, even the commercial softwares, you can use with the commercial so same processes or implement the same processes with different kind of technology stacks. Design data model for your own data, only physical data model is like technology dependent.
My opinion is that the PostgreSQL, PostGIS is only the database but you can use in FOS4G world and then you need to have some kind of selection of FOS4G softwares for the application, desktop and mobile applications.
Conceptual data model is the tool where you talk with the domain experts to better understand what they mean about the terminology and what kind of features or attributes is related to those areas.
You see that my example is coming from the airport. I have a presentation on Friday about how to manage the airport data models and airport data and if you have traveling with the airline via Helsinki, it will be maybe interesting but let's talk more on Friday about that.
Logical data model is maybe not discussed with the domain experts anymore. It's more like start to have more information about data types and relationships between those tables and so on.
You can use Archimede or the database design tool for the describing. Thank you. Physical data model is then technical implementation and it's technology dependent. If you make a physical data model, you can't, if you make it for PostGIS, you can't use it in the geo package and vice versa.
PT modeler is the tool that we have been using in quite many projects. Application server, what is your IT infrastructure? Windows, Linux, cloud services, on -premises, you have a question about what kind of features do you need?
APIs, web maps, dashboards, geo stories. In desktop application also what kind of IT operating systems you have, do you need editing environment,
analysis tools and don't underestimate the need of training and learning curves of the people if you change the software from A to B. Mobile applications, viewing data in the field is different than editing data in the field or data collection in the field is a little bit different.
Is it using ad hoc or is it some kind of part of the process, what they do there? Online and offline usage, tele -operators usually say that it works everywhere but if you go in the field it doesn't work anymore, what you do there, that's ideas.
Some of the first 4G architectures, this is like small municipality, they have a raster data as a file and then they have a vector data in the PostGIS, then application server level with UGI server, APIs and then list map to create web maps.
Usually mainly the users are the internal users of the municipality are using the web maps but then GIS analyst is using Google GIS. Other municipality want to have external usage also so we create some kind of separate environment for external stakeholder usage,
we just copy the data in the data storage layer from some raster files and some part of the vector data is copied to the other server and then we have APIs in internal usage and also for the external usage.
Then a little bit for the private company implementation, Amazon Web Services where they have huge data warehouses where we make data integration to Amazon RDS which is basically PostgreSQL as a SaaS, software as a service by Amazon.
Then we have application servers, map store and geo server on the virtual servers but we also give the APIs to the different kind of application what they have in Amazon and business process experts are just using the web
user interface but GIS analytics want to use Google GIS to implement their more specific business analysis or geospatial analysis. So enterprise GIS with FOS4G, it's affordable solution for all size of organization, it's not free but it's open.
Freedom of action and digital sovereignty is the key factors when you choose the FOS4G. You make decision how to use the software, you can avoid the vendor lock but also
manage the cost, how much you pay this year or how much you pay next year. Have fun and thank you that you are already part of the FOS4G community.
Many thanks, so do we have any questions here in the room? Thank you for a great presentation there, so I remember close to about seven years working in the bank, building enterprise GIS.
I think I love your point that the stakeholders really kind of you need the champions to support the initiative and that's one of our struggles here. So what can you comment on?
Because we started off with FOSS but it's very difficult to get into IT because of the vulnerabilities, you know, they don't approve some of the dependencies. And also it's really hard, you get so many menus just like you go to a restaurant, you
just want to eat lunch but you get so many menus that you don't want to spend so much time picking which one you're going to go through. So unlike, you know, I'm not selling here commercial GIS, you know what I'm talking about but they made it simpler that you already have the orchestrated, you know, deployment,
right? You've got all the components ready. But for FOSS it's hard to say, okay, you have a QGIS but how about the automation and the UI components that you have to pick through? My point is, you know, it's hard to sell to the stakeholders because you couldn't get them to the wall factor quickly because you lack the tooling and the components ready
to make those POCs or PRPL concepts quickly. Yeah, it's not easy thing I will say. I think the discussion about the open source have changed in the last five years that
also the stakeholders understand that it's not something that's very bad, that you can't do it. Geospatial is more difficult to sell than the open source for the stakeholders in my opinion that if they understand what is the geospatial information and how to use
that in the business processes then it doesn't really matter what is the tool, how they will implement. Problem with the FOSS 4G that you have so many choices that how to implement.
If we talk about you need WMS service, what do you do, GeoServer, MapServer, QGIS server, you have so many choices but somebody have to make the decision and if you don't have enough experts there's consulting companies like us and others who can
help you but also I want to always say for the end user or customers that tell that you are using open source software because somebody else want to use that as an example. If you are using open source software please tell in a way that we are using because some
other people can use that as a tool for selling the open source software for them. Thank you for the question. Yes, thank you Rebecca. I'm Antti Wasanen from Regional Council of Southwest Finland. This is very neat and tidy as you put it here but how do you cope with or manage
the resistance of change which may appear when you start the process from commercial GIS to open source of FOSS 4G? Well, in the same way that you manage the risk to implement whatever technology you have.
I don't see any kind of differences between commercial software and an open source software in a way when you implement it as a technology. You both have a risk that the software is going away or in commercial software the
company goes to bankruptcy or they define that we don't anymore support this version or something like that. You have the same kind of risks. I mean nobody can take the risk from you. You have to manage as a user of the software in your organization.
That's mine. Yeah and from end user point of view that's true but you often have to make the management to believe. Yes, how to handle the management to believe that is maybe that you can sell the always
that you avoid the vendor lock. We can have multiple choices of vendors for consultation training and so because the open source FOSS 4G market is open for everybody. Everybody can establish the company and give the services but in the commercial software
there's only one company who owns the commercial software and they are only provider of the services. Thank you very much for the presentation. I was wondering about the interoperability.
You sketched a few solutions of which are kind of like the bare minimum you have to do but apart from that how much custom development you have to do to make sure that if you choose a map server sometimes you're locked if you use geo node you have to use geo server or you should use geo server but how much custom development has
to happen to make these tools to be interoperable? I usually try to say that the customers that we don't want to make custom code for you because it will cost you 10 times more to maintain the custom code than that
something else. So first thing is that I usually ask that if there's need from custom code for the customer I ask that is this specific for you? Can we can have this feature or this possibility in the core software?
And then we try to convince them that we have to talk with the developers of the FOSS 4G softwares that they will add the feature in the core software because then you are not maintaining anymore the code. Somebody else or you will take care about that. Then we talk about that if this is only specific for you could it be some kind of extension
and somebody else can also use like GOOGIS if it's a GOOGIS extension which do this and then maybe there's others who want to use it and then there's some kind of community use that and the final step is that if it's only specific your organization
for this new business process they probably are ready to pay the amount of the money how much it takes make customized solution and then maintain that for next 10-20 years what is the lifetime of the system.
No easy answers I will say. Okay more questions too. Any other questions? So many thanks for those words and talking also about architecture.
There is still one, sorry. Because you said about external data sources and I often see that sharing data across stakeholders sometimes becomes difficult so I wonder how you deal with that process.
Well it depends what kind of data they are willing to have. I mean we have a customer who want to really collect some kind of information by themselves because they didn't trust the data provider or something like that but when we analyze how much it will cost and maintain the data set in the next 10 years
they decided that it's not way to do it. One example in Finland is the Helsinki region public transportation they have 40 municipalities and they get the access for the municipality data but they make their journey planner system they decided that it will cost more
to integrate the data sources from the 40 municipalities and they think about the open street is better solution for them so now they are totally related on the open source
not the municipality data because the integration of those municipality data sets will cost more than the risk of the balancing of the risk of course the open street but who will maintain that then if there's vandalism or something like that but you have to always balancing issues.
One last question. I was wondering about what are your thoughts about moving data like motion of data, data ingestion and data pipelines do you feel like the open source community is mature enough because there were a few projects like Tallinn geospatial and there were geocattle
but some of these ETL tools sort of disappeared as I feel? Well it's then yeah it's very I usually see that the geospatial data sets are not
how do I say that it's bad when they are streaming this live so I have to think what I'm saying that I'm not saying what I'm thinking maybe we can discuss this later on, thank you. Thank you very much, enjoy your lunch.