Module N0097 (2007)
Syllabus page 2007/2008
06-N0097
Advanced Software Workshop
Level 4/M
Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus
The Module Description is a strict subset of this Syllabus Page. (The University module description has not yet been checked against the School's.)
Changes and updates
Proposed new module for 2008/09. Draft only; not yet approved.
Relevant Links
Outline
Building on students' prior knowledge of programming in Java (or a closely related language), the module introduces specific technologies and toolkits for building internet-based software. Through lectures and extensive practical work, the module prepares students to make an effective contribution to building large internet-based software systems as professional software engineers.
Aims
The aims of this module are to:
- introduce and analyse technologies, standards and toolkits for secure enterprise level internet-based software
- develop skills for designing and implementing software using such technologies
Learning Outcomes
| On successful completion of this module, the student should be able to: | Assessed by: | |
| 1 | employ technologies for the world-wide web, web-based systems and component software | Exercises |
| 2 | use software toolkits for internet-based software | Exercises |
| 3 | make use of application frameworks for web-based systems | Exercises |
| 4 | develop large internet-based software systems from specification through design and implementation | Exercises |
Restrictions, Prerequisites and Corequisites
Restrictions:
Students without substantial experience of programming with Java (or a closely related language) will be required to take 06-N0096 (Integrated Sofware Workshop) instead of this module.
Prerequisites:
No formal prerequisite modules.
However, as noted under Restrictions, substantial experience of
programming with Java (or a closely related language) is essential.
Co-requisites:
None
Teaching
Teaching Methods:
2 hrs lecture, 1 hr tutorial and 3-5 hrs laboratory
sessions per week
The module is taught through a combination of lectures, tutorials
and laboratory work. The module has a strong practical element.
The lectures introduce and develop the major topics of
internet-based software development. Practical work is assigned,
discussed and assessed through tutorials.
Contact Hours:
Assessment
- Sessional: Continuous assessment (100%).
- Supplementary (where allowed): As the sessional assessment
Recommended Books
| Title | Author(s) | Publisher, Date |
| Java Persistence with Hibernate | Christian Bauer & Gavin King | Manning, 2006 |
| Spring in Action (2nd ed.) | Craig Walls with Ryan Breidenbach | Manning, 2007 |
| Professional Java Development with the Spring Framework | Rod Johnson, Juergen Hoeller, Alef Arendsen, Thomas Risberg & Colin Sampaleanu | John Wiley & Sons, 2005 |
| Wicket in Action | Martijn Dashorst & Eelco Hillenius | MEAP, 2007 |
| Enjoying Web Development with Wicket (Covering Wicket 1.3) | Ka Iok Kent Tong | |
| How to Break Web Software: Functional and Security Testing of Web Applications and Web Services | Mike Andrews & James A. Whittaker | Addison Wesley, 2006 |
Detailed Syllabus
-
Advanced Programming (7)
- Graphical user interfaces
- Applets
- Database connectivity
- Threads and synchronization
- Network communication
- Remote method invocation
- Web technologies (7)
- Languages for the web, including HTML, WML, CSS, DOM, XML and DTD
- Client-side processing, including JavaScript and VBScript
- Server-side processing, including server-side includes, CGI, servlets, JSP and ASP
- Scripting languages such as PHP and Python
- Server-side application design (7)
- State handling, session tracking
- Connection pools
- Design criteria: Reliability, consistency, security, maintainability
- Component techniques: ActiveX, JavaBeans
- Distributed Components (6)
- Component technologies: CORBA, COM, EJB
- Web services
- Naming services
- Web application frameworks (10)
- Design criteria: modularity, scalability, availability
- Model-view-controller paradigm
- View frameworks, such as Echo
- Model frameworks, such as Spring
- Design patterns for web applications (5)
Last updated: 27 Jan 2008
Source file: /internal/modules/COMSCI/2007/xml/N0097.xml
Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus