Skip to content | Change text size

FIT3011 - Enterprise programming

6 points, SCA Band 2, 0.125 EFTSL

Undergraduate Faculty of Information Technology

Leader: D Thomson

Offered

Gippsland First semester 2007 (Day)
Gippsland First semester 2007 (Off-campus)
Hong Kong CID Second semester 2007 (Off-campus)
Malaysia First semester 2007 (Day)
Singapore First semester 2007 (Off-campus)

Synopsis

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, authorization, encryption, transactions. Exterprise application software development tools. Access to the University's computer systems through an Internet service provider is compulsory for off-campus students.

Objectives

  1. Understand the various ways in which a database application may be scaled to the enterprise level, including:
    1. applications being split between clients and servers;
    2. servers being split between application servers and database servers;
    3. application servers being split into clusters of application servers.
  2. Be able to evaluate the advantages and disadvantages of single-tier, two-tier and multi-tier architectures.
  3. Be aware of some of the pitfalls (and ways to avoid or minimise them) of distributed applications, including:

  1. performance problems due to network latency and bandwidth;
  2. security problems when transmitting data over an untrusted network;
  3. transactional problems when transactions must be distributed over multiple servers.
4. Be able to evaluate when it is appropriate to use enterprise programming techniques, and when simpler solutions will suffice.
5. Be able to configure an enterprise application and application server to take advantage of advanced capabilities such as:
  1. hot deployment;
  2. clean shutdown;
  3. clustering;
  4. farming;
  5. load balancing;
  6. automatic fail-over.
6. Be able to design and implement an enterprise application that makes appropriate use of the following:
  1. DBMSs;
  2. distributed components;
  3. messaging services;
  4. security (authentication, authorization and encryption);
  5. transactions;
  6. fat clients;
  7. thin (web) clients.
7. Be familiar with a selection of software tools (both GUI and command-line) to speed enterprise application development.
8. Accept the importance of client and server operating system platforms other than Windows, and therefore the need for technologies that support multiple platforms.
9. Appreciate the value that an application server adds to an application with remarkably little additional coding effort.

Assessment

Exam:60%; Assignments:40%

Contact hours

one x 2hr lecture/week, one x 2hr tutorial/week

Prerequisites

FIT1007 or GCO1812 or equivalent

Prohibitions

CSE3450, GCO3823, GCO4823 (Translation set:GCO3823)