Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung...

14
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung (SE)

Transcript of Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung...

Page 1: Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung (SE)

Universität Stuttgart

Institut für Kernenergetik und Energiesysteme

Submodell Softwareentwicklung (SE)

Page 2: Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung (SE)

Universität Stuttgart

Institut für Kernenergetik und Energiesysteme

Testgetriebene Entwicklung

Testgetriebene Software-Entwicklung (Thaller: ISO 9001) zeigt die Verbindung von Prozessmodell und Qualitätsicherung

Page 3: Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung (SE)

Universität Stuttgart

Institut für Kernenergetik und Energiesysteme

Submodell SE 1(Anforderungsanalyse) im ABRKFUe

• Erstellung einer Spezifikation des Gesamtsystems gemeinsam mit dem Kunden und den Projektpartnern als Word-Dokument

• Erstellung eines fachlichen Modells mittels eines SA-Werkzeuges (Promod)

• Spätere Abweichungen bzgl. der Anforderungen müssen mittels eines Change-Requests beantragt und von einem Projektkontrollgremium genehmigt werden

ZDH_ABR_Scenarien ZDH_ABR_

Ergebnisreports

ZDH_ABR_EIN

Zustand_A_NCLIENT_ABR

ABR_ZDH_Ergebnisreports

B_berechnete_Ergebnisse

ABR_ZDH_Scenarien

ABR_ZDH_EIN

B_Eingabe_Session

B_Anfrage_Ergebnisse

ABR_CLIENT

B_Init

B_Session_Eingabe

B_Anforderung_Inputdateien

B_Rechnungsstatus

B_Data_Repository

B_Ergebnismanager

.4

B_Arbeitsdaten

manager.2

B_Sessionmanager

.1

B_Rechnungs

durchfuehrung.3

Spec

Change-Requests

Page 4: Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung (SE)

Universität Stuttgart

Institut für Kernenergetik und Energiesysteme

Submodell SE 2 (Entwurf) im ABRKFUe

• Grobentwurf der Architektur des ABR-Systems

• Erstellung der Rahmenkonzeption der Architektur als Word-Dokumente

• Entwurf der Architektur mittels UML und Rational Rose und Bestimmung der einzelnen Dienste

• Entwurf eines Kommunikationsmodells mittels UML und OCL

Object services

application objects

service service

SAL

service

SAL

KB

DM

Object Request Broker (ORB)

common facilities

Client Interface admin agent

RepositoryServiceStrategie

ServiceWorkflow Service

RessourceService

SAL

SALSAL

SALSALSAL SAL

Rahmen-konzeption

I - III

ScatteredData

- nrOfValues : Integer

Data(from System)

EdgeGrid

- dimension : Integer = 1

SurfaceGrid

- dimension = 2

SpaceGrid

- dimension : Integer = 3

Length

GridData

- gridConnection : enum {centered, staggered, c_class}

SpaceDirection

- nrOfMeshs : Integer- spacing : enum {uniform, varying}

+x1

+x2+x2

+x1

+x1+x3

0..1

+meshWidth

0..1

0..10..1

IsDescribedBy

IsDefinedOnTime IsDefinedOnSpace

Length LengthIsTimeStepOf

Time

ComputationTime

- nrOfTimeSteps : Integer

+timeStepWidth

TimeStep

1 1..*1 1..*

VolumetricDataQualitativeData QuantitativeData

- dataType : enum {scalar, vector, array}- physicalQuantity : String- unit : String

GeoPoint

- referenceSystem : enum {GK, UTM} = GK

+h +r

ComputationSpace

- dimension : Integer- gridType : enum {cartesian,uniform,rectilinear,regular}

+geoReferenceTimePeriod

- start : Date- end : Date

Group

0..*0..*

ScientificData

- description : String

0..*0..*

IsDefinedOnGroup

Raumbezug

Zeitbezug

Gruppenbezug

Daten

: C G e t P r o p o s e d V a l u e sF o r G e o s t r o p h i c W in d : C I

: C R e q u e s tM a n a g e r : D S : S S : W F S

: C D a t aM a n a g e r

d o J o b ( )

g e t P r o p o s e d V a l u e s F o r G e o s t r o p h i c W i n d ( s t d : : s t r in g , c o n s t O N T : : A B R : : T im e S t e p N u m b e r & , O N T : : A B R : : G e o s t r o p h i c W i n d * , O N T : : S y s t e m : : S A L C o n t a i n e r * , O N T : : S y s t e m : : I s L o c a t e d I n * , O N T : : S y s t e m : : E R R O R & )

G e t d a t a o u t o f t h e s c e n a r i o f o r m

G e t W o r k fl o w

E x e c u t e W o r k fl o w

c h e c k S i m S e s s io n ( s t d : : s t r i n g , s t d : : s t r in g , O N T : : S y s t e m : : E R R O R & )

Page 5: Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung (SE)

Universität Stuttgart

Institut für Kernenergetik und Energiesysteme

Submodell SE 3 im ABRKFUe

• Erstellung der Lastenhefte für die verschiedenen Dienste (Software-Komponenten) als Text-Dokumente

• Erstellung der Pflichtenhefte für die verschiedenen Dienste (Software-Komponenten) als Text-Dokumente

• Erstellung der Systemmodelle für die verschiedenen Dienste (Software-Komponenten) mittels Use-Cases in Rational Rose

LastenheftDienst x

PflichtenheftDienst x

ZDH GetAndSetZdhData

<<calls>>

Protokolle ausliefern(DeliverReports)

Protokolle erstellen und verwalten (ManageReports)

<<uses>>

<<uses>>

Protokoll-Modus ändern(ChangeReportMode)

<<uses>>

External Agent

Protokoll-Level ändern (ChangeReportLevel)

<<uses>>

Page 6: Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung (SE)

Universität Stuttgart

Institut für Kernenergetik und Energiesysteme

Submodell SE 4(-SW) im ABRKFUe

• Erstellung der Systemarchitektur der verschiedenen Dienste mittels UML, Powerpoint-Grafiken und Text-Dokumenten

• Erstellung der Dienstleistungs-beschreibungen aller Dienstleistungen der Dienste unter Verwendung des Kommunikations-modells als Text-Dokumente

Dienstleistungs-beschreibung

Dienst x

System-architekturDienst x

S A L

Z D H - K e r n d i e n s t

b e n u t z t

D e b i s - Z D H

P r o t o k o l l i e r u n g

S c h n i t t s t e l l e 1

S c h n i t t s t e l l e 2

S c h n i t t s t e l l e 4

S c h n i t t s t e l l e 3

S c h n i t t s t e l l e 5

main SAL ReportComponent

: (CDebisZDH)

Instantiation/Initialisation

1:

2:

ZDH Core Component

4:

3:

1.1.1 Allgemein

Dienstleistungsname nuclideData

Beschreibung Abfrage nach Nukliden und ihren Eigenschaften in Abhängigkeit vomDatenbanktyp. /F20/.

1.1.2 Informationsobjekte (Ausgangszustand)

Beschreibung der einzelnen Informationsobjekte (<Name> innerhalb der Tabelle eindeutig!):

Name Informationsklasse Attributliste Nebenbedingung(en)

dbType ONT::ABR::ZDHDataBase type

1.1.3 Informationsobjekte (Ergebniszustand)

Beschreibung der einzelnen Informationsobjekte (<Name> innerhalb der Tabelle eindeutig!):

Name Informationsklasse Attributliste Nebenbedingung(en)

nuclideDataTable ONT::ABR::NuclidePropertiesTable

nuclideDataContai-ner

ONT::System::SALContainer STRING: ShortName

REAL: HalfLife [d]

STRING: Predecessor

REAL: TransitionProbability

STRING: Prepredecessor

REAL: PreTransitionProbability

STRING: NuclideGroupID

Vorgänger und Vorvorgänger der Nuklide beim Zerfall sind durch deren Nuklid-IDs angegeben. Die zugehörigen Übergangs-wahrscheinlichkeiten von Vorgänger zu Nuklid (TransitionProbability) und von Vorvorgänger zu Vorgänger (PreTransitionPro-bability) sind als Zahlen zwischen 0 und 1 gegeben.

NuclideGroup gibt an, zu welcher Nuklidgruppe das Nuklid gehört.

Beschreibung benötigter Beziehungen zwischen den Informationsobjekten:

Beziehung von Name zu Name Beschreibung

ONT::System::IsLocatedIn nuclideDataTable nuclideDataContainer

Page 7: Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung (SE)

Universität Stuttgart

Institut für Kernenergetik und Energiesysteme

Submodell SE 5(-SW) im ABRKFUe

• Entwurf der Dienste mittels UML und Rational Rose

• Erstellung der Komponenten-spezifikationen der Dienste als Text-Dokumente aus dem Entwurf

• Erstellung der Testspezifikation für die verschiedenen Dienste

Komponenten-spezifikation

Dienst x

Test-spezifikation

Dienst x

CSAL_Job(from sal)

CZDH_ABR(f ro m InterfaceZDH_ ABR)

CGetZdhDataJob

$ s_rwMutex : AXT_RWMutex$ s_lKeepSessionDataForMinutes : unsigned long = 0$ s_pTidyUpThread : omni_thread*

getPSessionData()tidyUp()

0..* 10..*

#$s_ZDH_ABR

1

CSimulationSessionData

+$s_ses sionDataMap

0..*

simulationSessionID : std::string0..*

0..*

simulationSessionID : std::string0..*

CGetMMIDefaults

doJob()

CSetMMIDefaults

doJob()

CClearMMIDefaults

doJob()

CGetDefaults

doJob()

CSetDefaults

doJob()

CClearDefaults

doJob()

CGetZDHMeasurements

CZDH_ABR(from InterfaceZDH_ABR)

CSimulationSessionDataCGetZdhDataJob

getPSessionData()tidyUp()

10..*

#$s_ZDH_ABR

10..*

0..*simulationSessionID : std::string

0..* +$s_sess ionDataMap0..*

0..*

simulationSessionID : std::string

CSAL_Job(from sal)

CGetMonitoringAreas

doJob()

CGetNuclideGroups

doJob()

CGetNucl ideData

doJob()

CGetPowerPlantData

doJob()

CGetPossibleEmissionPoints

doJob()

CGetOperationTime

doJob()

CGetDecayTime

doJob()

CGetNuclideInventory

doJob()

lfd.Nr.

Prüffälle für Anfrage nach Liste der Überwachungsbereiche Ref.Pfl.

Ref.Prüfpr.

1.1 für einen gültigen DB-Typ1.2 für einen ungültigen DB-Typ1.3 Fehlende Input-Informationsobjekte

lfd.Nr.

Prüffälle für Anfrage nach Liste der Überwachungsbereichefür einen gültigen DB-Typ

Ref.Pfl.

Ref.Prüfpr.

1.1.1 ZDH verfügbar1.1.2 ZDH nicht verfügbar

lfd.Nr.

Prüffälle für Anfrage nach Nukliddaten Ref.Pfl.

Ref.Prüfpr.

2.1 für einen gültigen DB-Typ2.2 für einen ungültigen DB-Typ2.3 Fehlende Input-Informationsobjekte

lfd.Nr.

Prüffälle für Anfrage nach Nukliddaten für einen gültigenDB-Typ

Ref.Pfl.

Ref.Prüfpr.

2.1.1 ZDH verfügbar2.1.2 ZDH nicht verfügbar

lfd.Nr.

Prüffälle für Anfrage nach Liste der Nuklidgruppen Ref.Pfl.

Ref.Prüfpr.

3.1 für einen gültigen DB-Typ3.2 für einen ungültigen DB-Typ3.3 Fehlende Input-Informationsobjekte

lfd.Nr.

Prüffälle für Anfrage nach Liste der Nuklidgruppen für einengültigen DB-Typ

Ref.Pfl.

Ref.Prüfpr.

3.1.1 ZDH verfügbar3.1.2 ZDH nicht verfügbar

Page 8: Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung (SE)

Universität Stuttgart

Institut für Kernenergetik und Energiesysteme

Submodell SE 6(-SW) im ABRKFUe

• Implementierung der verschiedenen Komponenten der einzelnen Dienste in C++ und Fortran

• Durchführung von Tests für die jeweiligen Komponenten (Modultests)

Page 9: Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung (SE)

Universität Stuttgart

Institut für Kernenergetik und Energiesysteme

Submodell SE 7(-SW) im ABRKFUe

• Integration der einzelnen Komponenten zu Diensten

• Erstellung von Testprozeduren für alle Dienste entsprechend der Testspezifikation der Dienste

• Durchführung von Tests für alle Dienste entsprechend der Testspezifikation der Dienste

• Erstellung von Testprotokollen als Text-Dokumente

Test-protokollDienst x

Test-prozeduren

Dienst x

1.1.1 Test Prozedur 227

1.1.1.1 Kurzbeschreibung

Es wird eine Diagnose-Rechnung durchgeführt wobei die Fertigstellung der Teilreports gemeldet werdenund aus diesen heraus die Teilreports dargestellt werden

1.1.1.2 Voraussetzungen

ABR-System läuft

Benutzer ist am KFUe-Klienten auf der operationellen Datenbank eingeloggt und mit dem ABR-Server verbunden

1.1.1.3 Prozedurbeschreibung

Test-schritt

Ort Aktion Ort Reaktion Item(s) Bemerkung

1. KFUe-Klient Auswahl Menü Ausbreitungsrechnung ->Neues Szenario Kurzeit-ABR

ABR-Server

KFUe-Klient

Erzeugung der Simulationssession (CM)Beschaffung von Vorschlagswerten für dieerste Maske

Eingabemaske 1: Grunddaten erscheint

11.2 Erzeugung derSimSession mitEnterprise Manager(TabellenCM_SimSession undCM_TempScen)überprüfen

2. KFUe-Klient Eingabe der Grunddaten (RechnungstypDiagnose). Weitere Parameter derKurzzeitausbreitungsrechnung eingebenund/oder vorgeschlagene Daten ändernund mit <OK>-Button bestätigen.

ABR-Server

KFUe-Klient

Konsistenzprüfung der Eingaben der 1.Maske und Eintrag ins Szenario.Beschaffung von Vorschlagswerten für diezweite Maske

Eingabemaske 2 : Emissionsparametererscheint

11.2 Ggf nochmals aktuelleSimSession mitEnterprise Managerprüfen.

DV-PROJEKTAKTE ATS-Prüfprotokoll

Sachgebiet Projektbezeichnung Phase Verfasser Datum Seite

Abt. WN ABRKFUe Integration MW / KD 19.10.2001 1/1

Dokumenten-Nr. Ap001-2001KE-v0100 Verantwortlich Dr. Michael Weigele

1 TestbeschreibungTestitem: 1.1

Prüfprozedur: 101

Systemversion: 1.0.0

Verwendete Testwerkzeuge: DienstManager, WinABRAdmin

Testbeginn (Datum und Uhrzeit): 19.10.2001, 18:12

Testende (Datum und Uhrzeit): 19.10.2001, 18:14

Kurzbeschreibung:

Das System wird zum erstenmal gestartet.

2 Testdurchführung

2.1 Zustand zu Beginn des TestsABR-System ist installiert

Das System ist jungfräulich

2.2 TesteingabenDienst ABR-Watchdog wurde im Dienste-Manager ausgewählt und der Dienst gestartet.

2.3 BemerkungenKeine

2.4 Zustand am Ende des TestsDas ABR-System läuft

2.5 TestauswertungDer WinABRAdmin zeigt an, daß alle Dienste laufen.

3 TestergebnisAbnahme des Tests: Bestanden ohne Einschränkung

Bestanden mit Einschränkung

Nicht bestanden

Page 10: Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung (SE)

Universität Stuttgart

Institut für Kernenergetik und Energiesysteme

Submodell SE 8 im ABRKFUe

• Integration der Dienste zum ABR-System

• Test des ABR-Systems standalone

• Bereitstellung einer Abnahmetest-spezifikation (ATS) des ABR-Systems für den Auftraggeber als Text-Dokument ATS für das

ABR-System

Inhaltsverzeichnis

Abbildungsverzeichnis .............................................................................................................................6

Tabellenverzeichnis..................................................................................................................................7

Änderungsnachweis .................................................................................................................................8

1 Einleitung ..........................................................................................................................................9

2 Nachzuweisende Funktionen..........................................................................................................10

2.1 Systemverhalten ......................................................................................................................10

2.2 Bedienung über KFUe-Klient ...................................................................................................10

2.3 Automatische Simulation .........................................................................................................10

2.4 Zusätzliche wichtige Funktionalitäten ......................................................................................10

2.5 Zusammenspiel mit der Simulationsdatenbank.......................................................................10

3 Testumgebung ................................................................................................................................11

3.1 Ort ............................................................................................................................................11

3.2 Hardwareumgebung ................................................................................................................11

3.3 Systemsoftware .......................................................................................................................12

3.4 Datenbasis ...............................................................................................................................13

3.5 Anwendungsprogramme..........................................................................................................13

3.6 Testprogramme (Hilfsmittel) ....................................................................................................15

3.7 Testkonfiguration .....................................................................................................................16

4 Testmethoden und Vorgehensweise ..............................................................................................17

4.1 Ablauf der Abnahme ................................................................................................................17

4.1.1 Systemvalidierung ............................................................................................................17

4.1.2 Vorbereitung .....................................................................................................................17

4.1.3 Vorbesprechung ...............................................................................................................17

4.1.4 Durchführung....................................................................................................................18

4.1.5 Abschlußbesprechung......................................................................................................18

4.2 Dokumentation der Abnahme..................................................................................................18

4.2.1 Protokollierung der Testprozeduren .................................................................................18

4.2.2 Globaler Testbericht .........................................................................................................19

4.2.3 Abnahmeprotokoll.............................................................................................................19

5 Testitems.........................................................................................................................................20

5.1 Systemverhalten ......................................................................................................................20

5.1.1 Hochfahren des Systems .................................................................................................20

5.2 Bedienung über KFUe-Klient ...................................................................................................20

5.2.1 Anmelden und Verwalten von KFUe-Klienten ..................................................................21

5.2.2 Diagnose-Rechnung mit Vorschlägen aus dem System..................................................22

5.2.3 MMI-Prognose-Rechnung mit Vorschlägen aus dem System .........................................22

Page 11: Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung (SE)

Universität Stuttgart

Institut für Kernenergetik und Energiesysteme

Submodell SE 9 im ABRKFUe

• Installation des Systems im Umfeld beim Auftraggeber

• Durchführung und Protokollierung der Abnahme auf der Basis der ATS

• Einführung des Auftraggebers in den Umgang mit dem System

• Erstellung von System- und Benutzerhandbuch

• Wartung und Pflege (Fehlerbeseitigung, ...)

Globaler TestberichtTest-

protokollTestfall x.x

ATS-Fehlerliste

Abnahme-erklärung

Benutzer-handbuch

System-handbuch

Page 12: Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung (SE)

Universität Stuttgart

Institut für Kernenergetik und Energiesysteme

Handhabung des Submodells SE in ABRKFUe

• SE 1 als Wasserfallprozess, Änderungen mittel Change-Requests• SE 2 begonnen als Wasserfallprozess, spätere Erweiterungen des

Kommunikationsprozesses erfolgten iterativ-inkrementell• SE 3 begonnen als Wasserfallprozess, spätere Modifikationen

erfolgten iterativ• SE 4 begonnen als Wasserfallprozess, spätere Modifikationen

erfolgten iterativ-inkrementell• SE 5 begonnen als Wasserfallprozess, spätere Modifikationen

erfolgten iterativ-inkrementell• SE 6 erfolgte zum Teil als Wasserfallprozess, als auch zum Teil

iterativ-inkrementell• SE 7 erfolgte iterativ-inkrementell• SE 8 erfolgte iterativ-inkrementell• SE 9 als Abschluss entsprechend den Notwendigkeiten

Page 13: Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung (SE)

Universität Stuttgart

Institut für Kernenergetik und Energiesysteme

Submodell Konfigurationsmanagement

KM erfolgt am IKE durch CVSDurch Anlegen der Projektstruktur werden die weiteren Aufgaben weitgehend automatisch erledigt

KM-Initialisierung

Konfigurations-verwaltung

KM-Berichts-wesen

Änderungs-management

Datensicherung

Page 14: Universität Stuttgart Institut für Kernenergetik und Energiesysteme Submodell Softwareentwicklung (SE)

Universität Stuttgart

Institut für Kernenergetik und Energiesysteme

KM am IKE

• Konfigurationsmanagement erfolgt am IKE auf Basis von CVS

• Folgende Projektstruktur hat sich bewährt