This course aims to introduce you to the development of complex business applications. You will gain knowledge of multi-user and real-time applications using a combination of the latest tool set environments. You will learn and experience a 2-tiered (client-server) and 3 tiered application architecture. Exposure to changing technologies will equip you for the various interaction styles required in our user interface front ends. Examination of various aspects and tools required in the creation of applications, especially in a programming team environment.

Objectives/Learning Outcomes/Capability Development

Upon completion of this course, it is expected that the students will have acquired the knowledge & skills to be able to approach application development in a professional manner. These include the user interface design, implementation, documentation and testing of applications. This is to be achieved through students acquiring: • Data Base Management Systems at an advanced level. Issues in designing and building the corporate database: performance, security and integrity issues, distributed databases, data integrity, transaction processing. • Development of various business application components, such as forms, reports, etc. • Using a Change management system for application development, especially in a programming team environment. • Use of Contemporary Client Server architectures and structures (2-tiered) and the current 3-tiered architecture. • Examine distributed databases and distributed processing. Designing/Implementing a distributed system. • Multi-Platform application development. Enterprise wide data/information issues. • User Interfaces issues (design and implementation), that include graphical (direct manipulation) interfaces and web interfaces (hypertext, form filling and limited direct manipulation). • Contemporary tools to equip the application development environment.

Capabilities

At the conclusion of this course you should have the following capabilities to: 1. Professional approach to application development for business using an object orientated paradigm 2. Recognise and describe various database issues, how they fit into the various architectures, and the affect of distributed database systems and the implication of database design to application development. 3. Usage and development of business application components/services, with a focus on modularity and re-use. 4. Explain the different types tools required in a development environment and describe how they are used within a development environment. 5. Recognise and describe the various application architectures created. 6. Using a toolset to aid the development of application in an Object Orientated environment. 7. Evaluate and Test the application developed against the specification, users and tasks. 8. Design and implement applications to solve practical business application problems. 9. Application of the interface design principles and the event model to enable creation of an interactive interface for a business application. 10. Communicate orally the implemented architecture of a created system, through the uses of tools and techniques, conceptual architectures and models, and through internal documentation as required by the standards used.

Overview of Learning Activities

The learning objectives of all modules in this course build upon each other, reflecting the interwoven nature of the course. To assist you in the achievement of the above objectives, the following resources are provided:

Lecture and reading material The lectures (compulsory attendance) and reading material are intended to support and focus the student learning. This material as well as guiding you through the various theories of application development will assist you in preparation for you workshop and practical assignment based on a business case study.

Workshops Compulsory workshops have been scheduled each week of the semester; these will give you an opportunity to put into practice the various aspects discussed above. This will be done through exercises, discussion with the course tutors/lectures and fellow students. These workshops will be organised to relation closely to the lecture material for that week.

Assignments In order to enhance the understanding the students gain through the lecture and workshop activities, the assignment work will allow students to apply there knowledge to a given business case study. The requirements of the system created for this case study will be closely aligned with the workshop activities. Opportunity will be given in the high levels of the assignment work to take the system further than the workshop activities.

Course Website The website will provide lecture and workshop material that will be used on a weekly basis.

Summary • Create a business application, in stages, to be 3-tiered architecture, i.e. File class for database access, business classes and graphical front-end tier. • Create generic data access class, first handling a simple access database and then an XML data document. • Creating generic components that will be used in the tutorials business case and the business cases allocated to students for their assignment work • Place tutorial work into change control repository • Introductory application development exercises, debugging exercises and compilation activities. Validate and Test components meeting specified requirements. • Create a business application, solving the standard business problems. • Creating simple datacapture forms, and create business reports shown on GUI interfaces and HTML browser. • Ultimately solving of a business problem. This will be done in the tutorials for a business case and in the assignment work with an allocated case study.

Overview of Learning Resources

TBA

Overview of Assessment

ASSESSMENT: The assessment tasks that a student in this course is required to complete are: Practical assignments 50% Final Examination (2 hours) 50%