Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Pensionslücken- Berechnungssystem

Ähnliche Präsentationen


Präsentation zum Thema: "Pensionslücken- Berechnungssystem"—  Präsentation transkript:

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


Herunterladen ppt "Pensionslücken- Berechnungssystem"

Ähnliche Präsentationen


Google-Anzeigen