Logo GISdevelopment.net

GISdevelopment > Proceedings > GITA > 1999


GITA 2002 | GITA 2001 | GITA 2000 | GITA 1999 | GITA 1998 | GITA 1997 |  
Sessions

Business Applications

Data Development and Evolution

Data Distribution and Access

Engineering and Design Applications

Enterprise Integration

Enterprise Resource Planning

Exploiting Field and Mobile Technologies

Invited Track

Operations Support

People Issues

System Architecture

User Perspectives

Work Management


GITA 1999


System Architecture


Scalability - The forgotten dimension


Robust data modeling
The system must provide data modeling capabilities that allow the enterprise to be described without compromise. Forced fits lead to complex application code, extra traffic, and risky maintenance of system integrity. If flexibility to try different approaches is built in, database access can be optimized. The following examples highlight this requirement:
  • Management of long transactions used in utility and telecommunications business processes. If the only tools are extract-modify-mergeback and long-term exclusive locking, conflict resolution becomes difficult and database transactions increase-all of which affects scalability. Capabilities must include versatile conditional data handling through versioning and various forms of optimistic and pessimistic concurrency management.
  • Dynamic coordinate projection system handling. Large enterprises often have spatial information that covers vast geographic areas, resulting in the need to work in multiple coordinate systems simultaneously. If a system cannot present data in multiple projections to concurrent users, data translation and duplication are required, which limit scalability.
  • Multiple graphic representations. Utility and telecommunication organizations use plans for substations, towers, and other complex assets. These plans typically provide structural details and alternate views of plant items. A system that supports this concept of plans within the single database reduces system maintenance, thereby improving robustness and scalability.
System architecture
An essential component of scalable systems is flexible system architecture. As users are added, the sensitive points in the system change. It must be possible to analyze this dynamic information and perform suitable load balancing. For example, multiple servers provide an effective means of scaling systems. Coupled with three-tier application partitioning, large organizations can adapt to support growing user communities.

The workflow of an organization follows very specific patterns. For example, at the beginning of the work day, hundreds of employees may need to start the same application. This burst of activity may saturate the network beyond its capability. Should one size the network to handle this peak? It is possible for software to simulate system loading; as a starting point, it is reasonable for assessing orders of magnitude. However, the work habits of staff make this difficult.

In practice, systems are usually expanded in stages. Not all of the projected user community will be online from day one. The reality, therefore, is that as users are added, system activity rises through a series of plateaus.

The key flexibility provided by an open, partitionable environment can resolve many capacity problems and respond to changing conditions. A commercial database, open communication standards, and distributed processing are all key in tuning and adapting to an ever- changing environment.

Conclusion
Because information systems have become essential to the work processes of many organizations, they must live by the rules of efficiency in both financial and operational terms. As we have discussed, systems must be scalable to meet these criteria. We have identified the key strategies for achieving scalability as follows:
  • Fully leverage the flexibility and reliability of commercial databases
  • Develop a suitable display caching strategy
  • Design a flexible, multi-tiered, and partitionable architecture to efficiently distribute processing load
  • Use a robust data model that includes strategies for conflict management, dynamic handling of coordinate projection systems, and multiple graphic representations
Not all these strategies are required in every instance. A further challenge in designing a scalable system is to select the mix of strategies that best addresses the particular data type, network structure, and business processes of the organization in question.

Page 3 of 3
| Previous |

Applications | Technology | Policy | History | News | Tenders | Events | Interviews | Career | Companies | Country Pages | Books | Publications | Education | Glossary | Tutorials | Downloads | Site Map | Subscribe | GIS@development Magazine | Updates | Guest Book