Contributors Forks Stargazers Issues AGPL License


Logo

SchoolExam

project_description
Explore the docs »

Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgments

About The Project

SchoolExam has originated from a design thinking process developed as part of a course about software engineering with the goal of improving the exam process and exam management at schools.

Built With

For testing

(back to top)

Getting Started

There are multiple options available for trying out the SchoolExam backend.

Prerequisites

For running the backend in a local docker environment the following prerequisites are required.

Alternatively, run the backend without Docker. This requires a few other requirements.

  • PostgreSQL database (either local or hosted)
  • Install .NET 6.0

Installation

For running the backend with Docker, use the following steps.

  1. Clone the repo
git clone https://github.com/SoftwareEngineering-WS2022-CoCoMonkeys/schoolexam.git
  1. Run docker compose
docker-compose up

For running the backend without Docker, the following steps are required. Before running the backend, the environment variable DATABASE_URL for the database connection string must be set using the format postgres://<user>:<password>@<host>:<port>/school_exam. Additionally, there is the possibility to fill the database with dummy data. This can be achieved by setting the environment variable RESTET_DATABASE=1.

  1. Clone the repo
git clone https://github.com/SoftwareEngineering-WS2022-CoCoMonkeys/schoolexam.git
  1. Restore packages
dotnet restore
  1. Build
dotnet build sources
  1. Run the web service
dotnet run --project src/SchoolExam.Web/

(back to top)

Usage

Serves as a backend for the Word add-in and the Correction UI. Therefore it can be used to provide a web API for those those components.

(back to top)

Roadmap

  • implement various analytics for individual students to analyze and optimize teaching at schools
  • support randomization of tasks
  • support exams (writing tasks) that have a grading scheme different from points
  • add additional pages dynamically during exams based on demand
  • API for review such that points can be corrected based on complaints from students
  • store correction overlay independent from scanned PDF
  • image recognition for automized correction (multiple choice, matching)

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the AGPL License. See LICENSE.md for more information.

(back to top)

Contact

Felix Rinderer - rinderer@in.tum.de

Project Link: https://github.com/SoftwareEngineering-WS2022-CoCoMonkeys/schoolexam

(back to top)

Acknowledgments

  • #wirfuerschule for the insights on the current situation in schools
  • Capgemini for the valuable workshops with feedback for the architecture
  • ISSE chair at the University of Augsburg for giving us room to implement our idea
  • adesso for providing us a productive collaborative workspace

(back to top)