Web and Software Engineering
The University of Sydney
spcr
spcr

ELEC5619 Object Oriented Application Frameworks

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 EBUS3004 and EBUS4001. 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.


Session Chapter Title Activity
1 1 Introduction: About this course
Design Patterns
1 2 Application Frameworks Setup
2-3 3 Spring Ant, Junit, MVC
4-5 4
Appendix
Hibernate
Maven
Port MVC app to Hibernate
6 5 Architecture Evaluations Project Design
Quiz (10%)
7 NA Sakai Introduction:
  1. Introduction
  2. architecture,
  3. setup and configuration
Project
8 6 Sakai persistance and security
  1. data storage models
  2. entities
  3. security
Sakai presentation layer:
Sakai contexts, tools
Project

9 7 Service Oriented Architectures and Testing
(invited Speaker: Jim Webber - tbc)


Project

vacation
10 8 Tibco Frameworks. Dr. Karsten Kumpf

Project
Prototype (10%)
11 8 WebML Project
12 9 An eLearning software development process Project
Final applications (10%)
13 10 The Semantic Web
Course Closure
Project presentations (10%)
and Journals (10%)
Appendix 1: A Bibliography management system
Appendix 2: your own eLearning Project
Appendix 3: Development Support tools: Maven, Subversion, Eclipse
Open Book Exam


Resources:
Readings:
  • Introduction (Chapter 1) of Design Patterns: Elements of Reusble Object-Oriented Software. Gamma, Helm, Johnson and Vlissides
  • Crossing Chasms: A pattern Language for Object-RDBMS Integration. K. Brown and B. Whitenack in Pattern Languages of Program Design by Vlissides. 1996.
  • Ralph E. Johnson. "Frameworks = (components + patterns)". Communications of the ACM. 40 (10). pp 39-42. DOI
  • Mohamed Fayad and Douglas C. Schmidt. "Object-oriented application frameworks". Communications of the ACM. 40 (10). pp 32-38. DOI
  • Rod Johnson. "J2EE Development Frameworks". IEEE Computer. January 2005. pp 107-110.
  • Mohamed Fayad, Douglas C. Schmidt., Ralph Johnson. Building Application Frameworks. John Wiley & Sons 1999. (Chapters 1 ad 2)
  • M. Matera and A. Maurino and S. Ceri and P. Fraternali. "Model-driven design of collaborative web applications". Softw. Pract. Exper. 33 (8). pp 701-732. DOI
  • Maven: a developer's notebook. Vincent Massol, Timothy M. O'Brien. O'Reilly 2005 - chapter 1
spcr
Print Friendly VersionPrinter format
spcr
Email a FriendEmail to a friend
spcr
Large text
spcr
Default text
spcr
textsize
spcr