COSC 617: Advanced Web Development

Course Home

Schedule

Notes

Readings

Assignments

Project

Midterm

Fall 2007 - Readings and Links

Direct links to papers are provided wherever possible. Other pages may be available via Docutek

Concepts and Theory

Java BluePrint: Model-View-Controller

Boehm, B.W. A spiral model of software development and enhancement IEEE Computer, May 1988, 61-72

Lerman, C., and Victor Basili Iterative and incremental developments. a brief history IEEE Computer, June 2003

Parnas, D.L. On the Criteria to be Used in Decomposing Systems into Modules .Communications of the ACM , Vol. 15, No. 12, December 1972, pages 1053-1058.

Beck, K. Embracing Change with Extreme Programming. IEEE Computer. 32(10), p. 70-77, 1999.

Cusumano, M., and Selby, R. How Microsoft Builds SoftwareCommunications of the ACM, vol. 40, No. 6, pp. 53-62, June 1997.

Royce, W. Managing the Development of Large Software SystemsProceedings of the 9th international conference on Software Engineering, 1970.

Laplante, P., and Neill, C. "The Demise of the Waterfall Model Is Imminent" and Other Urban Myths" ACM Queue, 1(10), February 2004

Object-Relational Mapping

Ambler, S. Mapping Objects to Relational Databases: O/R Mapping In Detail

UML

Bell, D. UML basics: An introduction to the Unified Modeling Language

ArgoUML open-source UML modeling tool

Agile Development

Manifesto for Agile Software Development

Ambler, S. Examining the Agile Manifesto

Ruby and Rails

The Ruby language

Ruby on Rails homepage.

Ruby Central

Ruby Forge

Crossing Borders Rail Migrations

Crossing Borders A Rails case study

Crossing Borders What's the secret sauce in Ruby on Rails?

Rails Deployment: About "Capistrano: Automating Application Deployment"

Ruby on Rails HowTo Wiki

Code Snippets

Rails Cookbook

Securing your Rails Application

Testing the Rails

Make Rails Play Nice With Legacy Database

AJAX

McLaughlin, B. Mastering Ajax, Part 1: Introduction to Ajax, and the other articles in the series

Aspect-Oriented Programming

A look at aspect-oriented programming

Java Web Developmment

Pursnani, V. An Introduction to Java Servlet Programming

A Really Easy Introduction to Servlets and JSP. Part I

JSP Tutorial

Coulon, X. Hibernate simplifies inheritance mapping

Cengija, D. Hibernate Your Data

Rustad, A. Ruby on Rails and J2EE: Is there room for both?

Farley, J. Microsoft .NET vs. J2EE: How Do They Stack Up?

Other Sytems

PHP MySQL Tutorial, and a Similar Tutorial

Design Patterns

Martin Fowler: Patterns of Enterprise Application Architecture

Testing

Testing, fun? Really?

Web Services

Costello, R. Building Web Services the REST Way

Gottschalk, K., Graham, S., Kreger, H., and Snell, J. Introduction to Web Services Architecture

Fielding, R.T., and Taylor, R.N. Principled Design of the Modern Web Architecture

Accessibility & Universal Usability

Introduction to Web Accessibility

World Wide Web Consortium's Web Accessibility Initiative

Shneiderman, B., and Hochheiser, H. Universal usability as a stimulus to advanced interface design

Mobile Web

Jones, R. Creating Web Content for Mobile Phone Browsers, Part 1, and Part 2

Ruby on Rails, HowToProvideAlternateViewsForMobileDevices

Guides on reading and writing research papers

How to Read an Engineering Research Paper

How to Read a Research Paper, so that you will be able to use it later

Ben Bederson's notes on how to read a research paper.

How to write a great research paper

How to give a good research talk

Cook Library on avoiding plagiarism