Catalog Course Description:
Introduces students to the problems of developing commercial software applications including problems of scale, complexity, and change. Extends student ability to design and develop medium size programs. Provides experiences with larger, more complex systems, and system changes. Emphasizes team based development experiences.
Pre-requisites and Co-requisites:
INFO 153 IS Software III
Curriculum Role:
This is a core, required course for the BS in Information Technology and the BS in Information Systems and an approved elective for the BS in Software Engineering. It is taken by students in or following their sophomore year.
Course Rationale:
As more and more information systems are moved to the Internet, the use of Java as the implementation technology has become ubiquitious. This course provides a hands-on introduction to object-oriented design and Java as preparation for development of enterprise, web-enabled applications in subsequent courses.
Course Outcomes:
Upon successful completion of this course, a student will be able to:
Read the code and comments for a well-constructed client-server web application and be able to understand what it does
Make modifications and extensions to a well-constructed client-server web application given a set of change specifications
Evaluate alternative web application technologies.
Participate as a member of a team in constructing non-trivial Java-based web application.
Contribution to Program Educational Outcomes:
This course contributes to the program educational outcomes as follows:
Outcome Contribution
(a) Web Application programming
(b) Students design and implement web applications using object
oriented techniques
(c) Advanced Object-Oriented program design & implementation
(d), (f) Programming projects are done in pairs or small teams
helping students practice working together and
communicating about problems
(h) Introduction to the scope of the knowledge domain.
(i), (j) Object-oriented design and programming principles
(k) Key focus of the course.
Course Content:
Principal topics and the approximate number of weeks devoted to each are:
Server software: Apache, Tomcat, SSH, MySQL, Linux.
Evaluation techniques for web application technologies
Design and development of a non-trivial web application in a small team environment.
Professionalism in software development; Impact of size and complexity on code construction; Team standards and code ownership (1)
Presentation:
Note: Presentation method may vary somewhat from section to section.
Lectures, in-class exercises, discussion, and demonstration, and homework assignments.
Assessment:
Note: Assessment method may vary somewhat from section to section.
Evaluation is based on individual and pair homework assignments, quizzes, exams, and class participation.
|