Font
[thread]1536[/thread]

Projekt: AZUBI-Einsatz planen: Mir fehlt der logische Ansatz...

Readers: 2


<< |< 1 2 3 4 >| >> 32 entries, 4 pages
Alex
 2004-04-27 02:18
#14823 #14823
User since
2003-12-04
285 articles
BenutzerIn
[default_avatar]
Hallo,

weiß nicht in welches Forum das hier hin gehört - Ihr könnt es ja verschieben, wenn es irgendwo besser passt.

Folgendes dürfte für die Logiker und/oder Mathematiker unter uns was sein (habe das Thema schon mal auf dem Freaktreffen in München angeschnitten):

Jetzt kommt gaaaaanz viel Text ;-)

Aber um das Problem hier schon dem eiligen Leser zu nennen: Ich habe weniger (noch nicht) ein Programmier- oder ein Perlwillnichtsowieichdaswillproblem, sondern mir fehlt der eigentliche, logische Ansatz (der Kernel - wenn Ihr so wollt) um eine Aufgabe zu lösen. Beim näheren drüber nach denken ist es ziemlich komplex. Tja, und ich frage nach Rat, Ideen, Ansätzen und nach Allem was mir sonst noch helfen könnte...

Situation:

Habe ein Hotel (derzeit ein kleineres, unkomplizierteres - wird aber irgendwann ein größeres mit noch mehr AZUBIS / Bedingungen (und ich würde mir gerne die Arbeit nur einmal machen), mit derzeit 9 Auszubildenden (3-jährige Ausbildung zur/m Hotelfachfrau/mann) je 3 in jedem Lehrjahr. Problematik ist immer wieder die Ausbildungszeitplanung (Wer, Wann, Wo), denn die AZUBIS müssen in unterschiedlichen Abteilungen unterschiedlich lange (in Wochen) Dienst schieben (laut Ausbildungsverordnung).

Vorhaben:

Ich möchte ein Programm haben/coden, dass es mir ermöglicht den Ausbildungsverlauf über die 3 Jahre für jeden einzelnen, aber abhängig voneinander, im Voraus zu planen und ggfs. jederzeit zwischendrinn Veränderungen vor zu nehmen, sollten sich Bedingungen (z. B Ausbildungsverkürzungauf 2 1/2 Jahre, Ausbildungsberufänderung im gleichen Hotel, vorzeitiges Ausscheiden, durch die Prüfung gefallen und noch ein halbes Jahr verlängert (die letzten Beiden kommen hoffentlich nie vor) etc.) ergeben. Nur mal so ein paar Beispiele die berücksichtigt werden müssen - der ganze Rest folgt (wenn der Platz reicht! ) ;-)

Von hinten aufgerollt:

Das Ergebnis sollte online oder auf einem Windowsrechner laufen (evtl. ein Chance mich mit TK zu beschäftigen) und mir (im besten Falle auch grafisch) die Vorplanung bzw. Neuplanung ausspucken. Z. B.:

Azubi xxx:
Etage: 01.01.04 - 28.02.04
Reservierung: 01.03.04 - 31.05.04
Rezeption Spät: 01.06.04 - 31.07.04
.
.
.

Azubi yyy:
Frühstücksservice: 01.01.04 - 30.06.04
Küche: 01.07.04 - 15.08.04
Restaurant Spät: 16.08.04 - 30.11.04
.
.
.

etc. pp.

Mein kleiner/kurzer (gedanklicher) Ansatz (Das eigentliche Problem zum Schluss, denn sollte sich dieser Thread entwickeln werde ich da wohl noch einiges hinzueditieren müssen):

Ich sollte den User (mich) wohl erstmal auffordern eine Auszubildendendatenbank anzulegen, in der alle derzeit relevanten bzw. verfügbaren Daten eingegeben werden müssen. Wie z. B. Ausbildungsbeginn, -beruf und -dauer. Desweiteren die Verschiedenen Ausbildungsberufprofile. Z. B. Ein Kochlerling wird länger in der Küche seine Ausbildung genießen als eine Restaurantfachfrau, die wiederum weit weniger Zeit an der Rezeption als der Hotelkaufmann und der wieder mehr Zeit in der Buchhaltung als die Hotelfachfrau. Das ganze natürlcih genau in Wochenangaben. Tja, und dann eben noch die Eingabemöglichkeiten für die verschiedensten Dinge (siehe schon oben und aber jetzt dann unten). Und dann ein fetter Button der "PLANEN" heißt. Jetzt soll das ganze durchgewürfelt werden und alle Zusammenhänge und Bedingungen geprüft und verglichen werden [u](<= Das ist das eigentliche Problem)[/u] und das Ergebnis (so Perl will) angezeigt werden. ;-)

Daten / Bedingungen / Zusammenhänge / Verknüpfungen:
(Liste bestimmt noch nicht vollständig)

_#_DATA_#_

Das leichteste voraus: Es muss nicht auf die Woche genau sein. +/- 1-4 Wochen je Abteilung ist ok. und vertretbar. Dumm nur wenn in dieser Abteilung nur ein Ausbildung von zwei Wochen vorgesehen ist (z. B. Hotelfachfrau - Buchhaltung) dann ist gar nicht oder 6 Wochen schon etwas extrem.

Azubianzahl muss individuell sein

Abteilungsanzahl muss individuell sein

Unterabteilungen müssen berücksichtigt werden (z. B. bei einem Hotelfachmann sind 12 Wochen in der Küche gefordert aber nicht genauer bestimmt. Beim Koch plant man schon genauer: 5 Wochen Salatposten, 6 Wochen Dessert, 2 Wochen Spühle, 8 Wochen Fisch, 15 Wochen Gemüse und Beilagen etc.

Anforderungen der Abteilungen individuell zu definieren. Z. B in der kleinen Buchhaltung findet gerade ein Azubi Platz und Aufmerksamkeit, in der Küche dürfen es auch drei gleichzeitig sein soweit die dann nicht an einem Posten kollidieren, sollte der Konditor z. B. nur Zeit für einen gelichzeitig haben.

Ausbildungsdauer definierbar. Beginn normalerweise jedes Jahr am 01.09 für drei Jahre wobei die Abschlussprüfungen danach meistens schon im Juli sind also nicht genau 156 Wochen. Dann gibt es Verkürzungen (Abitur oder sehr gute Leisungen ind der Schule) bis zu einem Jahr was oftmals zu Beginn noch nicht fest steht oder genehmigt ist. Oder Umschüler die schon im zweiten Jahr anfangen und alles komprimmierter durchlaufen müssen bzw. teilweise etwas auslassen dürfen.

Je nach Beruf haben die in den 3 Jahren ca. 33 Wochen Berufsschule, teilweise Blockunterricht als mehrere Wochen am Stück aber auch manche immer nur einen Tag in der Woche.

In den 3 Jahren fallen etwa 15 Wochen Urlaub an.

In den 3 Jahren kommen etwa 2 Wochen an Feiertagen (zusätzlichen freien Tagen) zusammen.

Die AZUBIS sollten schön gemischt auf alle Abteilungen verteilt sein. Also nicht 5 im Frühstücksservice und keiner an der Rezeption. Gleichgewicht muss herschen, weil ich ja die entstehenden Lücken nicht ständig individuell mit ¤ 400.- Kräften auffüllen kann.

Abhängigkeiten zwischen den Abteilungen:
Vor der Buchhaltung - Rezeption Früh - davor Rezeption Spät - davor Reservierung. Sonst checken sie die folgende Abteilung nicht. Genauso vor der Bar - Küche spät (der Bartender muss auch kleine Sachen kochen können) - davor Restaurant Spät (sonst gehen die in der Küche unter) - und davor Frühstücksservice. Die Reihenfolgen sind zwingend, müssen aber nicht unbedingt direkt hintereinander folgen, soll heißen die können dazwischen auch mal ihre 4 Wochen in der Technik (Hausmeister) machen. Eigentlich sollte vor der Bar auch noch die Rezeption Spät stehen (nicht in jedem Hotel, aber in kleineren liegen die beiden meistens nebeneinander, so dass die sich untereinander helfen können, wenn sie können ;-)

Zu Ausbildungsbeginn sollten Frühstücksservice, Etage, Technik oder Waschküche stehen (am leichtesten um sich im neuen Leben (keine Schule mehr, sondern harte Realität) zurechtzufinden.

Kurz und Gut: Jeder individuell definierbaren (hinzufügbaren) Abteilung müssen individuelle Rangfolgen, Abhängigkeiten und Prioritäten zu zuordnen sein.

Das ganze soll gespeichert werden, da jederzeit eine Neuplanung notwendig werden könnte. Z. B. einem Restaurantfachmann fällt nach 1 1/2 Jahren ein das es ihm in der Küche so gut gefällt, dass er seine Ausbildung lieber als Koch beenden will und ab jetzt (weil er davor nur im Restaurant war) in der Küche sein sollte. Vorausgesetzt ich bin damit einverstanden weil er in der Küche wirklich mehr Talent hat als vor den Gästen. ;-) Dies bringt natürlich wieder die Gefahr von Kollisionen mit sich, so dass dies sehr wahrscheinlich auch den Einsatz der anderen Azubis beeinflusst. (Und wenn der dann auf Grund von Abitur und guter Noten auch noch auf 2 1/2 Jahre verkürzen will FLPP ich aus) ;-)

Die Zeit in den Abteilungen darf in Maßen gesplittet werden.  Also nicht 10 Wochen hintereinander eine andere Abteilung, aber 2 mal 5 Wochen und dazwischen etwas anderes ist ok.

Krankheiten müssen berücksichtigt werden (nicht statistisch). Wenn mir jetzt eine 3 Wochen krank wird muss ich mir (der Computer) überlegen in welcher Abteilung es am ehesten zu verschmerzen ist dies abzuziehen.

Sollte es noch nicht klar sein: Die verschiedenen Ausbildungsberufe werden in unterschiedlichen, aber mehreren, Abteilungen ausgebildet. Z. B. der HOFA (Hotelfachazubi) in allen Abteilungen, der REFA (Restaurantfachazubi) hauptsächlich im Restaurant, Bankett und Küche (wobei ich trotzdem die Ehre hatte 3 Monate in der Wachküche zu verbringen ;-) ), der HOKA (Hotelkaufmann/frau) hauptsächlich Reservierung, Rezeption, Sales & Marketing, Buchhaltung und Guest Relation, etc. pp.)

EDIT_2:
Das ganze soll natürlich über Jahre hinweg laufen, d. h. jdes Jahr (meistens) im Sptember oder (manchmal) Februar kommen wieder neue AZUBIS hinzu und im Juni/Juli oder März/April verlassen mich ein paar (so die IHK will).

EDIT_3:
Es muss auch noch das Alter der Azubis berücksichtigt werden, Ein minderjähriger im Abendservice der dann um 22:00 Uhr nach Hause gehen muss, macht auch keinen Sinn. Also auch dies bei jeder Abteilung (ob Volljährig Pflicht) zu definieren.

EDIT_4:
Als Beispiel wie die Dateneingabe aussehen (Demo, kein Schönheitswettbewerb) könnte (Mit ein paar weiteren Erklärungen): Usereingaben

_#_END_#_

EDIT_1: Danke, wenn Du bis hier hin gelesen hast! ;-)

Das war's erst mal. Habe ich mich verständlich asugedrückt? Wenn ich mir vorstelle, dass ich so etwas bis heute mit Bleistift und Papier plane... (Aber genau so schlecht ist es dann meistens...) Hat von Euch jemand eine Idee das zu lösen? Retorische Frage: Was haltet ihr von der Ausbildungsabgabe? Wie Ihr seht, ich nix, bzw. sehr viel - wie Ihr wollt.

@Strat: Wenn ich das mal am laufen habe, behersche ich auch ganz bestimmt Referenzen und OOP - versprochen! ;)\n\n

<!--EDIT|Alex|1083110714-->
<center>Schönen Gruß, Alex
Mit dem Computer geht alles viel schneller - es dauert nur ein bißchen länger!
</center>
pfuschi
 2004-04-27 02:56
#14824 #14824
User since
2004-03-31
198 articles
BenutzerIn
[default_avatar]
Servus,
also ich geh mal bloß auf einen Teil ein.
Und zwar brauchst du im Grunde ja immer eine Berufsdefinition die all die mindest Anforderungen an die Abteilungseinsätze enthält also die ganzen "must haves". Man könnte es auch Ausbildungsplatzbeschreibung nennen.
Sind die Azubibedingungen auf die gesamt Ausbildungszeit ausgelegt oder je Lehrjahr?
Es wäre denke ich wesentlich eifnacher diese Berufbeschreibung 3 zu teilen als sie im gesamten 3 Jahres Pack zu sehen, aber das hängt davon ab wie es in der Branche üblich ist.
Es also gibt die Bedinungen für koch 1., koch 2. und koch 3. Lehrjahr

Ähnlich ist es dann für die Abteilung auch da gibt es Beschreibungen die dann enthalten wieviel Azubis z.B. gleichzeitig zu verkraften sind.

Wenn man das dann geschickt anstellt dürfte die ganze(grobe) Logik in den MySQL Abfragen stecken.
So und jetzt sind die DB Experten gefragt...
:p
Wie war das nochmal mit ERM, Normalisieren usw.

greetz & fetten Segen
manu
P.s: nette gute Nacht Lecktüre
PCE - Editor für Perl in Perl
Bookzilla.de - Mit jedem Kauf OpenSource unterstützen
"I know I can't hold the hate inside my mind
cause what consumes your thoughts controls your life"
- Creed
Alex
 2004-04-27 03:15
#14825 #14825
User since
2003-12-04
285 articles
BenutzerIn
[default_avatar]
[quote=pfuschi,27.04.2004, 00:56]Sind die Azubibedingungen auf die gesamt Ausbildungszeit ausgelegt oder je Lehrjahr?
Es wäre denke ich wesentlich eifnacher diese Berufbeschreibung 3 zu teilen als sie im gesamten 3 Jahres Pack zu sehen, aber das hängt davon ab wie es in der Branche üblich ist.  
Es also gibt die Bedinungen für koch 1., koch 2. und koch 3. Lehrjahr[/quote]
Hi, nein es ist leider noch viel komplexer. Das ganze nennt sich Ausbildungsrahmenplan und gibt es individuell für jeden Beruf wobei das erste Lehrjahr meist gleich ist. Dort sind die Vermittlung von Einzelfähigkeiten genau definiert und Du hast als Ausbilder dann die Freiheit zu entscheiden in welcher Abteilung du das vermitteln willst. Z. B. 2 Wochen Büroorganisation im 1., 5 Wochen im 2. und 3 Wochen im 3. Lehrjahr. Es ist aber frei zu entscheiden ob das in der Buchhaltung, in der Reservierung oder an der Rezeption vermittelt wird. Küche würde da natürlcih nicht passen.
<center>Schönen Gruß, Alex
Mit dem Computer geht alles viel schneller - es dauert nur ein bißchen länger!
</center>
Strat
 2004-04-27 03:20
#14826 #14826
User since
2003-08-04
5246 articles
ModeratorIn
[Homepage] [default_avatar]
das klingt nach einer groesseren projektplanungssoftware (wie z.B. MsProject, aber das duerfte dafuer wohl etwas zu schwach auf der brust sein)

fuer ein datenmodell braeuchte man mal die abhaengigkeiten der einzelnen abteilungsabfolgen untereinander, und die abhaengigkeiten azubis <=> abteilung (also abteilung x braucht im Juli 10-14 azubis, im april 5-6 azubis usw..., und die aufteilung, welche azubis wie lange in welchen abteilungen untergebracht werden sollen...
aber einfach wird das datenmodell nicht...
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
Alex
 2004-04-27 03:32
#14827 #14827
User since
2003-12-04
285 articles
BenutzerIn
[default_avatar]
[quote=Strat,27.04.2004, 01:20]das klingt nach einer groesseren projektplanungssoftware (wie z.B. MsProject, aber das duerfte dafuer wohl etwas zu schwach auf der brust sein)

fuer ein datenmodell braeuchte man mal die abhaengigkeiten der einzelnen abteilungsabfolgen untereinander, und die abhaengigkeiten azubis <=> abteilung (also abteilung x braucht im Juli 10-14 azubis, im april 5-6 azubis usw..., und die aufteilung, welche azubis wie lange in welchen abteilungen untergebracht werden sollen...
aber einfach wird das datenmodell nicht...[/quote]
Na, Du machst mir aber Mut! ;)

Die betrieblichen Bedürfnisse, also in welchem Monat in welcher Abteilung wieviele Azubis lasse ich noch außen vor. Dies lässt sich auch kaum im voraus planen. Dies sollte dann später durch Neuberechnung geregelt werden. Z. B. Heute wird mir ein Kellner im Frühstück für 6 Wochen krank und ich kann ihn nicht ersetzen. Also setzte ich einen zusätzlichen Azubi ein der evtl. wo anders geplant war. -> Neuplanung.

Das "Datenmodell" habe ich ja schon erwähnt werde ich natürlich am Anfang abfragen, bzw. jederzeit zur Veränderung bereitstellen müssen.\n\n

<!--EDIT|Alex|1083023104-->
<center>Schönen Gruß, Alex
Mit dem Computer geht alles viel schneller - es dauert nur ein bißchen länger!
</center>
Crian
 2004-04-27 03:34
#14828 #14828
User since
2003-08-04
5866 articles
ModeratorIn
[Homepage]
user image
Hmmm da muss wirklich eine "große Lösung" her ;)

Du musst Dir wohl zunächst mal eine Datenstruktur überlegen, in der Du für jede Ausbildung gewisse Rahmen festlegst (wieviel Wochen in welchen Abteilungen).

Dann muss eine Funktion (bzw. Methode) her, die zu einem Auszubildenen und einer gegenbenen Stelle, Zeitpunkt und (temporärem) Plan berechnet, ob er diese schon machen kann.

Dann brauchst Du eine Bewertungsfunktion für einen fertig ausgerechneten Plan, der die Verletzungen der Constraints irgendwie Zusammenzählt und gewichtet...

Aber es ist schon spät und es gibt dazu viel zu bedenken. Ich werde es mal im Hinterkopf behalten und überschlafen ;)\n\n

<!--EDIT|Crian|1083022579-->
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Alex
 2004-04-27 03:43
#14829 #14829
User since
2003-12-04
285 articles
BenutzerIn
[default_avatar]
[quote=Crian,27.04.2004, 01:34]Aber es ist schon spät und es gibt dazu viel zu bedenken. Ich werde es mal im Hinterkopf behalten und überschlafen ;)[/quote]
Vielen, lieben Dank.
Ich geh' jetzt auch ins Bett.
Gute Nacht.

@Strat:
Quote
fuer ein datenmodell braeuchte man mal die abhaengigkeiten der einzelnen abteilungsabfolgen untereinander


Die sollen ja individuell sein. Für das derzeitige Hotel weiß ich die schon, aber die Software soll mir ja noch länger helfen. Wenn ich mal einen 1500-Zimmer-Bunker ;) habe, gelten natürlich wieder andere Regeln. Es muss also individuell definierbar bleiben.
<center>Schönen Gruß, Alex
Mit dem Computer geht alles viel schneller - es dauert nur ein bißchen länger!
</center>
Ronnie
 2004-04-27 11:15
#14830 #14830
User since
2003-08-14
2022 articles
BenutzerIn
[default_avatar]
Ich habe den Text jetzt nur überflogen. Ich würde folgendermaßen herangehen:

1. In Excel für jeden Auszubildenden ein Blatt anlegen.
2. Einen (leeren) Jahreskalender, in einem Blatt, erstellen.
3. Den Kalender kopieren in die anderen Blätter.
4. Die Blätter benennen (mit den Namen der Azubis).
5. Einzelne Ausbildungsphasen farblich unterschieden eintragen.
6. Pufferzeiten für Wiederholungen (Ausgleich von Fehlzeiten) einplanen.

Ansonsten würde ich mal nach dem Schlagwort "Personaleinsatzplanung" googlen.

Eine eigene Lösung mit Perl/TK zu entwickeln erscheint mir sehr aufwendig. Trotzdem fände ich es sehr interessant wenn du diesen Ansatz verfolgst.

Gruss,
Ronnie
pfuschi
 2004-04-27 12:46
#14831 #14831
User since
2004-03-31
198 articles
BenutzerIn
[default_avatar]
servus,
also es ist wohl mal am wichtigsten den Ausbildungsrahmenplan in ein geshceits Datenformat zu bringen.
ich mach das mal mit ein bischen pseudo XML da lässt sich das so schön strukturieren
Code: (dl )
1
2
3
4
5
6
7
8
<rahmenplan type="koch">
<jahreins>
<lehreinheit mindauer="3" maxdauer="6" inhalt="putzen" />
<lehreinheit mindauer="8" maxdauer="10" inhalt="kochen" />

</jahreins>

</rahmenplan>

so und jetzt brauchst du noch für jede Abteilung eine Beschreibung
Code: (dl )
1
2
3
4
5
<abteilungsbeschreibung name="Küche">
<inhalte>kochen</inhalte>
<inhalte>putzen</inhalte>
<azubis min="2" max="4" />
</abteilungsbeschreibung>

Ich denke so ähnlich kann man das gut darstellen.
Die eigentlichen Daten werden dann in eienr DB gehatlen. bzw. wenn du es mit XML machen möchtest dann kannman die Rahmendefintionen und die Abteilungsbeschreibung ja trotzdem in der DB ablegen.

Das Datenformat des Planes in einer Datenbank dürfte vom Prinzip her nicht wesentlich komplizierter als ein Stundenplan ausfallen(okay etwas übertrieben). Nur die Überprüfungen und neu Berechnungen sowie Änderungen verarbeiten dann die Defintionen. Hat den Vor. bzw. Nachtiel dass dann die Logik doch wieder in deinem Perl Programm liegt und nicht mehr zu sehr in den SQL Abfragen hängt.

Greetz & fetten Segen
manu
PCE - Editor für Perl in Perl
Bookzilla.de - Mit jedem Kauf OpenSource unterstützen
"I know I can't hold the hate inside my mind
cause what consumes your thoughts controls your life"
- Creed
Alex
 2004-04-27 13:32
#14832 #14832
User since
2003-12-04
285 articles
BenutzerIn
[default_avatar]
Habe oben EDIT_3 hinzugefügt. ;)

@Ronnie:
Ok. habe da oben etwas übertrieben. Ich plane derzeit natürlich auch nicht mehr mit Bleistift und Papier sondern nutze die uneingeschränkten graphischen Fähigkeiten von Exccel. ;) Löst aber das Prob nicht - weil da muss ich ja trotzdem selbst denken und es ist halt bei vielen Azubis (so ab 8 oder 10) sehr unübersichtlich.

@pfuschi:
Der Ansatz ist glaube ich schon ganz gut, aber ich habe gedanklich noch ein Problem es in drei Einzelblöcke aufzuteilen. Das würde später bei Verkürzungen noch mehr Probleme machen als es gleich als Zeitspanne zu sehen die meistens zwischen 2 und 3 1/2 Jahren liegt - im Normalfall eben 3 Jahre.

Ich poste später mal so einen Rahmenplan für die interessierten (renee schaut so gerne in anderen Branchen hinter die Kulissen) ;)\n\n

<!--EDIT|Alex|1083084293-->
<center>Schönen Gruß, Alex
Mit dem Computer geht alles viel schneller - es dauert nur ein bißchen länger!
</center>
<< |< 1 2 3 4 >| >> 32 entries, 4 pages



View all threads created 2004-04-27 02:18.