Software Competences of Geomatic Engineering

In this paper, it is both intended to effectively transfer and emphasize the relationship between geospatial data and software applications while presenting the learning activities which required software competences and presented some software techniques related with geomatic engineering. Effective software competence in geomatic is required for both the combination of information-communication technologies and interdisciplinary collaborative learning activities. The essential way to keep up with future competences is adaptation to different types of information technologies. Today, it is obviously seen that the using of interest-activated technology is a sine qua non condition of engineering education. The main focusing point of this paper is to present some learning suggestions while developing a software related course content in Geomatic to empower engineering education.


Introduction
There has obviously been a great impact of computer and software engineering on other technological improvements.The effects of computers on successful analyzing capabilities of informatics which involves intense information have been contributing to interconnection between discrete disciplines.
Geomatics is one of the intensively effected sciences from computer based technologies.Geomatics is a new term incorporating digital mapping, spatial data analysis, micro-electronic mechanical systems (MEMS) and combination of surveying technologies such as, digital photogrammetry, remote sensing, Global Navigation Satellite System (GNSS), Geographic Information Systems (GIS), etc. Geomatics can be thought as an interdisciplinary science which combines the terms geodesy and informatics.Briefly, interests of Geomatics are as follows: -Geography, cartography, remote sensing, photogrammetry, geo-monitoring, geo-referencing -Planning, land management problems and questions relevant to space and environment -Statistical analysis for parameter estimation on modelling and geo-referencing -Computer-aided visualization, communication and use of geospatial information -Spatial analysis and geo-statistics in the context of IT and communication technologies -GIS based software development & programming on Open Source GIS, mobile GIS, mobile IT platforms As mentioned, most of the items are directly related to computer based applications and software support.In next sections of this paper, some basic reference education samples involving software application interested with GNSS are introduced for undergraduates who study in geomatics engineering to develop competences efficient.These competences are generally related to some instrumentation errors associated with software, evaluating the results obtained by instrumentation devices, positioning on map, transferring and the presenting the GIS data.Courses which are studied in geomatics engineering and directly or indirectly associated with software engineering are introduced in Table 1.

Geomatic and Astronomic Perspective
GNSS which provide us to find our position on Earth has been servicing independently or augmented.There are some countries that use their own satellite navigation system.For instance, USA uses GPS (Global Positioning System), Russian Federation uses GLONASS (Globalnaya Navigatsionnaya Sputnikovaya Sistema), European Union uses Galileo, Republic of China uses Beido and India uses IRNSS (Indian Regional Navigational Satellite System) [1].Software requiring high performance computing should be designed to analyze informatics obtained from these satellites for detecting the position on Earth, monitoring the living or cars, analyzing the ground movements and detecting the earthquakes.Such studyings requiring to detect the real position and the ground movements show us that geomatics engineering and software engineering collaborates with each other.
In addition to this state, satellite augmented systems like SBAS (Satellite Based Augmentation Systems) which one signals are implemented with GNSS Networks enhance the significance of software engineering.Because if we want to find position in tiny range this requires additional data analysis and optimized algorithm.
Undergraduates studying geomatics engineering should have awareness of these competences so that they can efficiently interpret some problems originated from GNSS system and software.
GNSS systems comprise space, user and control segments.Satellites in space segment transmit their own position to the earth via 1.5 GHz carrier frequency.Receivers on the earth, namely in user segment of GNSS, looking at the satellite signals calculate their own location with trilateration method.Although trilateration method is 3 dimensionally carried out in space, it is 2 dimensionally carried out in mobile robotic applications where signal powers of RF radiation of robots in plane and targets are considered.
However, in real life circumstances, there will be error in the estimation of the ranges, so we cannot just algebraically solve for the position.We need to estimate it some other way.The following solution is a linearization Table 1.Geomatic Eng.Subjects related with software Eng.Competence. of a system of equations, called the Linear Least Squares, derived by adding a subtracting the first constraint (x_1, y_1).This produces a matrix equation that will solve for the target position based on the estimated ranges and the positions of the anchor nodes [2].
GNSS receivers, sensors and other catastrophic measurement devices used in Geomatic Engineering have been limiting applications used in user segment and workspaces aided with computer analyses.In GNSS systems, software practices and control segment applications in user segment for obtaining the analyses of satellites' orbits with high precision are a separate study.On the subject of this, gAGE (Research Group of Astronomy and Geomatics from Universitat Politecnica de Catalunya) has designed gLAB software tool to analyze GNSS data in partnership with ESA.This software is made up 3 parts.These parts are, Data Processing Tool, Data Analysis Tool and Graphic User Interface [3] [4].
The activity portfolio of gAGE in GNSS includes new algorithms for Wide Area navigation and Fast Precise Point Positioning at the centimeter-level of accuracy using GPS/Galileo signals, SBAS and GBAS studies Educational activities include GNSS teaching at different University levels (undergraduate, Master and Ph.D.) [3] [4].

Software Engineering Competences and Geomatic
In spite of the fact that graphic user interfaces of computer programming and software are user friendly nowadays, pioneers of software engineers should be aware of how compilers work, how computer data channels communicate in accordance with the standards, designing optimized software suitable for hardware and writing assembly machine code interact with hardware directly.In addition to this condition, Ynonne Sedelmaier et al. have also explained that what a specialized software engineer should have non-technical competences as well as technical competences [5].
Software competences in Geomatic Engineering generally allow to proceed consciously by knowing error factor of data evaluated during application development.The necessity to software development competences of geomatic engineers is obviously observed when the data, obtained from measurement devices and Geomatic Engineers' calculations of positioning, is transferred onto plans and maps.

Algorithm and Programming Basics
There can be seen a lot of articles on calculating the average value of changing data [6], tests for statistical analyses [7] [8], equation solutions using matrix methods [9] and so on about Computer Basics part of Table 1 when literature studies about the relationship between Geomatic and Software Engineering that includes algorithm and programming competences are examined.
When examining the mathematical equations given formulas (1) (2) (3), students who take algorithm and programming education within the scope of computer basics and programming competences in Geomatic Engineering, as shown below: • getting the average value of the data is loaded to a large amount of series, • using flow diagrams in which it will contribute to statistical solution by including error values that change the actual value, • detecting the difference between variables by differentiation, • using matrix operations to solve the equations by numerical methods, and so on will contribute to software development competences of Geomatic Engineers within the scope of business principles.In this context, there is a sample flow diagram can be used in 1 st competence group subjects shown in Figure 1.This flow diagram which was designed by using web based flowchart program has been shown on the web address (http://www.gliffy.com/go/publish/7177423).

Data Base Interaction
The accuracy of the measurement results in Geomatic Engineering is possible with analyzing a huge amount of data.Obtaining time of data and the number of other data which support the accuracy of that data are the major parameters.For this reason it has a great importance to access other databases and make comparative operations.
In a study done by Zhou, an application has been developed which processes a huge amount of GPS data [10].Lingli has designed a data integration system to access a large amount of GIS data source due to the rapid de- velopment of information technology [11].Jun Li et al. has designed a GML mapping mechanism which accesses heterogenic data sources via agents [12].
Under the light of these studies, it would be beneficial for interested classes of geomatic engineering the knowledge of the standard formats of data in databases [13]- [15], accessing methods of open source databases, accessing databases in office programs by macro programs, software application samples which connect to ports via sockets with IP addresses to request data from databases and sample applications developed by using API (Application Programming Interface), ADO (ActiveX® Data Objects) or specific libraries.
In this context, access to different databases that can be referenced and application connection structures are shown in Figure 2. If we examine the Figure 2 in second competence group subjects we can see different connectionstrings for specific databases.The other important point of database integration is the standards of data presentation can be analyzed in Figure 2.

Image Applications
It is a common method to show coordinates on a map image by using geocode cycle.But this cycle constitutes some uncertainties.It is important to understand the sources of uncertainty in geocoding to make appropriate and reasonable decisions using geocoded data.There are two major sources of uncertainty in geocoding, one related to the database that is used as a reference data set to geocode objects and one related to the interpolation technique used.Factors such as completeness, correctness, consistency, currency, and accuracy of the data in the reference database contribute to the uncertainty of the former whereas the specific logic and assumptions used in an interpolation technique contribute to the latter [16].
Students should be left on their own to be able to see the problems resulting from potential software defects develop their own applications.Thus they can see the reason of the uncertainties and how these potential tolerances emerge in applications.In this context, it is illustrated conversion the latitude information which comes from a GNSS receiver to geocode in sample code in Table 2. Besides, applications by showing errors sourced from the map resolution, shifts on start and stop reference points, geometric errors when the map is modeled on the Earth and errors during image processing, are other points to be drawn attention.

Web Services
Web based GIS applications are widely used in Geomatic Engineering.The most fundamental reason is the need to access constantly changing and updated map sources up to date.Mobile software applications have been developed to access databases remotely, thus the systems in which monitoring and interest-activated points created have been developed by open source software [11] [17].In another studying, Nutan Tyagi has designed a Web GIS application to develop a tourist info system by using open source GIS servers [18].Song Weidong et al., through an application, has introduced a solution that allows the installation of the server later by collecting geographic information with the aid of volunteers [19].
Very valuable and important data will be accessible using the internet while all of these web-based applications are developed and resource sharing about mapping increases.Thus, it will extend the domain of the future applications.Today, there are platforms include open web based map sources [20].
Access methods to web services are generally taught by service providers with the aid of trainers.Web based services are effectively used with API-Application Program Interface.A good API makes it easier to develop a program by providing all the building blocks.A programmer then puts the blocks together.Hsinchun Chen et al. have described the using of the APIs and students experiences in the educational process [15].
A multi-link structure that may reference to Web Services is shown in Figure 3.
Table 2. Sample code of geocode conversion.If you want to write an application that processes geospatial data, first you need to select and environment and programing language and then you need to know the details of the related data source and API documents, like google maps.
Possible environments and programming languages can be, • Ios xcode • Windows, C#.NET • Android, Java • Web Browser, Javascript In Figure 4, there is a snapshot belonging to an API application which is compiled and simulated on web browser and allows to collaboration.In web link (http://jsfiddle.net/8yewm5zw/),there is also shown of centering a map via "center"by referring geocode of latitude longitude and focusing on the road map via "zoom" value.

Conclusion
Today, every branch of engineering is affected by software engineering competences.Although in this article software competences in Geomatic Engineering it has been emphasized, similar relations can be familiarized in other engineering programs.According to the compliance with the competences, learning activities which were examined under four groups in this article have a reference attribute and they can be used in related subjects by developing their contents and structures to develop more detailed applications.It has been shown under the light of this article that the effects of software engineering in geomatic engineering, which has interdisciplinary structure with software engineering, GIS and GNSS, would increase every day.Therefore, it will have also a great importance on the study done to contribute to the literature related to the software competences of this science.

Figure 1 .
Figure 1.Sample flow chart for position calculation with no errors.

Figure 2 .
Figure 2. A sample database interaction for geomatic engineering education.

Figure 4 .
Figure 4.A sample API usage on web browser.