ELEC5619 - Object Oriented Application Frameworks

Unit Coordinator: Rafael A. Calvo

Aims & Outcomes

This unit aims to introduce students to the main issues involved in producing large Internet systems by using and building application frameworks. Frameworks allow great reuse so developers do not have to design and implement applications from scratch, as students have done in other web development units. The unit lays down the basic concepts and hands on experience on the design and development of enterprise systems, emphasizing the development of systems using design patterns and application frameworks.
A project-based approach will introduce the problems often found when building such systems, and will require students to take control of their learning. A project-based approach will introduce the problems often found when building such systems, and will require students to take control of their learning. Several development Java frameworks will be used, including Spring, Hibernate, and others. Principles of design patterns will also be studied.
At the end of the unit you would have built an application for a framework with over 1M lines of code.

Local Resources

UoS Outline - Project - Project Timetable -Deliverables -- Lab and Tools 

Timetable

Labs: Monday 4-7PM (Lab 424, Link Eng Bldg)
Lecture: Wednesday 11-12 (LT 450)
Week Title  Slides Activity
1 Introduction: About this course
Design Patterns
PDF
PDF
Project Conceive. Groups, Brainstorming, First draft proposal
27/7
Application Frameworks PDF
2-3 Spring PDF Spring, Ant, Junit, MVC
3,10/8
4-5 Hibernate
Maven

Jorge Villalon: Google Web Toolkit (GWT) programming. GWT tutorial.
PDF
PDF
[update]
Port MVC app to Hibernate
Hibernate tutorial
17,24/8
6
Architecture Evaluations

PDF
[Reader]
Finish Hibernate activity
Peer-review feedback (with copy to elec5619 at gmail due on Friday 4/9.
31/8
7
Sakai Introduction:
  1. Introduction
  2. architecture,
  3. setup and configuration

Special Lecture on September 10, 11am (LT, Level 1 of SIT BLdg)
Dr. Ian Boston - Univ Cambridge (Sakai 3.0)


PDF1
PDF2
Project
7/9
8
Mid Term Exam (30%) - in lecture
Project Conceive. Final Proposal

N/A
Project
14/9

9 Sakai persistance and security
  1. data storage models
  2. entities
  3. security
Application Frameworks


Sakai Programers Cafe
Slides
Sakai AppBuilder

Reader
Project
This week you should have a complete Spring web app

vacation
10
WebML and CASE tools (Webratio)
 [PDF]
Project
5/10 is public holiday

11 Scalability, Workload and capacity  [PDF]
Project
12/10

12
Test Driven Development  (Dr. Nick Carroll - Thoughtworks)
PDF Project
Final applications (20%)
With Sakai and group integration
19/10
13 Research topics
Course Closure
[Slides]
[Slides]
Project presentations (10%)
and Journals (10%)
26/10
Open Book Exam Exam (30%)

Assessment:
Mid-term exam (30% - may include questions about your project), Project (40%), Final Exam (30%, may include questions about your project)

Recommended Book (for the Spring component)

Readings (all are on e-reserve)
:
For a better idea of what we expect by the end of the year check out the previous projects with Wink demos and source code)

Resources: