
Plandora
Nyílt Java forráskódú projektmenedzsment rendszer
Tervezze, kövesse és kezelje a projekteket Gantt-diagramokkal, agilis táblákkal, munkafolyamattal és integrációkkal nyílt forráskódú Java platformon.
Mi az a Plandora?
A Plandora egy kiforrott nyílt forráskódú projektmenedzsment rendszer, Java nyelven épült, vállalati szintű projekttervezésre, nyomon követésre és együttműködésre tervezve. Átfogó eszközöket biztosít, többek között Gantt-diagramokat, agilis táblákat, munkafolyamat-automatizálást, erőforráskapacitás-tervezést és egyedi jelentéskészítést a JasperReports segítségével. Beépített támogatással rendelkezik olyan integrációkhoz, mint a JIRA, SVN és RT4, így a Plandora lehetővé teszi a csapatok számára összetett projektek kezelését, miközben megőrzi a nyomon követhetőséget és az átláthatóságot a részlegek között. Rugalmas meta-mező rendszere és testreszabható űrlapjai lehetővé teszik a szervezeteknek, hogy a platformot egyedi munkafolyamatokhoz igazítsák kódmódosítás nélkül.
A rendszer a használhatóságra és a bővíthetőségre helyezi a hangsúlyt, egy tudásbázist kínál Google-szerű kereséssel, többszintű projektfelmérésekkel, kockázatkezeléssel és feladat-alapú teendőlistákkal. A Plandora támogatja mind a hagyományos vízesés, mind az agilis módszertanokat kiegyensúlyozott teljesítménymérő tábláján, iterációs burndown eszközein és makró-feladat hierarchiáin keresztül. 2023-as újraindítása óta a projekt több mint 30 kritikus hibát javított, a teljesítményt javította, CSV import/export funkciót adott hozzá, és a jelentéskészítési képességeket bővítette—beleértve az ütemezett jelentésgenerálást és a JPG kimenetet is. A fejlesztők a [Plandora GitHub](https://github.com/Cynjut/Plandora) tárolón keresztül járulhatnak hozzá, és a moduláris architektúra és JDBC/DAO minták segítségével bővíthetik a funkcionalitást.
A Plandora használatának megkezdése
A Plandora egy Java-alapú webalkalmazás, amelyet általában Tomcat vagy más JEE szerverekre telepítenek. A kezdéshez klónozza a forrást a [Plandora GitHub](https://github.com/Cynjut/Plandora) tárolóból, győződjön meg róla, hogy a Java 8+ és a Maven telepítve van, és építse meg a WAR fájlt a `mvn clean package` paranccsal. Telepítse a generált WAR-t a servlet konténerébe. A rendszer támogatja mind a Tomcat kapcsolatkezelést, mind a közvetlen JDBC kapcsolatokat (a `web.xml`-ben konfigurálva). Az első beállítás után konfigurálja az adatbázis hitelesítő adatokat, az SMTP beállításokat, és integrálja külső rendszerekkel, például a JIRA-val vagy az SVN-nel. A Plandora beépített beállító varázslókat tartalmaz az alapvető komponensekhez, mint a munkafolyamatok, meta‑mezők és felhasználói szerepkörök, hogy felgyorsítsa a telepítést.
A Plandora felépítése és telepítése Maven segítségével
# Clone the repository
git clone https://github.com/Cynjut/Plandora.git
cd Plandora
# Build the WAR file
mvn clean package
# Deploy to Tomcat
cp target/plandora.war $TOMCAT_HOME/webapps/
Gantt-diagramok naptári eseményekkel és mérföldkövekkel
Plandora Gantt-diagramja megjeleníti a projekt idővonalakat, támogatja a makró feladatokat, mérföldköveket és naptári eseményeket. Dinamikusan szűri az erőforrásokat és feladatokat, biztosítva a pontos előrehaladás nyomon követését még akkor is, ha az erőforrások hozzá vannak rendelve vagy eltávolítva. A diagram most már tartalmaz mérföldkő jelzőket, és integrálódik a projekt naptárakkal, hogy tükrözze a munkanapokat és ünnepnapokat. A felhasználók exportálhatják a Gantt-nézeteket CSV, XLS vagy JPG formátumokba jelentés és megosztás céljából. A teljesítményjavítások biztosítják a sima megjelenítést nagy adathalmazok esetén, és a rendszer helyesen kezeli a feladatok csonkítását az MSProject importálás során. Egyedi mezők és meta-mezők közvetlenül a Gantt-rácson jeleníthetők meg, gazdagabb kontextust biztosítva anélkül, hogy elhagynák az idővonal nézetet. Ez teszi a Plandorát ideálissá mind a hagyományos projektmenedzserek, mind a hibrid csapatok számára, amelyek agilis‑vízesés keveréket használnak.
Gantt-diagram exportálása JPG formátumba ütemezett jelentésen keresztül
// Use Report2File agent to schedule Gantt export
Report2File report = new Report2File();
report.setReportName("ProjectGantt");
report.setOutputFormat("jpg");
report.setSchedule("0 0 2 * * ?"); // Daily at 2 AM
report.setFilePath("/reports/gantt/");
report.execute();
JIRA integráció a hibák importálásához
Plandura tartalmaz egy dedikált ügynököt, amely JIRA feladatokat importál Plandora kérésekként, beleértve a mellékleteket és metaadatokat. Ez az integráció összeköti a hibajegykezelést és a projekttervezést, lehetővé téve a nem technikai érintettek számára, hogy az RT4-et vagy a JIRA-t használják, míg a fejlesztők a Plandorában kezelik a munkát. Az importálási folyamat megőrzi a feladatkapcsolatokat, a prioritást, a felelősöket és az időbélyegeket. Támogatja a szűrést projekt, állapot vagy időtartomány szerint, és hatékonyan kezeli a nagy mennyiségű adatot. Az importálás után a feladatok teljes értékű Plandora kérésekké válnak, szerkeszthető mezőkkel, munkafolyamat-átmenetekkel és feladathierarchiákkal. Ez a funkció különösen értékes azoknak a szervezeteknek, amelyek a JIRA-ról migrálnak vagy kettős rendszert tartanak fenn. A fejlesztők konfigurációval vagy egyedi pluginekkel bővíthetik az ügynököt, hogy további JIRA mezőket vagy egyedi mezőket támogassanak.
JIRA feladatok importálása parancssori ügynökön keresztül
// Example agent invocation (simplified)
JiraImporter importer = new JiraImporter();
importer.setJiraUrl("https://jira.example.com");
importer.setUsername("api_user");
importer.setPassword("token");
importer.setProjectKey("PROJ");
importer.setIssueFilter("status = 'Done'");
importer.setImportAttachments(true);
importer.execute();
Erőforrás-kapacitás kezelése és összehasonlítása
A Plandora erőforráskapacitás űrlapja lehetővé teszi a csapat rendelkezésre állásának részletes tervezését és nyomon követését a tényleges felhasználással szemben. A felhasznált kapacitást a hozzárendelt feladatok, iterációk és munkaidő-nyilvántartások alapján számolja, null/üres értékek és dátumtartományok szűrőivel. A felhasználók oldalról oldalra össze tudják hasonlítani a becsült és a felhasznált kapacitást, hogy azonosítsák a túl- vagy alul- allokációt. A rendszer elegánsan kezeli a lekapcsolt erőforrásokat, javítva az adatbázis-lekérdezési hibákat, amikor a tagok minden projektből el vannak távolítva. A kapacitásadatok integrálódnak a Gantt-diagramokkal és a burndown eszközökkel, lehetővé téve a reális sprint- és mérföldkő-tervezést. A vezetők dinamikusan módosíthatják a becsléseket, és a változások továbbadódnak az alárendelt jelentésekbe és irányítópultokra. Ez a funkció kritikus a portfóliószintű erőforrás-gazdálkodás és előrejelzés szempontjából többprojektes környezetekben.
Erőforráskapacitás szűrése nulla értékek alapján
// Pseudo-code for capacity filtering logic
ResourceCapacityFilter filter = new ResourceCapacityFilter();
filter.setProjectId(projectId);
filter.setShowZeroValues(true);
filter.setCompareEstimates(true);
List entries = capacityService.getFilteredCapacities(filter);
for (CapacityEntry entry : entries) {
if (entry.getUsed() == 0) {
System.out.println("Unused capacity: " + entry.getResourceName());
}
}
Munkafolyamat-automatizálás és meta-mező testreszabása
A Plandora munkafolyamat-motorja testreszabható jóváhagyási láncokat, állapotátmeneteket és a kérelmekhez, feladatokhoz és eseményekhez kapcsolódó nyomon követési megjegyzéseket támogat. A felugró munkafolyamat-ablak most megjeleníti a kapcsolódó kérelmek leírását és a teljes megjegyzéstörténetet, javítva a nyomon követhetőséget. A meta-mezők lehetővé teszik az adminisztrátorok számára, hogy egyedi attribútumokat (pl. megfelelőségi címkék, ügyfél-azonosítók) definiáljanak feladatokhoz, kérelmekhez és projektekhez – beleértve a UI-ellenőrzés által kényszerített kötelező mezőket. Ezek a mezők megjelennek a rácsokban, jelentésekben és exportokban, rugalmas adatmodellezést biztosítva kódmódosítás nélkül. A rendszer támogatja a meta-mezők megjelenítését a fő űrlap rácsokban és a CSV-importokban is, biztosítva a konzisztenciát az adatbevitel minden pontján. Ez a bővíthetőség a Plandorát alkalmasá teszi szabályozott iparágak és összetett szervezeti struktúrák számára, amelyek audit nyomvonalakat és szabványosított folyamatokat igényelnek.
Kötelező meta-mező meghatározása API-n keresztül
// Example: Mark meta-field as mandatory
MetaField field = metaFieldService.findById("client_id");
field.setIsMandatory(true);
field.setValidationRegex("^[A-Z]{3}[0-9]{4}$");
metaFieldService.update(field);
// Validation enforced in forms and imports
if (request.getClientId() == null || request.getClientId().isEmpty()) {
throw new ValidationException("Client ID is required");
}
