Use Cases - alice-adventures/Alice GitHub Wiki

Use Cases

The most common uses cases in Alice are depicted in the next diagram:

Developers provide libraries and tools for a Problem Source. For example, in Project Euler there are two interfaces that Participants can implement, plus other artifacts to run a solution in a closed environment. Other Problem Sources required to implement Games: interactive programs with which Participants can compete and test their code (e.g. for Codingame). This includes the game logic and graphics. (It is necessary to implement also a kind of game engine to facilitate these tasks).

First of all, Participants must register themselves in Alice. Once registered, they can provide solutions to any available Problem Source supported in Alice. This usually consist in accessing the specification of problem or puzzle and implementing the appropriate interface. There is no limit to this: Participants can use any external library, multitasking, resources in Alire, etc. They provide they solutions from their own repository, and can access also repositories from other registered Participants.

If certain problem is not available in the Problem Source (e.g. nobody solved yet Project Euler problem 42), they can share the problem specification obtained from the Problem Source, possibly accompanied with input data files, as well as provide the solution. The problem specification is incorporated then to the Problem Source pool to share it with other Participants.

Participant interaction can take place in a forum, e.g. forum.ada-lang.io is a good candidate.

See also Collaboration Roles, Collaboration Model