Note: This unit is an archived version! See Overview tab for delivered versions.
ELEC5619: Object Oriented Application Frameworks (2010 - Semester 2)
Download UoS Outline | Back to Master of Professional Engineering (Accelerated) (Biomedical) (2021)
Unit: | ELEC5619: Object Oriented Application Frameworks (6 CP) |
Mode: | Normal-Day |
On Offer: | Yes |
Level: | Postgraduate |
Faculty/School: | School of Electrical & Computer Engineering |
Unit Coordinator/s: |
Prof Calvo, Rafael
|
Session options: | Semester 2 |
Versions for this Unit: | |
Site(s) for this Unit: |
http://www.ee.usyd.edu.au/~rafa/elec5619/ |
Campus: | Camperdown/Darlington |
Pre-Requisites: | None. |
Brief Handbook Description: | 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 ELEC3610 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. |
Assumed Knowledge: | Java programming, and some web development experience are essential. Databases strongly recommended |
Lecturer/s: |
Prof Calvo, Rafael
|
|||||||||||||||||||||||||
Timetable: | ELEC5619 Timetable | |||||||||||||||||||||||||
Time Commitment: |
|
|||||||||||||||||||||||||
T&L Activities: | Project Work - own time: Project Presentation: Final presentations Tutorial: Tutorial/Labs |
Attributes listed here represent the key course goals (see Course Map tab) designated for this unit. The list below describes how these attributes are developed through practice in the unit. See Learning Outcomes and Assessment tabs for details of how these attributes are assessed.
Attribute Development Method | Attribute Developed |
Learn to design a large web application using OO Application frameworks. | Design and Problem Solving Skills (Level 4) |
Advanced Java programming skills using and developing frameworks. | Discipline Specific Expertise (Level 4) |
Students write a proposal document and orally present to the class and external assessors. | Professional Communication (Level 3) |
Students develop a web application in groups of 4-5. Each member is responsible for a component. | Teamwork and Project Management (Level 3) |
For explanation of attributes and levels see Engineering/IT Graduate Attribute Matrix 2009.
Learning outcomes are the key abilities and knowledge that will be assessed in this unit. They are listed according to the course goal supported by each. See Assessment Tab for details how each outcome is assessed.
Design and Problem Solving Skills (Level 4)Assessment Methods: |
|
||||||||||||||||||||||||||||||
Assessment Description: |
Project: Project: Prototype, Final application, Presentation, Learning Journal. Mid-Sem Exam: concepts and programming languages used in the project Proposal document: describing the group and individual components of the project Final Exam: Final exam |
||||||||||||||||||||||||||||||
Assessment Feedback: | Will be provided during each lab session, and after submission of each assignment (within 2 weeks) | ||||||||||||||||||||||||||||||
Grading: |
|
||||||||||||||||||||||||||||||
Policies & Procedures: | The faculty attempts to maintain consistency and quality in its T&L operations by adhering to Academic Board policy. These policies can be found on the Central Policy Online site. A brief summary of the relevant T&L policies that should be referred to while filling in these forms can be found at the Faculty of Engineering and Information Technologies Policy Page. |
Recommended Reference/s: |
Note: References are provided for guidance purposes only. Students are advised to consult these books in the university library. Purchase is not required.
|
Link to Reading List: | http://www.ee.usyd.edu.au/~rafa/elec5619/ |
Library e-Reserve: | Please check the Library e-Reserve site for additional course resources. |
Online Course Content: | http://www.ee.usyd.edu.au/~rafa/elec5619/ |
Note on Resources: |
Readings (all are on e-reserve): * Ralph E. Johnson. ``Frameworks = (components + patterns)``. Communications of the ACM. 40 (10). pp 39-42. (core - mid-term) DOI * Mohamed Fayad and Douglas C. Schmidt. ``Object-oriented application frameworks``. Communications of the ACM. 40 (10). pp 32-38. (core- mid-term) DOI * Rod Johnson. ``J2EE Development Frameworks``. IEEE Computer. January 2005. pp 107-110. (core- mid-term) * Design Patterns: Elements of Reusble Object-Oriented Software. Gamma, Helm, Johnson and Vlissides. Introduction (Chapter 1) (Library) (core - mid-term) * Maven: a developer`s notebook. Vincent Massol, Timothy M. O`Brien. O`Reilly 2005 - chapter 1 (core- mid-term) * Chapter 5. Object Oriented Design and Patterns. Cay Horstmann. Wiley, 2002 (library) (core - mid-term). * Mohamed Fayad, Douglas C. Schmidt., Ralph Johnson. Building Application Frameworks. John Wiley & Sons 1999. (Chapters 1 ad 2) (Library) (core - final) * Essential Software Architectures. Ian Gorton. Springer 2006 - Chapter 1 (core - final) * Software Architecture in Practice. Len Bass, Paul Clements and Rick Kazman, Addison-Wesley, 2003 - Chapter 11 ``The ATAM``. * Ajax in action. Dave Crane, Eric Pascarello with Darren James. [library] * Crossing Chasms: A pattern Language for Object-RDBMS Integration. K. Brown and B. Whitenack in Pattern Languages of Program Design by Vlissides. 1996. (Library) (informational) * 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. (informational) DOI |
Note that the "Weeks" referred to in this Schedule are those of the official university semester calendar https://web.timetable.usyd.edu.au/calendar.jsp
Week | Description |
Week 1 | Introduction: About this course |
Design Patterns | |
Week 2 | Spring |
Week 3 | Spring |
Week 4 | Maven |
Hibernate | |
Week 5 | Maven |
Hibernate | |
Assessment Due: Proposal Document | |
Week 6 | Architecture Evaluations |
Assessment Due: Mid-Sem Exam | |
Week 7 | 3. setup and configuration |
Sakai Introduction: | |
1. Introduction | |
2. architecture, | |
Week 8 | Mid Term Exam (30%) - in lecture |
Week 9 | Sakai persistance and security |
1. data storage models | |
Presentation Layer Frameworks: JSP, JSF, RSF | |
2. entities | |
3. security | |
Week 10 | Application Frameworks |
Week 11 | Ajax architecture |
Week 12 | WebML and CASE tools (Webratio) |
Test Driven Development with JUnit4 and Mockito | |
Week 13 | Text Mining and The Semantic Web |
Course Closure | |
Assessment Due: Project | |
Exam Period | Assessment Due: Final Exam |
Course Relations
The following is a list of courses which have added this Unit to their structure.
Course Goals
This unit contributes to the achievement of the following course goals:
Attribute | Practiced | Assessed |
Design and Problem Solving Skills (Level 4) | Yes | 25.43% |
Discipline Specific Expertise (Level 4) | Yes | 57.15% |
Fundamentals of Science and Engineering (Level 4) | No | 0% |
Information Skills (Level 3) | No | 0% |
Professional Communication (Level 3) | Yes | 8.72% |
Professional Values, Judgement and Conduct (Level 3) | No | 0% |
Teamwork and Project Management (Level 3) | Yes | 8.72% |
These goals are selected from Engineering/IT Graduate Attribute Matrix 2009 which defines overall goals for courses where this unit is primarily offered. See Engineering/IT Graduate Attribute Matrix 2009 for details of the attributes and levels to be developed in the course as a whole. Percentage figures alongside each course goal provide a rough indication of their relative weighting in assessment for this unit. Note that not all goals are necessarily part of assessment. Some may be more about practice activity. See Learning outcomes for details of what is assessed in relation to each goal and Assessment for details of how the outcome is assessed. See Attributes for details of practice provided for each goal.