letzplay/src/main/java/letzplay/ganttproject/GanttProject.java

228 lines
8.7 KiB
Java

package letzplay.ganttproject;
import letzplay.core.Quest;
import letzplay.core.Task;
import java.util.ArrayList;
import java.util.List;
import static letzplay.ganttproject.GanttProjectTriggers.*;
public class GanttProject {
private static Quest q1() {
Quest q = new Quest("Willkommen bei Letzplay!", "Viel spaß beim " +
"spielen ;)", 0, 100);
List<Task> tasks = new ArrayList<>();
tasks.add(new Task("Füge dich als Resource hinzu! ",
"Du bist der Projektplaner, also füge dich als erstes hinzu!",
res + add));
q.addTask(tasks);
return q;
}
private static Quest q2() {
Quest q = new Quest("Rollenerstellung", "Füge nun alle Rollen hinzu"
, 1, 50);
List<Task> tasks = new ArrayList<>();
tasks.add(new Task("Programmierung", "Füge Programmierung den Rollen " +
"hinzu", rol + add + programmierung));
tasks.add(new Task("Geschäftsführung", "Füge Geschäftsführung den Rollen " +
"hinzu", rol + add + geschäftsführung));
tasks.add(new Task("Marketing", "Füge Marketing den Rollen " +
"hinzu", rol + add + marketing));
tasks.add(new Task("Finanzen", "Füge Finanzen den Rollen " +
"hinzu", rol + add + finanzen));
q.addTask(tasks);
return q;
}
private static Quest q3() {
Quest q = new Quest("Erstelle geeignete Resourcen",
"Du hast 3 Personen zur verfügung: Chris ist der technisch " +
"affine, Franz ist geschickt mit dem Umgang von " +
"Menschen und Julia behält den Blick für das große " +
"ganze! Nun füge sie als Resourcen hinzu", 1, 50);
List<Task> tasks = new ArrayList<>();
tasks.add(new Task("Füge Chris hinzu", "Füge Chris unter Resourcen als" +
" Full-Stack-Developer hinzu", res + add + chris));
tasks.add(new Task("Füge Franz hinzu", "Füge Franz unter Resourcen " +
"als Marketing hinzu", res + add + franz));
tasks.add(new Task("Füge Julia hinzu", "Füge Julia unter Resourcen " +
"als Geschäftsführung hinzu", res + add + julia));
q.addTask(tasks);
return q;
}
private static Quest q4() {
Quest q = new Quest("Milestones", "Füge sie als Task hinzu und setzte sie als Milestone", 2,
50);
List<Task> tasks = new ArrayList<>();
tasks.add(new Task("Appentwicklung", "Füge Appentwicklung als Task " +
"hinzu und makiere es als Milestone", tsk + mil + appentwicklung));
tasks.add(new Task("Marketingplanung", "Füge Marketingplanung als Task " +
"hinzu und makiere es als Milestone", tsk + mil + marketingplanung));
tasks.add(new Task("Businessplan", "Füge Businessplan als Task " +
"hinzu und makiere es als Milestone", tsk + mil + businessplan));
q.addTask(tasks);
return q;
}
private static Quest q5() {
Quest q = new Quest("Tasks",
"Füge nun die Aufgaben als Task hinzu", 2, 50);
List<Task> tasks = new ArrayList<>();
tasks.add(new Task("Backend", "Füge die Aufgabe Backend hinzu",
tsk + add + backend));
tasks.add(new Task("Frontend", "Füge die Aufgabe Frontend hinzu",
tsk + add + frontend));
tasks.add(new Task("Infrastruktur", "Füge die Aufgabe Infrastruktur " +
"hinzu", tsk + add + infrastruktur));
tasks.add(new Task("Demo-Vorstellung", "Füge die Aufgabe " +
"Demo-Vorstellung hinzu", tsk + add + demovorstellung));
tasks.add(new Task("Werbekampagne", "Füge die Aufgabe Werbekampagne " +
"hinzu", tsk + add + werbekampagne));
tasks.add(new Task("Revenue-Model", "Füge die Aufgabe Revenue-Model " +
"hinzu", tsk + add + revenuemodel));
tasks.add(new Task("Umsatzplanung", "Füge die Aufgabe Umsatzplanung " +
"hinzu", tsk + add + umsatzplanung));
q.addTask(tasks);
return q;
}
private static Quest q6() {
Quest q = new Quest("Dependencies", "Füge nun alle Abhängigkeiten hinzu"
, 2, 70);
List<Task> tasks = new ArrayList<>();
tasks.add(new Task("Infrastruktur->Backend", "Backend ist von " +
"Infrastruktur abhängig", tsk + dep + infrastruktur + ":" + backend));
tasks.add(new Task("Backend->Frontend", "Frontend ist von " +
"Backend abhängig", tsk + dep + backend + ":" + frontend));
tasks.add(new Task("Frontend->Demo", "Demo-Vorstellung ist von " +
"Frontend abhängig",
tsk + dep + frontend + ":" + demovorstellung));
tasks.add(new Task("Appentwicklung->Werbekampange", "Die " +
"Appentwicklung muss vollständig sein, bevor die " +
"Werbekampagne starten kann",
tsk + dep + appentwicklung + ":" + werbekampagne));
tasks.add(new Task("Demo-Vorstellung->Werbekampange", "Das Produkt muss vorher Vorgestellt werden, bevor die " +
"Werbekampagne starten kann",
tsk + dep + demovorstellung + ":" + werbekampagne));
tasks.add(new Task("Revenue-Model->Umsatzplan", "Es muss erst klar " +
"sein wie Geld eingenommen werden kann, bevor der " +
"Jahresumsatz geplant werden kann",
tsk + dep + revenuemodel + ":" + umsatzplanung));
q.addTask(tasks);
return q;
}
private static Quest q7() {
Quest q = new Quest("Resourcenzuteilung",
"Du hast Resourcen zur Verfügung und Aufgaben die erledigt " +
"werden müssen, teile nun die Resourcen ein", 3, 50);
List<Task> tasks = new ArrayList<>();
tasks.add(new Task("Backend:Programmierung", "Teile die Aufgabe Backend" +
" der Programmierung zu",
tsk + res + backend + ":" + chris));
tasks.add(new Task("Frontend:Programmierung", "Teile die Aufgabe " +
"Frontend der Programmierung zu",
tsk + res + frontend + ":" + chris));
tasks.add(new Task("Infrastruktur:Programmierung", "Teile die Aufgabe Infrastruktur " +
"der Programmierung zu",
tsk + res + infrastruktur + ":" + chris));
tasks.add(new Task("Demo-Vorstellung:Marketing", "Teile die Aufgabe " +
"Demo-Vorstellung den Marketing zu",
tsk + res + demovorstellung + ":" + franz));
tasks.add(new Task("Werbekampagne:Marketing", "Teile die Aufgabe Werbekampagne " +
"den Marketing zu", tsk + res + werbekampagne + ":" + franz));
tasks.add(new Task("Revenue Model:Geschäftsführung", "Teile die " +
"Aufgabe Revenue Model den Geschäftsführer zu",
tsk + res + revenuemodel + ":" + julia));
tasks.add(new Task("Umsatzplanung:Finanzen", "Teile die Aufgabe " +
"Umsatzplanung " +
"den Finanzen zu", tsk + res + umsatzplanung + ":" + julia));
q.addTask(tasks);
return q;
}
private static Quest q8() {
Quest q = new Quest("Zeiteinteilung", "Teile nun allen Tasks die Zeit zu", 4, 80);
List<Task> tasks = new ArrayList<>();
tasks.add(new Task("Backend: 75 Tage", "Backend braucht 75 Tage",
tsk + dur + backend + ":75"));
tasks.add(new Task("Frontend: 84 Tage", "Frontend braucht 84",
tsk + dur + frontend + ":84"));
tasks.add(new Task("Infrastruktur: 60 Tage", "Infrastruktur braucht 60 Tage" +
"hinzu", tsk + dur + infrastruktur + ":60"));
tasks.add(new Task("Demo-Vorstellung: 5 Tage", "Demo-Vorstellung braucht 5 Tage",
tsk + dur + demovorstellung + ":5"));
tasks.add(new Task("Werbekampagne: 38", "Werbekampagne braucht 38 Tage",
tsk + dur + werbekampagne + ":38"));
tasks.add(new Task("Revenue-Model: 131", "Revenue-Model braucht 131 Tage",
tsk + dur + revenuemodel + ":131"));
tasks.add(new Task("Umsatzplanung: 131", "Umsatzplanung braucht 131 Tage",
tsk + dur + umsatzplanung + ":131"));
q.addTask(tasks);
return q;
}
public static List<Quest> init() {
List<Quest> quests = new ArrayList<>();
quests.add(q1());
quests.add(q2());
quests.add(q3());
quests.add(q4());
quests.add(q5());
quests.add(q6());
quests.add(q7());
quests.add(q8());
return quests;
}
}