aaron-plahn / UniversIT

This toy University Infromation System is a class project for a Java class I am teaching

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

UniversIT

This toy University Infromation System is a class project for a Java class I am teaching.

Background

For this project, students in the class have divided up modules for a simply-scoped prototype of a University Information System.

Motivation

When learning a new technology, it is necessary for classroom instructors and textbook authors to invent simplistic examples that help illustrate the basic concepts. However, this leaves many gaps when it comes time to solve a larger scope problem. It's not unlike drilling students on the grammar of a foreign language without ever allowing them to hold conversations with native speakers.

The purpose of the project is to give students the chance to encounter closer to real-world complexity as well as some issues that come up when collaborating on a software project.

Outcomes

After completing this project, students will

  • demonstrate the ability to consider the tradeoffs of multiple designs for a feature in an object-oriented system
  • write a simple design document to summarize these tradeoffs and get buy-in from the team
  • write a small module that requires several interdependent classes using Java
  • communicate with teammates about interdependencies with other modules
  • read and provide meaningful feedback on peers' code
  • use peer and instructor feedback to refine design and implementation
  • manually test their and their classmates' work (note that automated testing is not part of the scope of the course)
  • explain how source code management tools such as git and colalboration platforms such as GitHub can be used to support collaborative coding
  • participate in pair programming sessions and explain the benefits of this approach
  • explain why code reviews are important both to quality assurance and knowledge transfer

About

This toy University Infromation System is a class project for a Java class I am teaching

License:MIT License


Languages

Language:Java 100.0%