This report documents the development of a software system for automaticscheduling called Hazel. This system is comprised of a server where an automaticscheduler has been implemented, as well as a web and mobile applicationthat allows users to interact with the system. The scheduler hasbeen developed with the functional programming language Haskell and usesa SAT-solver.Manual scheduling has long been the bane of managers everywhere, asmatching the needs of the employer with those of the employee is often adifficult and time-consuming task. There already exists several automaticschedulers that attempt to solve this problem. The issue with said schedulersis that thay tend to be expensive, or developed to only fulfill the needsof a particular organisation. As such, this project has developed a genericscheduler that may be used within several types of smaller organisations.
展开▼