Pensionslücken- Berechnungssystem

20
Peter BERAN 0200945 Alexander FRICK 0206513 Gernot HABEL 0205554 Andreas MERTL 0202822 Philipp WEINHOFER 0206311 Pensionslücken- Berechnungssystem

description

Pensionslücken- Berechnungssystem. Use-Case Diagramm. NEU: XML/DB ändern. Zustandsdiagramm Pensionsberechnung. Zustandsdiagramm Admin - XML - Ändern. Zustandsdiagramm Admin – DB - Ändern. Klassendiagramm WebClient. Klassendiagramm WebAdmin. Klassendiagramm WebService. - PowerPoint PPT Presentation

Transcript of Pensionslücken- Berechnungssystem

Page 1: Pensionslücken- Berechnungssystem

Peter BERAN 0200945

Alexander FRICK 0206513

Gernot HABEL 0205554

Andreas MERTL 0202822

Philipp WEINHOFER 0206311

Pensionslücken-Berechnungssystem

Page 2: Pensionslücken- Berechnungssystem

Use-Case Diagramm

• NEU: XML/DB ändern

Page 3: Pensionslücken- Berechnungssystem

ZustandsdiagrammPensionsberechnung

Page 4: Pensionslücken- Berechnungssystem

ZustandsdiagrammAdmin - XML - Ändern

Page 5: Pensionslücken- Berechnungssystem

ZustandsdiagrammAdmin – DB - Ändern

Page 6: Pensionslücken- Berechnungssystem

Klassendiagramm WebClient

Page 7: Pensionslücken- Berechnungssystem

Klassendiagramm WebAdmin

Page 8: Pensionslücken- Berechnungssystem

Klassendiagramm WebService

Page 9: Pensionslücken- Berechnungssystem

Klassendiagramm Kommunikation

Page 10: Pensionslücken- Berechnungssystem

Gesamtsicht

Page 11: Pensionslücken- Berechnungssystem

XML - Datenstruktur

Page 12: Pensionslücken- Berechnungssystem

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 }

Page 13: Pensionslücken- Berechnungssystem

Pseudocode – Pensionsberechnung 1

berechnePension() {//bruttoget gewuenschtes_Pensionsantrittsalter aus Stub_xmlget bisherigeBeitragsmonate, Ersatzzeiten aus Stub_XMLBeitragsmonate=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 DBVerminderung = Verminderung * (Pensionsantrittsalter - gewuenschtes_Pensionsantrittsalter) (in Jahren)Verminderung darf max maxVerminderung seinPensions= getBemessungsgrundlage() * Steigerungbetrag() * (1 - Verminderung)

}

Page 14: Pensionslücken- Berechnungssystem

Pseudocode – Pensionsberechnung 2

else {//Hacklerregelungget Pensionsantrittsalter für Hacklerregelung aus DBwenn gewuenschtes_Pensionsantrittsalter >= PensionsantrittsalterHackler {Pension= getBemessungsgrundlage() * SteigerungsbetragHackler()}else {

get Verminderung aus DBVerminderung = Verminderung * (PensionsantrittsalterHackler - gewuenschtes_Pensionsantrittsalter) (in Jahren)Verminderung darf max 15 % seinPensions = getBemessungsgrundlage() * SteigerungbetragHackler

() * (1 - Verminderung)}

}}get Geburtsdatum_der_Kinder aus Stub_xmlget Kinderzuschuss, LebensjahrKinderzuschuss aus DBfür jedes Kind wo Alter kleiner als Lebensjahr ist (zum Zeitpunkt des Pensionsantritts) gibt es Kinderzuschussget Höchstpension aus DBwenn Pension > Höchstpension, Pension = Höchstpension

}

back

Page 15: Pensionslücken- Berechnungssystem

Pseudocode - Bemessungsgrundlage

getBemessungsgrundlage() {get Geschlecht, Geburtsdatum, Gehalt, Anzahl_Kinder aus Stub_xmlget Bemessungszeitraum, RichtsatzKindererziehung, Verkürzung_BMZ_Kind aus DBget Pensionsantrittsalter aus DBwenn weiblich, verringere Bemessungszeitraum um Verkürzung_BMZ_Kind pro KindBemessungszeitraum muss mindestens 180 Monate seinBerechne ungefähres Gehalt bei PensionsantrittBerechne Durchschnittswert für Bemessungsgrundlage aufgrund von Alter, Bemessungszeitraum, Gehalt, Pensionsantrittsalter

}

back

Page 16: Pensionslücken- Berechnungssystem

Pseudocode - Steigerungsbetrag

Steigerungsbetrag() {get Steigerungsbetrag, maxSteigerungsbetrag, maxBeitragsjahre_bisMaxSteigerungsbetrag aus DBGesamtsteigerungsbetrag = Steigerungsbetrag * Versicherungszeiten/12 (in Jahren)wenn Versicherungszeiten < maxBeitragsjahre_bisMaxSteigerungsbetrag {

Gesamtsteigerungsbetrag darf höchstens maxSteigerungsbetrag sein}

}

SteigerungsbetragHackler() {get Steigerungsbetrag, maxSteigerungsbetrag, maxBeitragsjahre_bisMaxSteigerungsbetrag aus DBGesamtsteigerungsbetrag = Steigerungsbetrag * Versicherungszeiten/12 (in Jahren)wenn Versicherungszeiten < maxBeitragsjahre_bisMaxSteigerungsbetrag {

Gesamtsteigerungsbetrag darf höchstens maxSteigerungsbetrag sein}

}

back

Page 17: Pensionslücken- Berechnungssystem

Pseudocode - Nettopension 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

Page 18: Pensionslücken- Berechnungssystem

Pseudocode - WitwenpensionberechneWitwenpension() {

HöchsprozentsatzWitwenpension, mindWitwenpensionProzentsatz = 70 - 30 * (BRGL der Hinterbliebenen / BRGL des Verstorbenen)Prozentsatz darf höchstens HöchsprozentsatzWitwenpension seinWitwenpension = Prozentsatz * BRGL des VerstorbenenEigenpension = 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

Page 19: Pensionslücken- Berechnungssystem

Pseudocode – BU PensionberechneBUPension() {

Get PensionsantrittalterFrühpension aus DBWenn gewuenschtesPensionsantrittsalter < PensionsantrittalterFrühpension {

Versicherungszeit = Versicherungszeit + PensionsantrittalterFrühpension - gewuenschtesPensionsantrittsalter}Gesamtsteigerungsbetrag = Steigerungsbetrag * Versicherungszeiten (in Jahren)Gesamtsteigerungsbetrag darf höchstens maxSteigerungsbetragBU seinBU Pension = Bemessungsgrundlage * Gesamtsteigerungsbetrag

}

back

Page 20: Pensionslücken- Berechnungssystem

Danke für die Aufmerksamkeit!

Das PLBS-Team