-
This is a desktop application for managing maker spaces. It has a GUI but most of the user interactions happen through a CLI (Command Line Interface).
-
It is a Java application intended for managing 3-D prints, but has capabilities to handle other forms of manufacturing machines as well.
-
It is written in OOP fashion. It provides a reasonably well-written code that is based on Address Book (level 4).
-
Features:
-
A GUI for displaying all available machines at a glance.+
-
Two different access levels, for two separate target profiles (see below)
-
Ability to manipulate prints, queues, and machines, depending on access level
-
More test cases, including automated GUI testing.
-
Support for Build Automation using Gradle and for Continuous Integration using Travis CI.
-
-
Target user profile:
-
There will be two categories of users for the app. The main user will be students using the makerspace. The second user will be the lab manager.
-
has a need to manage a significant number shared devices (lab manager)
-
has a need to prioritize and queue certain print jobs over others (lab manager)
-
has a need to look up when certain devices will be free for use (students)
-
prefers typing over mouse input
-
is reasonably comfortable using CLI apps
-
-
-
Value proposition: see 3D printers are being used, and the estimated time left until the equipment will be free. This will reduce system loss and increase the efficiency of all parties involved.
-
Some parts of this sample application were inspired by the excellent Java FX tutorial by Marco Jakob.
-
Libraries used: TextFX, ControlsFX, Jackson, Guava, JUnit5, jBcrypt
-
Original code base: Address Book (level 4) project created by SE-EDU initiative at https://github.com/se-edu/ == Licence : MIT