Graduation Design - Chapter 2 System Overall Design (1)

xiaoxiao2021-04-11  1.4K+

Chapter 1 System Overall Design

As mentioned earlier, "Drainage GIS Geographic Information System" belongs to a professional system. Compared with the public system, the public GIS system user friendliness is the key, and the professional system pays attention to the system only. The professional system is designed to consider the user's psychology. For example: (1) Simple operation. Although it is professional software, mainly uses objects to operate non-computer professional, so it is necessary to consider the software operation and simple, convenient, and have a certain interest, and the user has confidence and interest in the system; (2) In GIS principle and Functional expression, some computer terms should be popular, easy to accept; (3) The system should respond to the user's operation in real time, and minimize the waiting time. Therefore, the system must meet the user's requirements from interface design, assistance, screen animation, and dynamic performance, operational style of information.


System function requirements

The system required by the system is as follows:

(1) Electronic map of the display drain line and various pipe members can be loaded on the map, classification, partition;

(2) Complete display, modification, addition, deletion of each site and various pipeline information on the map;

(3) Implementation of management function system for implementing assistance decisions



System platform selection

2.2.1 Hardware Platform

Since this system is a professional GIS system, the user is used by the user who is non-computer professional, so the system's hardware platform should not be too high, the lower the better.

2.2.2 System Operation Platform

Considering the extensive of the current operating system, the general personal user uses Microsoft's Windows series, so the system operation platform selects a platform for Windows as a system platform. Test platform: Windows 2003 Server.

2.2.3 Database Platform

Current database system Oracle, Sybase, Inform, DB2, SQL Server, etc., each has a thousand autumn, according to the data volume processing requirements in this system, there is no need to use large database management systems, so this system uses

Microsoft's SQL Server 2000.


System development mode and GIS component selection

2.3.1 Development Mode Selection

There are three main methods for the development model of the current geographic information system.


(1) The data structure and database of autonomous design spatial data, using advanced programming languages ​​such as VC, VB, Delphi, develop geographic information system software.

(2) Introduce foreign advanced geographic information systems (such as ARC / INFO), using the secondary development tools provided, combined with their application goals.

(3) Use the control-oriented high-level language and the control provided by the GIS vendor to constitute an executable application for end users, called embedded GIS.

Among them, method 1 requires strong research strength and huge development costs, and must continue to update the system with the continuous in-depth of research, mainly suitable for the development of geographic information system platform software for commercialization, for developing some small application systems , Invested too high and not necessarily practical.

Method 2 is relatively easy, the main disadvantages are portable differences, and are limited by the development tools, and cannot be independently operated from the original system software environment;

Method 3 is characterized by short development cycles, low cost, can be separated from large commercial GIS software platforms, providing conveniences that are not familiar with GIS technology, and is an important direction for future GIS development.

2.3.2 Development Tool Selection

Visual Studio .NET 2003 is a high-grade program development language that Microsoft is launched in 2002, which fully supports object-oriented technology. Visual Studio .NET contains the current most popular development language, including Visual Basic .NET 2003, Visual Studio .NET C # [3], Visual C 2003, Visual J # 2003 and other popular programming languages, the characteristics main appears in:

(1) Object-oriented programming: .NET FRAMEWORK and C # are completely object-oriented from the beginning.

(2) Excellent design: A base library, it is a very intuitive way to design.

(3) Unrelated matter: In .NET, VB.NET, C #, J # and Managed C and other languages ​​can be compiled into a universal intermediate language, this description, language can be interactively operated in the previous way .

(4) Support for dynamic web pages: ASP has great flexibility, but the efficiency is not very high because it uses the interpretative scripting language, but lacks object-oriented design, resulting in a mess of ASP code. .NET uses a new technology ASP.NET, which provides an integrated support for the web page. Using ASP.NET, you can compile the code in the page, which can also be written in .NET advanced language, for example: C #, J # or VB.NET.

(5) Efficient data access: A set of .NET components, always called ADO.NET, providing efficient access to relational databases and various data sources. These components can access file systems and directories. The .NET built-in XML support can handle data from the non-Windows platform imported.

(6) Code sharing: .NET introduces the concept of the assembly, replacing the traditional DLL, the perfect patch code is a sharing between the application, the assembly has a formal system that solves the version conflict, the assembly is different The version can exist at the same time.

(7) Enhanced security: Each assembly can also contain built-in security information, which can accurately point out who or that type of user or process can call what kind of how category, so you can control the program very accurately Set of use.

(8) There is no impact on the installation: There are two types of assemblies, which are shared assemblies and private assemblies. The shared assembly is a public library available for all software, and private assemblies are only for a software. The private program set function is complete, so the installation process is very simple, no registry key, only the eight corresponding files are placed in the corresponding folder of the file system.

(9) Support for Web services: .NET integrates full support for the development of web services, users can develop any type of application.

Visual Studio .NET 2003: .Net comes with a development environment Visual Studio .NET, which can be written well with C , C #, J #, VB.NET and ASP.NET. Visual Studio .NET integrates all the best performance for various languages ​​in the Visual Studio 6.0 environment. Among them, Visual Studio C # 2003 (hereinafter referred to as: C #) is a new language that Microsoft's main push, which is the latest, object-oriented programming language. It allows programmers to quickly write a variety of applications based on Microsoft .NET platforms, Microsoft .NET provides a range of tools and services to maximize development and utilization calculation and communication. Its importance is reflected in: (1) It is designed for use with Microsoft .NET Framework.

(2) It is a language based on the modern object-oriented design method. When designing it, Microsoft also learned from other similar languages, and these languages ​​have been developed for a wide range of applications in 20 years.

(3) is an object-oriented new language using .NET.

(4) Fully support class and object-oriented programming, including interfaces and inheritance, virtual functions, and operator overload.

(5) Define the complete, consistent basic type set.

(6) Built-in support for the document description of the automatically generated XML.

(7) Automatically clean up the dynamically allocated memory.

(8) Tag class or method can be tagged by user-defined characteristics. This can be used for document description, which has a certain impact on compilation (eg, mark the method to compile only when debugging).

(9) Complete access to the .NET base library and easy access to the Windows API.

(10) You can use pointers and direct memory access, but C # languages ​​can access memory without their conditions.

(11) Support attributes and events in VB style.

(12) Change the compiler option to compile the program into an executable or .NET component library, the component library can be used in the same way as the Active X (COM component) is called by another code.

(13) C # can be used to write ASP.NET dynamic web pages and XML Web services.

Microsoft describes C # in formal occasions as a simple, modern, object-oriented, and is very secure, derived from C and C programming languages. It is precisely due to the optimal design of the C # facing object, making it ideal for building a variety of components, whether advanced business objects or system-level applications.

2.3.3 GIS control selection

GIS (Geography Information System, Abbreviation: GIS System) has also launched a large number of controls for various industries. In the GIS field, there are also a lot of controls available, and its representative is launched for the US Environment Institute (ESRI). MapObjects2

[4], MapXFo launched the MAPX and the Geomedia launched by Intergraph. MapObjects2 and Mapx have the same advantage in real-time event tracking (with GPS integration), control data analysis, etc. in real-time event tracking (with GPS integration), control data analysis. MapObjects

[5] The main function comparison with MapInfo is shown in Table 2-1.

MapObjects is an ActiveX control for providing drawing and spatial analysis, including 35 programmable objects, which can be used in a large number of programming environments, including popular images such as VB, Delphi, Visual C , etc. Although MapObjects is not provided for the end users, it has established industrial standards for geographic information systems with other geographic information systems software ARC / INFO, ARCVIEW, ARCCAD, SDE, etc.

It is usually used in mapputs to store the vector layer of the Shapefile format. This is a format of the properties information of geometric position and geographic feature in the form of a non-topography. It is used to store 5 different scales stored in the same workspace. Document

[6], respectively:

.SHP - Store geometric characteristics;

. SHX - the index of the geometric feature;

.dbf - Database file, it stores the properties information of the feature;

. SBN and .sbx - spatial data index of storage features;

.ain and .aih - These files store the index of the fields in the property list in the item in ArcViewGIS.

Table 2-

1 MapObjects and MapInfo's main function comparison




Show map data format

Arcview's SHP, ARC / INFO

Coverage, SDE layer

MapInfo's data format

Slat grid layer



Common operation for maps

Enlarge, shrink, roam, etc.

Enlarge, shrink, roam, etc.

Layer control

Increase, remove, set the current layer

Increase, remove, set the current layer

Property data binding



Map information query mode

1. Select characteristics by mouse

1. Select characteristics by mouse

2, find the characteristics through SQL

2, find the characteristics through SQL

3, select characteristics by spatial operation

3, select characteristics by spatial operation

Topic map



GPS integration



User drawing layer



Generate / edit map object



Map mark



Map symbolization



Analysis function



Geographic code



Available development language

VC, VB, Powerbuilder, C Builder, Delphi, etc.

VC, VB, Powerbuilder, C Builder, Delphi, etc.

At the same time, MapObjects also provides powerful geographic information query and statistics. Support for external database access through the ODBC standard, you can use standard SQL expressions to perform feature selection and queries. You can display the database records with the x, y target in the map by data binding, and can be carried out in the map. A variety of statistics and queries, MapObjects can also digitize the geographic information in the actual map to the electronic map through projection and coordinate transformation. If combined with the global positioning system GPS, MapObjects can also use an event tracking layer to dynamically display large Mobile objects on the area.

In addition, MapObjects also has the following advantages:

(1) Small and flexible, cheap. Due to the closure of the traditional GIS structure, the software itself is increasing, and the interaction of different systems is poor, and the system development is difficult. Under the premise of ensuring function, the system performance is small, and its price is only one tenth of the traditional GIS development tool, even less, so users can obtain or develop GIS application in better cost performance.

(2) There is no need for special GIS development languages, directly embed MIS (NanAge Information System, Management Information System) tool. MapObjects integrate with C # efficient seamless system. In a C # programming environment, the Boibjects control and C # self-contained control are not used in use, and with a large number of VB written code, help files are ready, easy to query. It can be seen that the combination of MapObjects and C # is a valid tool for rapid development of executables for end users. (3) Powerful GIS function. The new GIS components are based on 32-bit system platforms. They use Inproc to directly call the form, so that the ability to manage large capacity data is not necessary, there is no traditional GIS inferior. Small GIS components are fully able to provide spatial processing capabilities such as splicing, cropping, stacking, buffer, and rich spatial query and analysis capabilities.

In summary, the system uses GIS component development model, namely, using C # MapObjects component development mode. The idea of ​​component development model is to divide GIS's large function modules into several controls, each of which completes different functions. Between each control and between the GIS controls and other non-GIS controls, it is convenient to integrate through visual software development tools (Visual Studio .NET 2003) to form the final GIS application. The image said that the control is like a bunch of various building blocks, which achieve different functions (including GIS and non-GIS functionality), and people build "building blocks" to achieve various functions as needed, constitute GIS applications. system.


New Post(0)