PCM Codebereiche

Aus SDQ-Wiki
Die Informationen auf dieser Seite sind veraltet: Diese Seite bezieht sich zum Teil auf alte Strukturen. Die aktuellen Palladio Komponenten und Verantwortlichkeiten sind im Jira Issue Management zu finden: https://sdqbuild.ipd.kit.edu/jira/secure/BrowseProjects.jspa?selectedCategory=all&selectedProjectType=all


Die vorliegende Seite enthält einen Überblick über Codebereiche und Projekte der PCM Codebasis und die zugehörigen Verantwortlichkeiten.


Code-Überblick

Die Codebasis der PCM-Tools besteht aus Eclipse-Projekten, die strukturiert im SVN-Repository [1] abgelegt sind. Dabei sind die einzelnen Projekte den folgenden Codebereichen zugeordnet. Änderungen im SVn sollten immer sofort hier nachgetragen werden, allerdings kann nicht garantiert werden, dass diese Seite aktuell ist.

(s. auch sdqinternal:Rollen der Mitarbeiter#PCM_Aufgaben für die allg. Aufgabenbereiche, die nicht immer in Codepakete mappen)

Anleitung zum Lesen der Projektnamen: als erstes wird der Projektname bzw. der Präfix der projektnamen einer zusammengehörigen Gruppe von Projekten, wie er nach dem PCM Namenschema sein sollte, angegeben. In Klammern folgt ggf. der tatsächliche Projektname im SVN.

Weitere Infos zu den Projekten im JavaDoc zum Nighly Build oder JavaDoc zur Version von 2009-03-07

Projekt(-Präfix) Codebereich (= SVN Verzeichnisse) Beschreibung Ansprechpartner1 Stellvertreter
de.uka.ipd.sdq.{benchmarking,BySuite,palladioFileShare} (PalladioFileShare) CaseStudies/FileShare Interne Evaluation für Machine Learning + Bytecode-basierte Vorhersage Klaus Michael
de.uka.ipd.sdq.code2model (code2model) Palladio/Discontinued/Java2PCM (discontinued) Reverse engineering of RDSEFFs from Java source code. Based on work of Thomas Kappler. Ersetzt durch GAST2SEFF Klaus Johannes
de.uka.ipd.sdq.resourcestrategies Palladio/Core/trunk/ProtoCom Project which simulates resource demands on physical hardware, used by ProtoCom as well as (in the future) Palladio.ByCounter Michael, Micha Martin Krogmann
de.uka.ipd.sdq.benchmarks.concurrency Discontinued/Palladio.Benchmark Jens Diss implementation for concurrency stress tests formerly Jens; new person has to be found ?
de.uka.ipd.sdq.ByCounter (ByCounter) BySuite/Palladio.ByCounter Runtime counting of bytecode instructions and method invocations through application instrumentation Michael Martin Krogmann
de.uka.ipd.sdq.BySuite (BySuite) BySuite/Palladio.BySuite Stand-alone bytecode-based performance prediction, on the basis of ByCounter (see above) and ByBench (not yet in this repository) Michael  ?
de.uka.ipd.sdq.codeconventions Development SDQ Code Conventions to be used with Checkstyle Franz Johannes
de.uka.ipd.sdq.dialogs, de.uka.ipd.sdq.errorhandling WorkflowEngine/trunk Core-Plugins which are needed more than once by other plugins ?? Klaus Steffen
de.uka.ipd.sdq.dsexplore Palladio/Core/trunk/PerOpteryx Plugins that realise the Design Space Exploration of PCM instances, as proposed in Annes work. Should be moved into Addons Anne (nicht nötig)
de.uka.ipd.sdq.capra Palladio/Discontinued/Capra (auf Eis) Contains the current Version of the CAPRA process algebra. Discontinued formerly Jens and Bara; new person has to be found -
de.uka.ipd.sdq.spa Palladio/Core/trunk/Solver (auf Eis, aber immer noch im Core) Contains the current Version of the SPA process algebra. formerly Jens and Bara; new person has to be found -
de.uka.ipd.sdq.branding Palladio/Core/trunk/IDE  ?? Klaus Steffen
de.uka.ipd.sdq.identifier Palladio/Core/trunk/MetaModels  ?The EMF based PCM plugins containing the PCM Meta-Models? Klaus Steffen
de.uka.ipd.sdq.pcm Palladio/Core/trunk/MetaModels, Palladio/Core/trunk/Editors The EMF based PCM plugins containing the PCM Meta-Model Klaus, Chris (GMF/EMF) Steffen, Pierre (GMF/EMF), Johannes (GMF/EMF)
de.uka.ipd.sdq.pcm.gmf Palladio/Core/trunk/Editors The GMF graphical editors Chris Pierre, Johannes
de.uka.ipd.sdq.tests Palladio/Core/trunk/Build The testing starting point, calls other tests Steffen? Klaus?
de.uka.ipd.sdq.probfunction Palladio/Core/trunk/ProbFunction Package to model probability distributions and perform basic computations on them formerly Jens; new person has to be found Franz
de.uka.ipd.sdq.units Palladio/Core/trunk/MetaModels, Palladio/Core/trunk/Editors EMF Meta-Model for modelling units for stochastic expressions in the PCM, not integrated (problematic for experiments) Michael, Klaus Chris
various example PCM instances Palladio/Core/trunk/Examples, Palladio/Core/tags/..., Palladio/Discontinued/ExamplesForPublications Examples for the PCM and its tools Franz Steffen
de.uka.ipd.sdq.featureconfig, de.uka.ipd.sdq.featureinstance, de.uka.ipd.sdq.featuremodel FeatureModel/Core/trunk, FeatureModel/Addons/FeatureInstanceEditor/trunk EMF Meta-Model for Feature Diagrams and Feature Configurations Lucia Steffen
de.uka.ipd.sdq.pluginbuilder Palladio/Core/trunk/Build Central project for configuring the PCM / PCM Bench nightly build Klaus Steffen
RSA-Models: de.uka.ipd.pcm.rsa Palladio/Core/trunk/MetaModels All RSA model files. Should be refactored to only contain PCM RSA models. Different projects should have their own RSA project. (siehe jeweils Teilprojekte) (siehe jeweils Teilprojekte)
de.uka.ipd.sdq.codegen.simudatavisualisation.datatypes Palladio/Core/trunk/SensorFramework (discontinued, only bugfixing) Interface between persistency and GUI Henning ?
de.uka.ipd.sdq.generator.uml2jpa Palladio/Core/trunk/SensorFramework TODO: delete im SVN UML zu jpa Transformationen Steffen  ?
de.uka.ipd.sdq.sensorframework Palladio/Core/trunk/SensorFramework (discontinued, only bugfixing) Framework to place and store sensors in Simulations or to instrument code Michael Henning
de.uka.ipd.sdq.scheduler Palladio/Core/trunk/SimuCom Jens' Scheduler Simulation from his dissertation (for CAPRA and SimuCom?) Micha, Fabian, Niko Henning
de.uka.ipd.sdq.stoex, de.uka.ipd.sdq.pcm.stochasticexpressions Palladio/Core/trunk/StoEx Grammar and Parser tools for Stochastic Expressions TODO: Some StoEx parser code still resides in the de.uka.ipd.sdq.pcm project! Martin -
de.uka.ipd.sdq.statistics Palladio/Core/trunk/Statistics Statistic algorithms such as warmup filter, independence test for a series of samples, batch mean confidence Philipp Merkle Anne
de.uka.ipd.sdq.TimerMeter (TimerMeter) TimerMeter Application to measure resolution and cost of timer invocations Michael Martin Krogmann
de.uka.ipd.sdq.workflow WorkflowEngine Palladio Workflow Engine. Integrates the Workflows in Eclipse (RunConfig). Provides abstract classes for PCM specific workflow jobs and handles their execution. Anne -
several external packages ThirdPartyWrapper Wrapper-Plugins for external libraries (siehe jeweils Teilprojekte) (siehe jeweils Teilprojekte)
de.uka.ipd.sdq.pcm.codegen, de.uka.ipd.sdq.pcm.transformations (in plugin *.codegen.simucontroller) Palladio/Core/trunk/CodeGen PalladioCM.CodeGen oAW based M2C Transformations. M2T Templates for SimuCom, EJB, and Prototype. Example EJB Skeleton-Project. Completions. Anne (SimuCom), Henning (ProtoCom), Steffen (PCM2Java = EJB), Lucia (Completions) -
de.uka.ipd.sdq.prototype.framework Palladio/Core/trunk/ProtoCom PalladioCM.CodeGen ProtoCom Framework Henning -
de.uka.ipd.sdq.{simucomframework,simucom.feature} Palladio/Core/trunk/SimuCom PalladioCM.CodeGen SimuCom Framework Anne -
de.uka.ipd.sdq.completions Palladio/Core/trunk/Completions Performance Completions Meta-Model Lucia Steffen
de.uka.ipd.sdq.pcmbench Palladio/Core/trunk/IDE Noch einige Kern-PCM tool plugins, RCP-Application and associated plugins. TODO: Mergen Klaus -
de.uka.ipd.sdq.context Palladio/Core/trunk/Solver The generated context models (see Palladio/Core/trunk/Metamodels/de.uka.ipd.sdq.pcm.rsa/context.emx) Franz  ?
LQNModel Palladio/Core/trunk/Solver The generated LQN model. TODO: umbenennen nach Konventionen Samuel Franz
de.uka.ipd.sdq.markov Palladio/Core/trunk/Reliability Reliability Franz -
de.uka.ipd.sdq.pcmsolver Palladio/Core/trunk/Solver Includes Dependency solver, pcm2regex, pcm2capra, PCM2LQN Franz, Samuel (pcm2lqn), Bara (pcm2capra), Anne (pcm2regex nur Notfall) -
de.uka.ipd.sdq.pcmsolver.transformations.pcm2regex (nur Paket in de.uka.ipd.sdq.pcmsolver, kein Projekt) Palladio/Core/trunk/Solver pcm2regex Transformation Anne -
de.uka.ipd.sdq.pcmsolver.transformations.pcm2lqn (nur Paket in de.uka.ipd.sdq.pcmsolver, kein Projekt) Palladio/Core/trunk/Solver PCM2LQN Transformation Samuel -
de.uka.ipd.sdq.pcmsolver.transformations.pcm2capra (nur Paket in de.uka.ipd.sdq.pcmsolver, kein Projekt) Palladio/Core/trunk/Solver pcm2capra Transformation formerly Jens and Bara; new person has to be found -
RSA-EMX-UML2 RSA-EMX-UML2 RSA-Export fix tool; for RSA 6.0 Klaus -
Discontinued/test-feature Tests für Build-Prozess Klaus -
Discontinued/test-plugin Tests für Build-Prozess Klaus -


1 Die den Codebereichen zugeteilten Ansprechpartner sind die erste Anlaufstelle für Fragen zum jeweiligen Bereich (siehe hierzu auch die Besprechung zur PCM-Evolution im Februar 2008 in Dagstuhl und die resultierende Zuordnung von Personen zu Aufgabengebieten im SVN-Repository [2] in der Datei "2008-08-28 Zuordnung Personen-Aufgabengebiete.xls") und dem Nachfolge-Dagstuhlprotokoll September 2008.


TODO: Align overview to new code areas created as part of the SVN Restructoring in August 2011

TODO: Rename the ThirdPartyWrapper plugins to include the third party version number as noted on the page SVN-Regeln

TODO: Erstelle Diagramm Architektur-Überblick

TODO: Bewerte QS-Status der einzelnen Bereiche