SWE 432: Design and Implementation of Software for the Web
Professor: Jeff Offutt, http://www.cs.gmu.edu/~offutt/
OBJECTIVE:
This course teaches students how to develop software for web applications.
The concepts of client-server computing,
theories of usable graphical user interfaces,
and models for web-based information retrieval and processing
are covered.
In the past few years,
the way software is built has been rapidly changing.
As use of the world wide web has shifted
from information presentation
to information gathering
to direct customer sales (e-commerce)
to enterprise applications,
the amount and complexity of software has steadily been increasing.
This course will help students use
new models of programming and new technologies
to design and develop high quality, usable, web software.
LEARNING OUTCOMES:
- Knowledge of quantitative engineering principles for how to build
software interfaces, including web-based, that are usable.
- Understanding the client-server and message-passing computing models in the
context of web applications
- Knowledge for how to build usable, secure and effective web applications
- Theoretical and practical knowledge about how data are stored and shared in web
applications
- Component software development using specific technologies including PHP,
Java servlets, Java Server Pages, Javascript, XML and JDBC
- Understanding that usability is more important than efficiency for almost all
modern software projects, and often the primary factor that leads to product
success
CONTENT & STUDENT RESPONSIBILITIES:
After completing this course, students should understand how to design
usable software interfaces
and implement them on the web,
know how to build software that accepts information from users across
the web and returns data to the user,
and
know how to interact with database engines to
store and retrieve information.
Specific topics that are included are
HTML,
CGI programming,
Java,
Java applets,
Javascripts,
and Java servlets.
SWE 432 covers the software design, interface design,
and development side of web applications.
Programming skills are required and
students are expected to learn HTML on their own.
The class will be very practical (how to build things)
and require several small programming assignments.
Prerequisite: Math 125 and CS 211
The detailed course syllabus is on the instructor's website:
http://www.cs.gmu.edu/~offutt/classes/432/