LPOO :: 2018/19 2nd Semester


LPOO Project (2019)

For the LPOO course final project you will develop a text-based game in Java, taking into consideration the following points:


As an extra requirement, your game should also be playable using Swing as well as Lanterna. If you followed a MVC architecture, as recommended, then you should only have to change the View part of your architecture. Another idea is to implement the AbstractFactory pattern having one factory for Lanterna and another for Swing. Both these factories would know how to create the correct Models, Views, and Controllers.


The project should be done in groups of two students. If the number of students in a class is odd, one group will have one or three elements.

Deliverables and deliveries

You should deliver the following two artifacts:

These two artifacts should be continuously available in the project’s git repository and will be evaluated in two distinct points in time:

In both of these deliveries the code and the report should reflect your implementation up to that point in time. The features reported as implemented should be properly tested and bug-free. Existing unit tests should all pass. The use of design patterns should be properly motivated and described using UML.