Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
1
Pensionslücken- Berechnungssystem
Peter BERAN Alexander FRICK Gernot HABEL Andreas MERTL Philipp WEINHOFER
2
Use-Case Diagramm NEU: XML/DB ändern
3
Zustandsdiagramm Pensionsberechnung
4
Zustandsdiagramm Admin - XML - Ändern
5
Zustandsdiagramm Admin – DB - Ändern
6
Klassendiagramm WebClient
7
Klassendiagramm WebAdmin
8
Klassendiagramm WebService
9
Klassendiagramm Kommunikation
10
Gesamtsicht
11
XML - Datenstruktur
12
Pseudocode getPensionsluecke {
get Witwenpension, BUPension, Ausgleichszulage aus Stub_xml wenn (Witwenpension) pension = berechneWitwenpension() else { wenn (BUPension) pension = berechneBUPension() else pension = berechnePension() } Pension wird auf Ausgleichszulage aufgewertet (falls Anspruch besteht) Nettopension() get zusatzpension aus Stub_xml überprüfe zusatzpension auf Maximalbetrag Pensionslücke = Gehalt – Pension – Freiwillige Zusatzpension (muss aber positiv sein) Schreibe alle Daten ins XML und liefere an Client zurück
13
Pseudocode – Pensionsberechnung 1
berechnePension() { //brutto get gewuenschtes_Pensionsantrittsalter aus Stub_xml get bisherigeBeitragsmonate, Ersatzzeiten aus Stub_XML Beitragsmonate=bisherigeBeitragsmonate + (Monate zischen Pensionsantritt und jetzt) Versicherungszeiten = Beitragsmonate + Ersatzzeiten wenn gewuenschtes_Pensionsantrittsalter >= Pensionsantrittsalter { Pension = getBemessungsgrundlage() * Steigerungsbetrag() } else { wenn (Beitragszeit < benötigteVersicherungsdauerFuerHacklerregelung oder check Geburtsdatum für Hacklerregelung aus DB!=OK) { get Verminderung aus DB Verminderung = Verminderung * (Pensionsantrittsalter - gewuenschtes_Pensionsantrittsalter) (in Jahren) Verminderung darf max maxVerminderung sein Pensions= getBemessungsgrundlage() * Steigerungbetrag() * (1 - Verminderung) }
14
Pseudocode – Pensionsberechnung 2
else { //Hacklerregelung get Pensionsantrittsalter für Hacklerregelung aus DB wenn gewuenschtes_Pensionsantrittsalter >= PensionsantrittsalterHackler { Pension= getBemessungsgrundlage() * SteigerungsbetragHackler() } get Verminderung aus DB Verminderung = Verminderung * (PensionsantrittsalterHackler - gewuenschtes_Pensionsantrittsalter) (in Jahren) Verminderung darf max 15 % sein Pensions = getBemessungsgrundlage() * SteigerungbetragHackler() * ( Verminderung) get Geburtsdatum_der_Kinder aus Stub_xml get Kinderzuschuss, LebensjahrKinderzuschuss aus DB für jedes Kind wo Alter kleiner als Lebensjahr ist (zum Zeitpunkt des Pensionsantritts) gibt es Kinderzuschuss get Höchstpension aus DB wenn Pension > Höchstpension, Pension = Höchstpension back
15
Pseudocode - Bemessungsgrundlage
getBemessungsgrundlage() { get Geschlecht, Geburtsdatum, Gehalt, Anzahl_Kinder aus Stub_xml get Bemessungszeitraum, RichtsatzKindererziehung, Verkürzung_BMZ_Kind aus DB get Pensionsantrittsalter aus DB wenn weiblich, verringere Bemessungszeitraum um Verkürzung_BMZ_Kind pro Kind Bemessungszeitraum muss mindestens 180 Monate sein Berechne ungefähres Gehalt bei Pensionsantritt Berechne Durchschnittswert für Bemessungsgrundlage aufgrund von Alter, Bemessungszeitraum, Gehalt, Pensionsantrittsalter } back
16
Pseudocode - Steigerungsbetrag
get Steigerungsbetrag, maxSteigerungsbetrag, maxBeitragsjahre_bisMaxSteigerungsbetrag aus DB Gesamtsteigerungsbetrag = Steigerungsbetrag * Versicherungszeiten/12 (in Jahren) wenn Versicherungszeiten < maxBeitragsjahre_bisMaxSteigerungsbetrag { Gesamtsteigerungsbetrag darf höchstens maxSteigerungsbetrag sein } SteigerungsbetragHackler() { back
17
Pseudocode - Nettopension
get Krankenversicherung, KrankenversicherungFürEhepartner, maxPensionOhneLohnsteuer, maxPensionOhneLohnsteuerFürAlleinverdiener aus DB get Alleinverdiener, mitversichert aus Stub_xml wenn alleinverdiener { wenn (Pension > maxPensionOhneLohnstuerFuerAlleinverdiener) Steuern abziehen } else { wenn (Pension > maxPensionOhneLohnstuer) Steuern abziehen Pension = Pension * (1-Krankenversicherung) wenn Ehepartner mitversichert Pension = Pension * (1-KrankenversicherungFürEhepartner) back
18
Pseudocode - Witwenpension
berechneWitwenpension() { HöchsprozentsatzWitwenpension, mindWitwenpension Prozentsatz = * (BRGL der Hinterbliebenen / BRGL des Verstorbenen) Prozentsatz darf höchstens HöchsprozentsatzWitwenpension sein Witwenpension = Prozentsatz * BRGL des Verstorbenen Eigenpension = berechnePension() oder berechneBUPension() wenn (Witwenpension + Eigenpension < mindWitwenpension { Witwenpension = mindWitwenpension - Eigenpension Wenn (Witwenpension/BRGL des Verstorbenen *100 > HöchsprozentsatzWitwenpension) { Witwenpension = HöchsprozentsatzWitwenpension * BRGL des Verstorbenen } Pension = Witwenpension + Eigenpension back
19
Pseudocode – BU Pension
berechneBUPension() { Get PensionsantrittalterFrühpension aus DB Wenn gewuenschtesPensionsantrittsalter < PensionsantrittalterFrühpension { Versicherungszeit = Versicherungszeit + PensionsantrittalterFrühpension - gewuenschtesPensionsantrittsalter } Gesamtsteigerungsbetrag = Steigerungsbetrag * Versicherungszeiten (in Jahren) Gesamtsteigerungsbetrag darf höchstens maxSteigerungsbetragBU sein BU Pension = Bemessungsgrundlage * Gesamtsteigerungsbetrag back
20
Danke für die Aufmerksamkeit!
Das PLBS-Team
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.