This course will be based on the following activities:
- Lectures: theoretical introduction to the main contents of the course. Student participation and collaborative discussion of problems will be encouraged.
- Classes in the lab: students work with a computer in programming exercises about the most important concepts.
- Web application project: students must work in pairs on a project throghout the course. The project will consist in the design and development of a relatively complex Web application based on a database, given a set of realistic requirements and constraints. Instructors will guide and help the students to complete their project both in class and tutoring sessions.
The project will play a major role in the development of the course. The project will contribute not only to help students to achieve the specific outcomes, but also some of the program outcomes:
- Students must apply previous knowledge about programming, transport protocols (TCP) and application protocols (HTTP, DNS).
- Students must design a Web application given a set of realistic requierements and constraints.
- Students must design the Web application taking into account their responsibility to properly protect private information about its users and information security in general.
- Students must present and defend their project orally.
- Students will be encouraged to apply recent Web programming technologies, not presented by instructors in class, to their projects. Therefore, students are expected to develop their ability to autonomously learn, which is basic for their future professional life.
Assessment of the project will be based not only on technical aspects but also on the achievement of the above-mentioned program outcomes.