This unit covers: Distributed database systems: clients, servers, application servers; Database servers, clusters of servers; Distributed database architectures: single-tier, two-tier, multi-tier; Implementation issues: performance, security, transactions; Enterprise application server capabilities: hot deployment, clean shutdown, clustering, farming, load balancing, automatic fail-over; Enterprise application coding: DBMS access, distributed components, messaging services, authentication, authorisation, encryption, transactions; and Enterprise application software development tools.
On successful completion of this unit, students should be able to:
- describe the various ways in which a database application may be scaled to the enterprise level, including: applications being split between clients and servers; servers being split between application servers and database servers; application servers being split into clusters of application servers;
- evaluate the advantages and disadvantages of single-tier, two-tier and multi-tier architectures;
- manage enterprise applications, including: performance problems due to network latency and bandwidth; security problems when transmitting data over an untrusted network; transactional problems when transactions must be distributed over multiple servers;
- recommend appropriate enterprise programming techniques or alternative simpler solutions;
- configure an enterprise application and application server to take advantage of advanced capabilities such as: hot deployment; clean shutdown; clustering; farming; load balancing; automatic fail-over;
- design and implement an enterprise application that makes appropriate use of the following: DBMSs; distributed components; messaging services; security (authentication, authorisation and encryption); transactions; fat clients; thin (web) clients;
- utilise appropriate software tools (both GUI and command-line) for rapid enterprise application development;
- deploy an enterprise application on distributed platforms (client and server) using appropriate cross-platform technologies;
- integrate appropriate libraries with an enterprise application and run on an application server with little additional coding effort.
Examination (3 hours): 60%; In-semester assessment: 40%
Minimum total expected workload equals 12 hours per week comprising:
(a.) Contact hours for on-campus students:
- Two hours of lectures
- One 2-hour laboratory
(b.) Additional requirements (all students):
- A minimum of 8 hours independent study per week for completing lab and project work, private study and revision.
See also Unit timetable information
FIT1007 or GCO1812 or FIT2034 or equivalent.
CSE3450, GCO3823, GCO4823