• Keine Ergebnisse gefunden

Die Klassifikationsbaummethode für eingebettete Systeme mit Testmustern fuer nichtkontinuierliche Reglerelemente

N/A
N/A
Protected

Academic year: 2022

Aktie "Die Klassifikationsbaummethode für eingebettete Systeme mit Testmustern fuer nichtkontinuierliche Reglerelemente"

Copied!
5
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Die Klassifikationsbaummethode f ur ¨ eingebettete Systeme mit T estmustern f ur nichtkontinuierliche ¨ Reglerelemente

AlexanderKrupp, WolfgangMueller Universit¨at Paderborn/C-LAB, Paderborn, Germany

Abstract:Ein wichtiges Qualit¨atsmerkmal des modellbasierten Tests und damit beim Test von Simulink-Modellen sind ¨Uberdeckungskriterien. Wir stellen einen Ansatz zur Verbesserung der Test¨uberdeckung von Simulink-Modellen unter Verwendung der Klassifikationsbaummethode (CTM) vor. Dazu erweitern wir die CTM um eine Si- gnalbeschreibung durch die Ableitung eines Signals.

1 Einleitung

Insbesonderediefr¨uhenPhasendes Entwurfselektronischer Systeme beinhalten mehre- re Herausforderungen. Anforderungenwerden hiermeist in nat¨urlichsprachlicheS¨atzein Tabellenstrukturengefasst, diedieGrundlagef¨ur denEntwurf und Analysedeszuentwer- fendenSystemsbilden.InweiterenAnalysenwerdenformaleVerifikationen [Kro99]und Simulationen [BCNN04] eingesetzt. Simulationenwerdenimmer auf BasiseinesModells durchgef¨uhrt.Je nachAnwendungsbereichundModellierungstiefe bzw. Abstraktionsgrad finden hier verschiedene Simulatoren z.B. Matlab/Simulink, SystemC, SystemVerilog, oder VHDL ihre Anwendung. W¨ahrend die Verfahren zur automatischen Testmuster- Generierung f¨ur sp¨atereEntwurfsphasen ziemlichausgereift sind[JG03, Cro99], ist die Testmuster-Erstellung infruhen¨ Phasen ein nochrelativ unbearbeitetes Gebiet und wird meistmanuelldurchgefuhrt.¨ Inj¨ungsterZeit findethier die Ideedesmodellbasierten Tests gr¨oßereBeachtung, wobeiInformationen zur Erstellung der Testmuster aus der Struk- tur des jeweiligen Modells gewonnen werden. Zur strukturierten Ableitung modellba- sierterTests schl¨agt Conrad[Con04] Klassifikationsb¨aumealsZwischenschritt vor. Ein Klassifikationsbaumwird manuell aus der Anforderungsbeschreibung und dem Modell erstellt und dient zur automatischen Ableitung von Testumgebungen mit denen das si- mulationsf¨ahige Modell validiert wird. Im Automobilbereich liegt das Modell h¨aufig als Matlab/Simulink-Modell vor. Verschiedene nichtkontinuierliche Regelelemente er- weitern einen Regler um zus¨atzliche Arbeitsbereiche, die bei Regleranalyse und –test ber¨ucksichtigt werden m¨ussen.InSimulink wurdendeshalb ¨Uberdeckungskriterien(wie z.B. Decision- oder Condition-Coverage) fur¨ nichtkontinuierliche Modellelemente ein- gef¨uhrt[Ald02].

Wir f¨ugenderKlassifikationsbaummethodefur¨ eingebetteteSysteme eine neueArt der Si- gnalrepr¨asentation hinzu.Zus¨atzlich zur abstraktenSignalverlaufsdefinition l¨aßt sichda- mit dieAbleitungeines Signalsuber¨ Aquivalenzklassen¨ angeben. DurchdieVerwendung des Dirac-Impulsesbei der Beschreibung der AbleitunglassensichsoauchSprungh¨ohen eines Signals unabh¨angig vondessenaktuellemWert klassifizieren. DieseEigenschaftl¨aßt

(2)

1Testsequence 1(t) 1.10 s 1.2 2 s 1.3 30 s 1.480 s 1.5110 s 1.6 200 s

input

]5,10]

0 vd

[−5,0[

[−80,−10[

]0,70] ]10,80]

0

delta_vd

[−10,0[

]0,5]

CC

[−10,−5[

Komposition Klassifikation Klasse

Testschritt

Abbildung 1: CTE Baum f¨urvd,∆vd

sich z.B. in einemWhite-Box-Test ausnutzen, um eine h¨ohere Test¨uberdeckung fur¨ be- stimmte nichtkontinuierlicheReglerelementeinSimulinkzuerreichen.

2 Klassifikationsb¨aume und der Dirac-Impuls

Zur strukturierten Darstellung von Testf¨allen wurden Anfang der 90er Jahre bei der Daimler–BenzAG die Klassifikationsb¨aume entwickelt[GG93]. DieErstellung von Klas- sifikationsb¨aumen und der Kombinationstabelle wird durch die auf der CP-Methode (Category-Partition)basierende Klassifikationsbaummethodeunterst¨utzt [OB88].In der urspr¨unglichenAuspr¨agungbeschreiben Klassifikationsb¨aumeverschiedeneEingabekon- stellationen fur¨ ein Testobjekt. Um auch zeitabh¨angige Testverl¨aufe formulieren zu k¨onnen, wurde die Notation seit 1998 schrittweise zur Klassifikationsbaummethode f¨ureingebetteteSysteme(CTM/ES)erweitert[Con04]. DerKlassifikationsbaum(siehe Abb. 1) wird speziellaus der technischenSchnittstelledesTestobjektes abgeleitet, d.h. je- deEingangsgr¨oßedesTestobjektes (hiervd) wird durch eineKlassifikationdargestellt. Der zul¨assigeWertebereich einer Eingangsgr¨oßewird dann ¨uberIntervalle oder Einzelwertein Klassenpartitioniert.

Eineabstrakte Testsequenzwird auseinzelnen Testschrittenaufgebaut, diealszeitliche Abfolgeindie ZeilenderKombinationstabelleabgebildet werden. Der Aktivierungszeit- punkteinesTestschritts wird als Synchronisationspunktbzw. als St¨utzstelle bezeichnet.

DerZeitpunkt wird in einerzus¨atzlichenSpalte zu jeder St¨utzstelleangegeben. Der Si- gnalverlaufzwischendenStutzstellen¨ wird durchverschiedene Interpolationen beschrie- ben, wobei der ¨Ubergangz.B. als Sprung–, Rampen–,oder Sinusfunktion erfolgenkann.

InderKombinationstabellewerden ¨UbergangsfunktionendurchverschiedeneLinientypen zwischendenStutzstellen¨ repr¨asentiert.

Dabei stellen die verschiedenen Klassifikationen mit ihrem Wertebereich Xi und die zugeordneten Klassen Pi(Xi) der CTM einenabstrakten Zustandsraumder Eingabeva- riablen dar. Jeder Eingabevariablendes Testobjekts entspricht eine Klassifikation. Der zeitlicheAblaufeinesTestszenarios wird mit HilfevonStutzstellen beschrieben. W¨ enn T = {t0, t1, ..., te}mit t0 < t1 < ... < tedie Mengeder St¨utzstellen einesTestsze- narios ist, so heißendie Zeitintervalle[t0, t1],[t1, t2], ...,[te−1, te]Testschritte. EineWer-

(3)

In1 Out1 Vehicle

Speed vd

Signal Saturation

In1 Out1

PI Controller

a v

s Kinematics

Acc

Abbildung 2: Simulink Fahrtregler

tefunktionvi : T → Xi ordnet jeder St¨utzstelle einenWertzu. EineWertefunktionvi heißtkompatibel, wenn zu jedem Zeitpunkttgilt, daßvi(t)zu derentsprechenden Klasse geh¨ort. Eine Interpolationsfunktionii = T → I mit I = {step, ramp, sine, ...}ord- net der Eingangsvariableizu jedem Zeitpunkt ausT eine Interpolationsvorschriftzu. Die Interpolationsvorschriftii,tk(t)gibt denWerteiner Eingangsvariablenabder Stutzstelle¨ tk an. Bei Verwendung vonRampenfunktionund Sinus-HalbwellealsInterpolationsvor- schrift ergibt sich einstetigerTestdatenverlauf¯vi : T¯ → Xi, wobeiT¯ ⊃ T einestrikt geordnete Mengevon ZeitpunktenimSinnedes klassischen Zeitbegriffs ist.

Angelehnt an [Con04]schlagenwir eine Erweiterung der Klassifikationsbaummethode CTM/ES vor, diedievorhandenen Interpolationsm¨oglichkeiten erweitert und sodie Klas- sifikationvonSprungh¨ohen einer Eingabevariablegestattet. D.h.beimehrfacher Verwen- dung derInterpolationstepin einerTestsequenz l¨aßt sichdieSprungh¨ohe ¨ubereine Klas- sifikationvorgeben. Dazubeschreibenwir den Testdatenverlaufzus¨atzlich ¨uber seineAb- leitung 1.Ordnung, und verwenden dieDirac-Distribution δ(t) und die Heaviside’sche SprungfunktionH(t)[F¨ol94]. Sei∆vi:T →Y die zur Wertefunktionvigeh¨orige, ana- logzuviuber St¨¨ utzpunktedefinierte1. Ableitung.∆viheißeDifferenzwertefunktion mit demWertebereichY. Sei∆vi:T¯→Y deren zeitkontinuierlicheFortsetzung:

∆vi(t) =

e−1 j=0



∆vi(tj)δ(t−tj) ii(tj) = dirac

ii,tj(t)(H(t−tj)−H(t−tj+1)) ii(tj) = dirac (1) wobei ii,tj die Interpolationsvorschrift ist und ii die Interpolationsfunktion.Ist die In- terpolationsvorschrift keineDirac-Distribution, so entspricht der kontinuierlicheVerlauf von∆vi(t)derublichen Interpolationsvorschrift¨ [Con04]. Anjeder Stutzstelle¨ tj, diedie Dirac-Distributionverwendet, wird dieSprungh¨ohe∆vi(tj)aus dem Klassifikationsbaum und derKombinationstabelle ermittelt. DerTestdatenverlaufergibt sichdurch Integration von∆vi(t)undmitHilfedes Startwertsvi(t0).

3 Fallbeispiel Tempomat

Bereits seit den 80er Jahren wird der Tempomat als Komfortfunktionin Kraftfahrzeu- gen angeboten. Eine weiterentwickelteVariante mit Sicherheitsfunktionwird seit 1998 angeboten1.InAbbildung2isteinRegelkreis inAnlehnung andenRegelkreis f¨urhinder-

1z.B. von DaimlerChrysler als “DISTRONIC”

(4)

nisfreieFahrteines solchen TempomateninSimulink-Notationabgebildet. DieDifferenz zwischenSoll- undIst-Geschwindigkeit (vd−v) des Fahrzeugs sollausgeregelt werden.

DieRegeldifferenz, diedemPI–Reglerzugef¨uhrt wird, ist indiesem Modelldurch eine S¨attigungbegrenzt.Hinter demPI–Regler folgt die modellierteStreckeaus der dieaktu- elleGeschwindigkeitvwieder ruckgef¨¨ uhrt wird. Ein nichtkontinuierliches Regelelement wiedie hier verwendeteS¨attigungerweitert denRegler um zusatzliche¨ Arbeitsbereiche, die bei Regleranalyseund –testberucksichtigt werden m¨¨ ussen, um eine entsprechende Test¨uberdeckungzu erzielen.Indem hier gezeigten einfachenFall erfolgt dieS¨attigung jeweilsbei denWerten5und−5.

Der Klassifikationsbaum zum Testobjekt “Tempomat”ist in Abb. 1 zu sehen. Der ein- zigeEingangvd ist alsKlassifikation im Klassifikationsbaumabgebildet. Eine weitere Klassifikation bezieht sich auf die Ableitung ∆vd von vd. Zu jeder Klassifikation ist eine Mengevon Klassen definiert, die denWertebereichderKlassifikationen mitHilfe von Intervallen ¨uberdecken. Der Wertebereichf¨urvd istXvd = [−10,70]ms. Der Wer- tebereichY∆vd = [−80,80]sm2 ist soaus dem Umfang vonXvd ermittelt, daßeindurch

∆vd vorgegebener Sprung vonvdmaximal ¨uber das gesamte IntervallXvd hinweger- folgenkann. Der WertebereichjederKlassifikationwirdhierbei in Klassenunterteilt. F¨ur dieGeschwindigkeitvgibt es 3Klassen:{[−10,0[, 0, ]0,70]}. F¨ur∆vd sind 7 Klas- sendefiniert. Diesewurden ermittelt unter der Annahme eines station¨aren Zustands von vd−v. Die3Klassen[−5,0[, 0, ]0,5]beinhaltendiejenigenWertefur¨ ∆vd, die nicht zumEintritt indenS¨attigungsbereichgen¨ugen, d.h.vd−v∈[−5,5]. Die beiden Klassen [−10,−5[, ]5,10]gen¨ugen, um m¨oglicherweisedenS¨attigungsbereich zuerreichen, wenn (vd−v)∈[−5,5]. Die beiden letzten Klassen[−80,−10[, ]10,80]gen¨ugenimmer umin dieS¨attigungzu gelangen. DieBestimmung desKlassifikationsbaumes aus demSystemin- terfacewird in [Con04] beschrieben. Die zus¨atzlicheBestimmung derKlassender Diffe- renzwertefunktion erfolgt automatischaus demSimulink-Modell, unter Berucksichtigung¨ nichtkontinuierlicher Eingangselemente.MitHilfedes danachvorliegenden Klassifikati- onsbaums wird anschließendeine Testsequenz erzeugt. Eine Testsequenz, diealle Klassen von∆vd mit demDirac-Impulsuberdeckt, und die nach¨ jeder AnwendungeinesImpul- ses auf∆vd (und damiteines Sprungs aufvd) demRegler ausreichend Einschwingzeit gew¨ahrt,erzieltmithoher Wahrscheinlichkeiteinevollst¨andige ¨Uberdeckung fur das¨ be- trachteteS¨attigungsglied.Indem KlassifikationsbauminAbb. 1 wurde eine Testsequenz

¨

uber die Kombinationstabelledefiniert, die zwarnicht alle Klassenvon∆vduberdeckt,¨ dieaberbereits f¨ureinevollst¨andigeDecision CoverageinSimulink gen¨ugt. Dasbedeu- tet, daß alledrei Abschnitteder S¨attigungsfunktion mindestenseinmalw¨ahrend desTests erreicht werden. Die Instantiierungzueinereindeutigen Testsequenz erfolgt automatisch, z.B. durch zuf¨alligeAuswahlder Stutzstellen,¨ o.¨a.[BCS97, BN03]. Einesolche Testse- quenzist inAbb. 3zu sehen.

4 Zusammenfassung

In dieser Arbeit stellen wir einen Ansatz zur Verbesserung der Test¨uberdeckung von Simulink-Modellenunter Verwendung derKlassifikationsbaummethodefur¨ eingebettete

(5)

Abbildung 3: Simulink Signalvd

Systeme(CTM/ES) vor. Dazuerweiternwir dieCTMumdieSignalbeschreibung durch ihreAbleitung, dieu.a. durchDirac–Impulse beschrieben werden kann. Bei gleichzeiti- germanueller Definitiondes Signals und seiner Ableitung k¨onnenjedoch leichtInkonsis- tenzenauftreten, diedurch entsprechende Maßnahmenabzupr¨ufensind. Bei der Erstel- lung der konkreten Testsequenzsind ebenfallsInkonsistenzen m¨oglich.Zur praktischen Anwendung dieserMethodederTestsequenzgenerierungerscheint weitereWerkzeugun- terst¨utzung daher unverzichtbar.

Danksagung

Die hierbeschriebeneArbeit wurdedurchdas BMBF-ProjektIMMOS gef¨ordert. Wirbe- dankenuns außerdem beiMirkoConrad vonDaimlerChrysler, sowie beiOttoLinnemann undKlaus Lamberg vondSPACE f¨ur viele hilfreicheAnregungenund Diskussionen.

Literatur

[Ald02] William Aldrich. Using Model Coverage Analysis to Improve the Controls Develop- ment Process. AIAA GN&C, 2002.

[BCNN04] J. Banks, J. Carson, B. L. Nelson und D. Nicol. Discrete-Event System Simulation.

Prentice Hall, 4. Auflage, 2004. ISBN 0-131-44679-7.

[BCS97] Standard for Software Component Testing. Working Draft 3.3. Bericht, British Conputer Society (BCS), Specialist Interest Group in Software Testing, April 1997.

[BN03] E. Broekman und E. Notenboom. Testing Embedded Software. Addison-Wesley, Lon- don(GB), 2003.

[Con04] Mirko Conrad. Modell-basierter Test eingebetteter Software im Automobil. Deutscher Universit¨ats-Verlag, Wiesbaden, 2004.

[Cro99] Alfred Crouch.Design-For-Test For Digital IC’s and Embedded Core Systems. Prentice Hall PTR, 1999. ISBN 0-130-84827-1.

[F¨ol94] Otto F¨ollinger.Regelungstechnik. H¨uthig, 8. Auflage, 1994.

[GG93] Matthias Grochtmann und Klaus Grimm. Classification Trees for Partition Testing.

Softw. Test., Verif. Reliab., 3(2):63–82, 1993.

[JG03] N. K. Jha und S. Gupta.Testing of Digital Systems. Cambridge University Press, 2003.

ISBN 0-521-77356-3.

[Kro99] Thomas Kropf. Introduction to formal hardware verification. Springer, 1999. ISBN 3-540-65445-3.

[OB88] Thomas J. Ostrand und Marc J. Balcer. The Category-Partition Method for Specifying and Generating Functional Tests.Commun. ACM, 31(6):676–686, 1988.

Referenzen

ÄHNLICHE DOKUMENTE

Espèces se nourrissant d’autres familles de plantes Mis à part ces espèces de coléoptères directement nui- sibles au colza, 25 autres espèces phyto-phyllophages et trois

Pour faire face à ce défi épidé- miologique, le canton de Vaud a développé le PcD Programme cantonal Diabète visant à diminuer l‘impact du diabète sur la population en

„Nach der Fragestunde ist vor Eingehen in die Tagesordnung eine Aktuelle Stunde abzuhalten, wenn dies mindestens vier Mitglieder des Landtages, die demselben Klub angehören,

Wallbach Leuggern Endingen Lupfig Oberhofen Gränichen Künten Muri Herisau Wintersingen Oeschberg Studen bei Biel Zäziwil Noflen Twann Maienfeld Zizers Nottwil Urswil Oberkirch

Wallbach Leuggern Endingen Lupfig Oberhofen Gränichen Künten Muri Herisau Wintersingen Oeschberg Studen bei Biel Zäziwil Noflen Twann Maienfeld Zizers Nottwil Urswil Oberkirch

Wallbach Leuggern Endingen Lupfig Oberhofen Gränichen Künten Muri Herisau Wintersingen Oeschberg Zäziwil Noflen Twann Maienfeld Zizers Nottwil Urswil Oberkirch Aesch Berneck Grabs

Insgesamt wurde die durchschnittliche Verspätung pro Flug von 1,37 Minuten auf 0,23 Minuten reduziert, das entspricht einer Verbesserung um 83%... PÜNKTLICHKEIT IN

Neben den Basisdaten einer Betriebsstätte wird auch der Zertifikatseintrag der SMC-B Karte (Praxisausweis) in den TI-Verzeichnisdienst eingetragen.. Welche Basisdaten