Die nachstehenden Begriffe legen lediglich die persönliche Erfahrung dar. Ob und wie aufwendig sich Einträge gestalten,
hängt von unvorhersehbaren Umständen ab - z.B. der zeitlichen Verfügbarkeit. Es besteht kein Anspruch auf Vollständigkeit
oder auf Repräsentativität der verlinkten Inhalte.
Name / Kürzel Name / Abbreviation |
Erläuterung Description |
A | |
Agile SW-Entwicklung |
Agile Softwareentwicklung
bezeichnet Ansätze im Softwareentwicklungsprozess, die beabsichtigen, Ressourcen so früh wie möglich in die Softwareentwicklung zu stecken, anstatt sich in die Planung zu verausgaben
- nach dem Motto Je mehr nach Plan gearbeitet wird, desto mehr bekommt man das, was geplant wurde - aber nicht unbedingt, was gebraucht wird.
Solche Ansätze sind daher inkrementell und iterativ: Sie setzen u.a. folgende Bedingungen voraus:
-
Das Entwicklerteam ist selbstorganisiert und flexibel.
-
Das Entwicklerteam steht in regelmäßigen, kurzen Abständen mit dem Kunden (bzw. dem "Product Owner") in Verbindung, um seine "Spezifikationen" stets auf den Prüfstand zu setzen und ggf. kurzfristig anzupassen oder Prioritäten neu zu gestalten.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
Im DKEY Projekt wurde auf ein solches Paradigma teilweise zurückgegriffen:
Scrum
|
AGS |
Adaptive Getriebe-Steuerung
bezeichnet ein Softwarentwicklungs-Projekt im Automotiv Sektor (BMW AG)
- siehe auch in der Chronologie
Projekt 23.
Das im Rahmen dieses Projektes entwickelte embedded Softwaremodul - geschrieben in C,
|
AOI |
Abwasserverband Obere Iller (AOI)
ist eine Körperschaft des öffentlichen Rechtes, die die Abwässer der Mitgliedsgemeinden in eigenen Einrichtungen transportieren und reinigen lässt.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- Home Page
AOI (Deutsch)
|
APDU |
Application Protocol Data Unit
Nach dem ISO 7816 Standard bestimmt die APDU-Einheit die Kommunikation zwischen Chipkarte und einer Chipkarten-Anwendung
(auf dem Kartenleser). Sie besteht aus folgenden Byte-Blöcken:
- dem Block command APDU, APDU-Kommando an die Chipkarte
- dem Block response APDU, APDU-Antwort der Chipkarte auf das letzte Kommando
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- ITWissen
APDU (Deutsch)
- Wikipedia
APDU (Deutsch)
- Überblick
APDU von Wolfgang Rankl (Deutsch)
|
APDU-Test |
APDU-Test alias Application Protocol Data Unit Test
Dieser Test besteht aus einer geordneten Reihe von APDU
-Kommandos an die Karte, deren Antwort (Response APDU) jeweils mit einem Sollwert verglichen werden.
Nach dem GlobalPlatform-Konzept
ist die Chipkarte von einem Entität namens dem Card Manager vertreten. Aus Sicht der Implementierung hat dies folgende Auswirkungen:
- Unmittelbar nach dem Reset ist der Card Manager ist das standardmäßig selektierte Applet.
- Der Card Manager ist mit weitreichenden Rechten und Funktionen ausgestattet - inkl. des Kommandos Dispatcher.
Er wird vom Kartenhersteller mitgeliefert - im Gegensatz zu anderen Applets, die Zusatzfunktionen implementieren.
Einfache APDU-Tests prüfen lediglich das korrekte
Verhalten des Card Manager - und richten sich schwerpunktmäßig nach der
GlobalPlatform-Spezifikation.
Ausgeklügelte Tests müssen unter Umständen entwickelt werden, um die Interaktion zwischen Applets - u.a. Kommando-Verteilung, Datenverschlüsselung -
zu bewerten. Manche Szenarien setzen die Entwicklung von komplexen Testapplets voraus.
|
API-Test |
API-Test alias Application Programming Interface Test
Im Kontext von JavaCard-Chipkarten,
bezieht sich der Begriff API auf das Framework, das nach dieser Spezifikation den Applet-Entwicklern zur Verfügung stehen muss - z.B.
Verschlüsselungsfunktionen.
Der Entwickler von API-Tests schreibt also Test-Applets, die gezielt Funktionen aus dem Framework nutzen. Es gibt es zwei Wege der
Test-Entwicklung:
-
Das Test-Applet wird so geschrieben, das die zu testenden Funktion - bzw. Konfiguration - aufgerufen wird,
wenn ein bestimmtes APDU-Kommando
verschickt wird. Die Antwort des Applets wird auf Testskript-Ebene analysiert.
-
Alle Prüfungen werden im Testapplet selber codiert.
Der erste Weg setzt ein Testtool voraus, das vieles kann. Der zweite Weg bedeutet, dass das Testapplet sehr umfangreich wird.
Je nach Testziel und Merkmalen der verfügbaren Testtools muss der Testentwickler, die optimale Balance finden.
API-Tests sind Funktionale Tests,
die zum Modultest gehören.
|
APT |
APT steht für Advanced Packaging Tool
ist eine Infrastruktur (Konzept, Vorgehensweisen, Formate, Bibliotheken, Tools) für die Software-Verwaltung (Package Management)
auf Debian und Ubuntu Linux-Systemen. Auf dieser Grundlage wurden verschiedene Tools auf der Kommandozeile (z.B. apt, apt-get) oder
als graphische Schnittstelle (z.B. discover, muon) entwickelt.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
ASPICE |
Automotive Software Process Improvement and Capability Determination
ist eine domänenspezifische Variante des internationalen Standards ISO/IEC 15504 (SPICE). Der Zweck von Automotive SPICE ist die Bewertung der Leistungsfähigkeit der Entwicklungsprozesse von Steuergerätelieferanten in der Automobilindustrie.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Authentifizierung |
Daten-Authentifizierung (Englisch Data Authentication)
Vorgang, der darauf abzielt, zu prüfen, ob einkommende Daten wirklich von einem vermeintlichen User stammen.
Um seine Daten zu authentifizieren signiert der Urheber seine Daten.
Meistens besteht die Signierung darin, dass
zunächst ein Hashwert - auch Fingerabdruck genannt - aus den Daten ermittelt wird, der in einem zweiten Schritt mit einem Geheimschlüssel
verschlüsselt wird. Das Ergebnis ist eine sogenannte Signatur.
Der Empfänger geht den umgekehrten Weg. Er entschlüsselt die Signatur, um den Hashwert der gesendeten Daten zu ermitteln.
Auch ermittelt er den Hashwert der empfangenen Daten und vergleicht beide Hashwerte. Sind sie ungleich,
wurden die Daten während der Sendung modifiziert: die Authentifizierung schlägt fehl.
Muss nur geprüft werden, dass die Daten während der Sendung nicht - unabsichtlich - korrumpiert wurden,
genügte die Berechnung und der Vergleich der Hashwerte: In diesem Fall spricht man von Verifizierung der Datenintegrität.
Eine Authentifizierung identifiziert nicht nur den Sender, sondern immer auch zugleich sichert die Integrität der Daten.
|
B | |
bash |
bash Unix Shell Akronym von Bourne Again SHell
ist eine freie Unix-
Shell
und Teil des GNU-Projektes. Sie ist heute auf vielen
unixoiden Systemen die Standard-Shell.
Weiterführende Links:
English:
Bash Commands for OSX
Bash Commands for Linux
Bash Builtin Commands
Bash Reference Manual
Deutsch:
Wikipedia: Bash
Khelil: Interne Projekte.
khelil: bash
Khelil: Beispiele von Kommandos
|
BASIC |
BASIC Beginner's All-purpose Symbolic Instruction Code
ist eine leicht zu erlernende Computersprache, die in den 1980er als Einstiegssprache für Computeranwendungen galt.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- Wikipedia
BASIC (Deutsch)
|
Befehlsinterpreter |
Befehlsinterpreter
Deutsche Übersetzung des Englischen Begriffs
Shell,
der vor allem in der Unix-Welt
gepägt wird - aber auch in
Microsoft Windows
ein Pendant findet.
|
Benennung von Tests |
Benennung von Tests
Es gibt eine Vielzahl von Perspektiven, nach denen die Testaktivität betrachtet werden kann - siehe auch
das Buch Basiswissen Softwaretest.
Anbei werden beispielhaft einige Benennungen erläutert:
|
Benennungsprinzip |
Beispiele |
1 |
Test-Objekt |
API-Test, GUI-Test |
2 |
Methodik, die zur Definition führt |
Black-Box-Test Unter dem Begriff Black-Box werden etliche Testdefinitionsmethoden zusammengefasst: z.B. Äquivalenzklassen, Grenzwertmethode |
3 |
Stufe im Entwicklungsprozess |
Modultest, Systemtest |
4 |
Personenkreis, der die Tests definiert/durchführt |
Entwicklertest, Anwendertest |
5 |
Testumfang |
Regressionstest |
Wichtig ist zu verinnerlichen, dass der gleiche Test - je nach Kontext - unterschiedlich bezeichnet werden kann.
|
Black Box Test |
Black Box Test
Black-Box-Tests werden aufgrund von funktionalen Anforderungen erarbeitet -
ohne Kenntnis der dazugehörigen Implementierung. Nur das von außen sichtbare Ein- und Ausgabeverhalten zählt.
Wird die Software als eine Funktion P: S → R betrachtet, zielen Black Box Verfahren darauf, aus der Gesamtmenge S
(aller möglichen Eingabedaten) eine viel
kleinere Menge S' (der Testeingabedaten) abzuleiten, die im Hinblick auf das Verhalten der Software eine möglichst große Aussagekraft besitzt.
Der Fokus der Testaktivität - d.h. die Bestimmung der geeigneten Untermenge S' - wird in der Praxis von diversen Faktoren beeinflusst,
die sich einander bedingen, z.B.:
- Priorisierung der Funktionen, die die Software unterstützen soll
- Ergebnisse von Risikoanalysen
- Wirtschaftliche Betrachtungen
- Zeitliche Verfügbarkeit der Ressourcen
In der Literatur und in der Praxis kommen vor allem folgende Verfahren in Frage:
-
Äquivalenzklassenbildung (Englisch Equivalence partitioning)
Die Urmenge S wird in Untermengen - Klassen genannt - aufgeteilt, von denen zu erwarten ist,
dass sich die Software für alle einer Klasse gehörigen Elemente gleich verhält.
Gilt diese Annahme, reicht die Ausführung eines einzigen Eingabedatums aus der Klasse aus,
um das Verhalten der Software für die Gesamtklasse zu qualifizieren.
Es wird zwischen zwei Arten von Äquivalenzklassen unterschieden:
den gültigen Äquivalenzklassen |
gültige Eingabedaten werden herangezogen |
den ungültigen Äquivalenzklassen |
ungültige Eingabedaten werden herangezogen |
-
Grenzwertanalyse (Englisch boundary value analysis)
Gleich wie vorher werden zunächst die Äquivalenzklassen herausgebildet. Anstatt eines beliebigen
Element aus den jeweiligen Klassen zu wählen, werden Elemente im Grenzbereich der Klasse genommen -
weil die Erfahrung zeigt, dass Implementierungen oft an diesen Stellen irrtümlich sind.
Anmerkung:
In der Praxis wird oft nach Identifizierung der Klassen, pro Klasse (alle) Elemente an der Grenze und einige Elemente aus dem
Inneren in die Testfälle aufgenommen. Dies trägt der Tatsache Rechnung, dass die Software u.U. anders geschrieben wurde,
als eine unmmitelbare Betrachtung von Eingabe- Ausgabe- -Daten es vermuten ließe.
-
Zustandsbezogener Test (Englisch state generated test)
Die Testmenge wird über Zustände des Systems strukturiert.
Etliche Programme werden teilweise oder gänzlich über Zustände gesteuert. Ist ein gegebener Zustand erreicht, sind
dadurch bedingt bestimmte Aktionen erlaubt oder auch verboten. In diesem Zusammenhang spricht man von einem Zustandsautomaten (Englisch state machine).
In der Praxis handelt es sich um endliche Automaten - d.h. die Zahl der erreichbaren Zustände ist endlich. Beispiele dafür sind:
Implementation der GlobalPlatform Spezifikation für Chipkarten, die Implementation der Getriebesteuerung eines Fahrzeuges.
-
Ursache-Wirkungs-Graph-Analyse (Englisch cause-effect graphing)
In manchen Projekten lässt sich die Software - in Form der Funktion P: S → R -, ganz oder teilweise, explizit als Graph abbilden, der
jeweils einer Teilmenge von S - Ursachen genannt - ein Element von R - Wirkung genannt - zuordnet.
Zur Darstellung dieses funktionalen Zusammenhangs wurden verschiedene Methoden ersonnen: z.B. Ursache-Wirkung-Graph, Entscheidungstabelle.
-
Anwendungsfallbasierter Test (Englisch use case test)
Die Definition der Testmenge leitet sich aus der Betrachtung von (typischen, wichtigen) Anwendungsfällen ab.
Im Bereich der Chipkarten ist solche Vorgehensweise verbreitet. Wenn die Softwarespezifikation als Modell - z.B. UML - vorliegt,
ist es denkbar, die Tests automatisch zu definieren.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
B-Methode |
Die B-Methode
ist eine formale Sprache, die eine Software-Spezifikation (bzw. ein Pflichtenheft)
oder sogar eine Software-Implementierung (deren Quelltext) anhand eines geschlossenen mathematischen Formalismus beschreibt.
Damit wird es möglich, die Konsistenz und Vollständigkeit des modellierten Gegenstandes nach den Regeln der Logik zu verifizieren, zu beweisen.
Solche Tools zur Beweisführung auf der Grundlage eines B-Modells gibt es in verschiedenen Ausprägungen.
Erfahrung habe ich mit dem LTG
Testtool gesammelt - siehe auch
B Modellierung von JavaCard Funktionen.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
BMW AG |
Bayerische Motoren Werke Aktiongesellschaft
ist ein weltweit bekannter Hersteller von Fahrzeugen und Motorrädern mit Sitz in München.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- Wikipedia
BMW (Deutsch)
- Hersteller
Homepage (Deutsch, Englisch)
|
Bugzilla |
Bugzilla
ist eine freie webbasierte Software zur Verwaltung von Fehlermeldungen (Bug Reports) und Erweiterungswünsche (Feature Requests) der zu entwickelnden Software-Applikation.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
C | |
C |
Programmiersprache C
Prozedurale Sprache, die von
Dennis Ritchie
zusammen mit
Brian Kernighan und
Ken Thompson
erst entwickelt und 1972 veröffentlicht wurde.
In der IT-Welt ist C ubiquitär. Seitdem ich den Bereich der reinen numerischen Berechnung von physikalischen Vorgängen verließ - 2001 -, gab es kein einziges Projekt,
wo die Sprache C nicht, auf die eine oder auf die andere Weise, eine Rolle gespielt hat. Häufig werden hardwarenahe C-Module in komplexen Anwendungen nahtlos angebunden,
welche z.B. in C++ geschrieben werden.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
Im Rahmen von internen Projekten werden
-
Eigene C/C++-Projekte veröffentlicht,
-
Weitere Links zu C-Referenzen gesammelt.
|
C++ |
Programmiersprache C++
Objekt-orientierte Programmiersprache, die von Bjarne Stroustrup
erst entwickelt und 1979 veröffentlicht wurde.
Ursprünglich wurde sie als Erweiterung der C-Sprache für komplexe Anwendungen gedacht.
Bis zum heutigen Tag bemühen sich die Designer beider Sprachen die Kompatibilität C zu C++, soweit es geht, beizubehalten.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
Im Rahmen von internen Projekten werden
- Eigene C/C++-Implementierungen
veröffentlicht,
-
Weitere Links zu C++-Referenzen gesammelt.
|
CEDRE |
Conception, Evaluation, Dessin des Reseaux d'Egouts (CEDRE)
Simulationsprogramm, entwickelt im Labor Méthodes der INSA-Lyon von
S. Thibault und
B. Chocat.
Zur Simulation eines städtischen Entwässerungssystems kann der planende Ingenieur Berechnungsmodule je nach Bedarf kombinieren. Alle programmierten Ansätze sind
hydrologisch, holistisch, konzeptuell.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
CERGRENE |
Centre d'Enseignement et de Recherche pour la Gestion des Ressources Naturelles et de l'Environnement
ist ein ehmaliges Forschungslaboratorium der Ecole Nationale des Ponts-et-Chaussées, Noisy-Le-Grand, France.
Das äquivalente Laboratorium heißt heutzutage
LEESU,
Laboratoire Eau - Environnement - Systèmes Urbains.
|
ClearQuest |
ClearQuest
Tool zur Verwaltung des Lebenszyklus einer Applikationssoftware (Application Life Cycle Management, ALCM), das von der Firma IBM entwickelt und vertrieben wird.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
cmd.exe |
cmd.exe
Standardbefehlsinterpreter auf modernen Microsoft Windows Betriebssystemen
Gegenüber dem älterem Befehlsinterpreter
command.com bietet cmd.exe mehr Funktionen an.
Die Benennung von ähnlich wirkenden Befehlen bleibt bis auf wenige Ausnahmen erhalten. Hier endet aber die Gemeinsamkeit:
- command.com ist eine MS-DOS Anwendung.
- cmd.exe ist eine vollwertige Windows-Anwendung.
Im Bezug auf die Funktionalität entspricht cmd.exe einer Unix Shell.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
command.com |
command.com
ist der Befehlsinterpreter auf älteren Microsoft Windows Betriebssystemen.
In modernen Microsoft Windows
Systemen ist command.com nur wegen der Rückwärtskompatibilität verfügbar und sollte nur, wenn es nicht anders geht, aufgerufen werden.
Der Standardbefehlsinterpreter ist cmd.exe.
(Anm.: In 64-bit-Versionen von Microsoft Windows
gibt es command.com nicht mehr. D.h. 16-Bit-Konsole-Programme werden nicht mehr unterstützt).
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
COURLY |
COURLY COmmunauté URbaine de LYon
Stadt-Umland-Verband von Lyon auch Grand Lyon genannt (Großraum Lyon).
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
CP, CR |
CP 'Change Program', CR 'Change Request'
Erweiterung oder Korrektur einer Software werden in atomare Schritte aufgeteilt, die meistens CP oder CR genannt werden.
Nach Zuordnung einer eigenen Nummer wird ein neues CP der gesamten CP-liste hinzugefügt.
Für kleine Projekte kann die Liste als einfache Tabelle - z.B. in Format DOC, ODT, XLS, CALC- verwaltet werden. Meistens wird aber ein dezidiziertes Datenbanksystem verwendet:
Merkmale eines CP hängen eng mit dem im Projekt definierten Prozess der Verwaltung des Software-Lebenszyklus zusammen. Ubiquitär sind solche Merkmale wie 'Beschreibung',
'Auftraggeber', 'Beauftragte', 'Releases' und 'Zustand' (status).
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
D | |
Daimler |
Daimler-AG
ist ein weltweit bekannter Hersteller von Fahrzeugen mit Sitz in Stuttgart.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Delphi |
Programmiersprache Delphi
auch Object Pascal genannt, objektorientierte Programmiersprache, Nachfolgerin der prozeduralen Programmiersprache Pascal.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Diagnosetool |
Diagnosetool für Steuergeräte
Wenn die eingebettete Software einen Fehler entdeckt, wird eine Identifikationsnummer auf einen Fehlerspeicher geschrieben,
dessen Spezifikation dem Steuergerät-Zulieferer obliegt.
Während einer HiL-Simulation kann der Operateur am Prüfstandrechner, das Diagnosetool aufrufen, um
alle aktiven Fehler - und zugeordnete Kurzbeschreibungen - zu lesen.
In der Regel verfügt ein Diagnosetool über viele weitere Funktionen. Unentbehrlich für den Tester
ist das Löschen des Fehlerspeichers, welches das Nachspielen komplexer Testszenarien erst ermöglicht.
Je nach Hersteller kommen verschiedene Diagnose-Tools in Frage.
-
Die BMW-AG
vertreibt das EDIABAS-Tool, das auch verkauft wird, um Defekte schnell und sicher zu orten.
Weitere Informationen dazu sind in BMW-Foren auffindbar -
wie
BMW-Forum EDIABAS-INPA.
-
Die Daimler-AG verkauft
ein tragbares Gerät, dessen Software den Fehlerspeicher von etlichen Steuergeräten im Fahrzeug lesen kann - hier beispielsweise eine
Verkaufssseite.
|
DKEY |
Display Key
ist die Bezeichnung eines externen Steuergerätes (vgl. ECU) für BMW Fahrzeuge im Premiumbereich.
DKEY ist ein elektronischer Autoschlüssel, steuert aber weitere Funktionen - wenn der Fahrer außerhalb des Fahrzeugs ist, z.B. das Ein-/Ausschalten des Motors, der Heizung, u.s.w.
Vorstellungen vom DKEY-Gerät entnehmen Sie z.B. folgenden Seiten:
DKEY ist auch der Name des Projektes Nr. 24 (der Chronologie) dessen Ziel es ist, dieses Steuergerät zu entwickeln.
|
DOORS |
DOORS Dynamic Object Oriented Requirements System
ist eine von Telelogic entwickelte - von IBM vertriebene - Software für das Anforderungsmanagement.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Doxygen |
Doxygen Tool zur automatischen Erstellung einer Quelltext-Dokumentation
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
dSPACE |
Hersteller von HiL-Prüfständen für die Fahrzeugsimulation
Um Simulation des Fahrzeugs mit dem dSPACE-HiL-Prüfstand zu starten, muss am Prüfstandrechner die Bedienoberfläche (HiL-GUI) CONTROLDESK -
aufgerufen werden.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- Hersteller
dSPACE (Deutsch, Englisch)
|
Dynabyte |
Dynabyte informationssysteme GmbH
Unternehmen der multiplate group, das - in dem Zeitraum 2007 bis 2011 - die Weiterentwicklung vom
Multiplate® Analyzer
abwickelte.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
E | |
ECU |
Electronic Control Unit (=Steuergerät)
In modernen Fahrzeugen werden viele Aufgaben von eingebetteten Softwaremodulen, die auf Steuergeräten geflasht werden, erledigt. Diese Steuergeräte, auf Englisch ECU, tauschen
Daten über das sogenannte CAN-Bus aus.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- Wikipedia
ECU (Deutsch)
- Wikipedia
ECU (Englisch)
|
ECUTT |
ECU-Testtool
vom Hersteller TraceTronic.
Das ECUTT dient dazu, Softwaremodule in
Steuergeräten
auf einem HiL-Prüfstand zu testen bzw. validieren.
Es verbindet sich mittels des TCP-IP-Protokolls an die HiL-Simulation und an weitere Module,
die in die Simulation eingreifen (z.B.
INCA,
EDIABAS).
Über die Bedienoberfläche vom ECUTT
kann der Testentwickler Modellvariablen lesen, ggf. überschreiben, d.h. ein Szenario nachspielen und evaluieren.
|
ed |
Texteditor ed
ed ist ein zeilenorientierter Texteditor, welcher Anfang der 1970er Jahre von
Ken Thompson
geschrieben und auf dem Bestriebssystem Version 1 AT&T UNIX installiert wurde.
ed ist heute noch auf den meisten unixoiden Betriebssystemen
installiert - inkl. OS X. (Gleichermaßen geistert
der ebenfalls zeilenorientierte Texteditor
edlin
auf Microsoft Windows Betriebssystemen herum.)
ed ist insofern von Interesse, als daraus einige heute weitverbreitete Texteditors hervorgegangen sind:
vi (über ext), sed.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
EGS |
EGS
Ist eine generische Bezeichnung des Steuergeräts,
das für die automatische Steuerung des Getriebes verantwortlich ist (wenn das Fahrzeug dies unterstützt).
Ergebnisse - insbesondere der Sollwert der Gangschaltung - werden an den CAN-Bus weitergeleitet.
|
EPA |
US Environmental Protection Agency (EPA)
ist eine US amerikanische Behörde, deren Aufgabe es ist, die Umwelt zu schützen. Insbesondere initiiert und finanziert die EPA Forschungsprojekte im Bereich 'Wasserschutz'
- gemäß dem im 'Clean Water Act' festgelegten Auftrag.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Epistemologie |
Epistemologie
Der Begriff setzt sich aus zwei griechischen Worten zusammen: ἐπιστήμη (Episteme in etwa Wissenschaftliches Wissen, im Unterschied zu anderen Begriffen wie δόξᾰ oder τέχνη)
und λόγος (logos in etwa Wort bzw. Lehre).
Die Epistemologie entspricht einem Gebiet der Philosphie, das sich mit Fragen zur Natur des Wissens beschäftigt (woher, was, wie wahr usw.). Im deutschsprachigen Raum wird auch
der Begriff Erkenntnistheorie verwendet, um Ähnliches zu bezeichnen.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
ETSI |
European Telecommunication Standards Institute (Europäisches Institut für Telekommunikationsnormen)
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- Wikipedia
ETSI (Deutsch)
|
EXTRAN |
ist ein Einzelmodul des Simulationsprogramms SWMM,
ursprünglich von L.A. Roesner entwickelt.
EXTRAN übernimmt den Teil der Simulation bezogen auf den Abfluss-Transport in der Kanalisation. EXTRAN wurde in den 1980er Jahren am
IfW der Universität Hannover,
intensiv eingesetzt. Es wurde u.A. von L. Fuchs weiterentwickelt (vgl. auch das HYSTEM-EXTRAN Modul, das von
ITWH bis heute weiterentwickelt wird).
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
F | |
FDA |
Food and Drug Administration
Diese Aufsichtsbehörde der USA entscheidet über die Zulassung von Nahrungsmitteln und Medikamenten auf dem Territorium der Vereinigten Staten von Amerika.
Die FDA veröffentlicht Dokumenten, die alle Aspekten der Zulassungsverfahren beleuchten. Auch veröffentlicht sie Studien, die Auswirkungen der zugelassenen Produkte untersucht.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Fortran |
Programmiersprache Fortran
setzt sich aus FORmula TRANslation zusammen. Fortran - früher FORTRAN geschrieben - ist eine prozedurale Sprache, weitverbreitet im Bereich der wissenschaftlichen Berechnung - z.B. in der Wasserwirtschaft.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Fraktal |
Fraktal
ein Fraktal ist ein mathematisches Objekt mit besonderen topologischen bzw. geometrischen Eigenschaften. Der Begriff wurde zunächst von
B. Mandelbrot geprägt.
Er stammt aus dem Lateinischen fractus (gebrochen), und soll ausdrucken, dass es jenseits der euklidischen Geometrie Objekte gibt, deren Ausdehnung sich nicht in
einer natürlichen (ganzzahligen) Dimension erfassen lassen.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Funktionstest |
Funktionale Tests bzw. Funktionstests
Ein einzelner Testschritt im Funktionstest prüft, ob eine einzelne
funktionale Anforderung (englisch Requirement) korrekt implementiert wird.
Funktionale Anforderungen befassen sich, grob formuliert, mit dem was eine Software tun soll.
Beispiel einer funktionalen Anforderung ist Das Messgerät soll nach 6 Minuten einen Wert für die Größe "Aggregation" anzeigen .
Nicht funktionale Anforderungen befassen sich, grob formuliert, mit dem wie die Software es tun soll. Darunter werden
beispielsweise folgende Merkmale gezählt:
Zuverlässigkeit | Läuft das System ohne Panne, egal was der User sonst tut? |
Benutzbarkeit | Kann ein User gut mit der Software umgehen? |
Wartbarkeit | Wie einfach ist es, Änderungen ins System einzupflegen? |
Portierbarkeit | Kann das System in unterschiedtrchen Rechnerumgebungen funktionieren bzw. instaltrert werden? |
Anforderungen werden zunächst in ein Lastenheft zusammengefasst.
Auf dieser Basis beschreibt der Auftragnehmer im Pflichtenheft
seinen Vorschlag für die Umsetzung.
- Aus dem Lastenheft werden Tests definiert, die der Validierung dienen.
- Aus dem Pflichtenheft werden Tests definiert, die der Verifizierung dienen.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
FuSi |
Funktionale Sicherheit (Englisch: Functional Safety)
bezeichnet den Teil der Sicherheit eines Systems, der von der korrekten Funktion
des sicherheitsbezogenen Systems und anderer risikomindernder Maßnahmen abhängt.
Entsprechende ISO-Standards sind mittlerweile für die Entwicklung von sicheren Systemen in verschiedenen Bereichen verfügbar, u.a. Rüstung, Aeronautik, Raumfahrt, Medizin. Ihre Anforderungen werden immer mehr per gesetzliche Anordnung verankert.
Im Bereich Automotiv legt die Norm ISO 26262 maßgebliche Anforderungen für sicherheitsrelevante elektrische/elektronische Systeme in Kraftfahrzeugen bis 35000 kg fest.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
Perforce | Functional Safety | All fields | Englisch |
Wikipedia | Functional Safety | All fields | Englisch |
Wikipedia | FuSi | Road Vehicle Functional Safety (ISO26262) | Englisch |
Wikipedia | FuSi | Funktionale Sicherheit für Fahrzeuge (ISO26262) | Deutsch |
|
G | |
G&D |
Giesecke & Devrient GmbH (G&D)
ist ein weltweit bekannter Hersteller u.a. von Chipkarten, Kartenlesern, Geldscheinen, mit Sitz in München.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Git |
Git
ist eine freie Software zur verteilten Versionsverwaltung
von Dateien - insbesondere von Quelltexten, und Konfigurationsdateien eines Softwareentwicklungsprojektes.
Git wird in vielen Open Source Projekten verwendet u.a. das Qt Projekt.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
Weitere Infos zur Nutzung des Tools in internen Projekten
sind unter Git-Tool erhältlich.
|
GlobalPlatform |
GlobalPlatform früher OpenPlatform
Bezeichnet sowohl eine Organisation, als auch die Spezifikationen, die sie herausgibt.
Erklärtes Ziel von GlobalPlatform ist die Interoperabilität
der von verschiedenen Herstellern vermarkten Chipkarten und Leserautomaten. Die Vorteile des daraus enstehenden Synergieeffekts sollen die Nachteile der
transparenten Konkurrenz überwiegen.
GlobalPlatform und JavaCard sind Spezifikationen,
die unabhängig voneinander entwickelt werden. Jedoch wird darauf geachtet, dass sie kompatibel sind. Der Hersteller Giesecke & Devrient
z.B. entwickelt Chipkarten, die beide Spezifikationen implementieren.
-
JavaCard sorgt dafür, dass eine einzige Programmiersprache für die Entwicklung der Applets (welche im Endeffekt den Zweck der Karte erfüllen) verwendet wird.
-
GlobalPlatform liefern den konzeptuellen Rahmen, innerhalb dessen eine Chipkarte verwaltet wird (ohne sich auf ein Betriebssystem
oder auf eine Programmiersprache festzulegen).
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
GNU Project |
GNU Project, wobei GNU für 'GNU is not Unix' steht
Das GNU-Projekt wurde 1983 von Richard Stallman
mit dem Ziel gegründet, ein offenes unixoides Betriebssystem zu schaffen, dessen Tools vom
Endbenutzer frei verwendet, untersucht, verbreitet und geändert werden können.
Anlass des GNU-Projektes war die wachsende Privatisierung der Software-Produkte und die dahergehende Gängelung der Users im Lizenz-Korsett.
Das GNU-Projekt soll ein alternatives Modell aufzeigen, welches die Offenheit der Software (-Quelltexte) gewährleistet.
Grundstein des Projektes sollte ein Unix-ähnliches Betriebssystem,
GNU Hurd,
sein, dessen Implementierung andauert.
Stattdessen wurde der Linux Kernel
zu bevorzugter Plattform für Tools, die im Rahmen des GNU-Projektes entwickelt wurden. Ohne sie wäre der Linux-Kernel für den PC-Nutzer nutzlos. Mit anderen Worten,
GNU-Tools sind ein wesentlicher Bestandteil einer jeden Linux-Distribution.
Daher wird von GNU-Entwicklern die Bezeichnung
GNU-Linux
propagiert, anstelle der üblichen Bezeichnung Linux.
Unter den GNU-Tools - den GNU-Paketen -, die auf allen Unix-Systemen installiert sind, zählen
Shells,
GNU core Utilities,
Compilers wie der GCC,
Kryptographische Systeme wie der Privacy Guard,
und viele andere.
Die von R. Stallman vertretene Grundeinstellung zu Software-Produkten hat zu verschiedenen Strömungen in der Entwicklergemeinde geführt:
Oft werden die Unterschiede zwischen Freie Software und Open Software aus ihrer Perspektive zurückgeführt:
- Freie Software betont die Rechte des Anwenders und in diesem Zusammenhang sozial-politische Aspekte
- Open Software setzt das Augenmerk auf den Softwareentwicklungsprozess und meidet sonstige Konnotationen
Gemeinsam ist allen Modellen, dass der Quelltext einer Software offengelegt wird. Die aus den Lizenzmodellen abgeleiteten Lizenzen unterscheiden sich aber u.a. in folgenden Fragen:
- Ist das Produkt unentgeltlich zu erwerben? (Der Begriff frei bzw. free ist mehrdeutig.)
- Darf der Quelltext oder Teile davon modifiziert werden?
- Wie soll eine abgeleitete Quelltextversion gehandhabt werden? Muss sie - wie die Basisversion - offengelegt werden? Darf sie gegen Entgelt angeboten werden?
Diese Fragen muss ein Entwickler, der Programme veröffentlichen will, für sich im Vorfeld beantworten.
Oft wird in diesem Zusammenhang auf die verbreitete
BSD Lizenz (Open Source)
hingewiesen,
die im Gegensatz zu den GNU-Lizenzen kein Copyleft
beinhaltet: Sie gewährt Entwicklern, die den Quelltext nutzen wollen, mehr Freiheiten, u.U. auf Kosten von zukünftigen Anwendern.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
GPGTools |
GPGTools
ist ein Installationspaket für OS X (ab 10.6), das eine Reihe von
über GUI bedienbaren kryptografischen Programmen beinhaltet:
-
GPGMail:
Plugin für das Email-Programm von OS X (Mail)
- GPGKeychain Access: Verwaltung von Zertifikaten
GPGServices
-
GPGPreferences: ermöglicht einen Teil der Schlüsselverwaltung über die OS X Systemeinstellungen
zu steuern (Icon GPGPreferences)
GPGTools ist ein GUI-Frondend von gpg - siehe GNU Privacy Guard.
Anbei weiterführende Links:
Englisch:
Wikipedia: GPGTools
gpgtools: Download
gpptools: Suite
gpgtools: Support
Deutsch
Wikipedia: GPGTools
|
GUI |
GUI (Graphical User Interface), Grafische Benutzeroberfläche (einer Sofware)
ist eine Art der Rechnerbedienung.
Vor allem über MS Windows erlang
diese Art der Kommunikation mit dem Rechner große Verbreitung und ermöglichte letztendlich einer breiten Masse
den Zugang zum Rechner überhaupt. Unixoide
Systemen zogen später nach - wobei, bis auf OSX,
die Bedienoberfläche jeweils optional und frei wählbar bleibt.
Die Bedienung der Kommandozeile-Schnittstelle
ist deutlich schwieriger zu erlernen und wird wohl einer Minderheit von "Computerfreaks" bzw. Profis vorbehalten.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
GUI-Tests |
Tests der Graphical User Interface bzw. der Bedienoberfläche einer Software
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
H | |
HiL |
Hardware in the Loop
Für Testzwecke - ob Verifizierung oder Validierung - wird
das Steuergerät - siehe auch ECU -
, geflasht mit der Zielversion der embedded Software, an einen HiL-Prüfstand angeschlossen,
der alle externen Schnittstellen bedient. Somit kann das Steuergerät unter realistischen Bedingungen laufen.
Die HiL-Simulation baut (teilweise) auf Harwareteile, wie sie im existierenden Fahrzeug vorkommen, z.B. Ventile:
- Der Hardware-Schrank steht in Verbindung mit einem Prüfstandrechner.
- Der Entwickler/Tester steuert die HiL-Simulation über eine Bedienoberfläche am Prüfstandrechner
Anmerkung:
Werden die externen Schnittstellen des zu simulierenden Steuergerätes ausschließlich mit Hilfe von Softwaremodulen aktualisiert werden,
spricht man von Software in the Loop (SiL).
Es ist anzunehmen, dass - wenn ausreichende Rechenkapazität billig zu kaufen wird - die SiL immer mehr die HiL ersetzen wird.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- Wikipedia
HiL (Deutsch)
- Hersteller
dSPACE (Deutsch, Englisch)
- Hersteller
MicroNova (Deutsch, Englisch)
|
HiL-GUI |
Bedienoberfläche auf dem Prüfstandrechner
Mit Hilfe der HiL-GUI kann der Operateur eine HiL-Simulation starten und steuern.
Je nach HiL-Hersteller wird ein anderes Programm aufgerufen. Die wichtigsten Funktionalitäten einer HiL-GUI gelten aber für alle gleich:
Insbesondere hat jede HiL-GUI eine Schnittstelle zum numerischen Simulationsmodul
- vgl. MATLAB®,
das wiederum direkt
mit der Prüfstand-Hardware verbunden ist. Der Operateur kann - wenn er weiß, wie sie heißen - Variablen
des numerischen Modells - u.a. Modellparameter, Signale - überschreiben. Dies gilt auch für Variablen von verbundenen
Tools, wie z.B.
INCA und
EDIABAS.
Anmerkungen:
-
Parameter des HiL-Simulationsmodells beinflussen das allgemeine Verhalten des simulierten Fahrzeugs.
Als Beispiel seien die Größen Raddurchmesser des Fahrzeugs oder Die Hinterachsen-Übersetzung
genannt.
-
Signale werden über CAN-Busse (A-CAN, FA-CAN, P-CAN etc.) zwischen
den ECUs
ausgetauscht. Ein Beispiel von Signal ist die Temperatur im Getriebe oder im Motor.
Manche Signale können nicht nur gelesen, sondern für Testzwecke überschrieben werden.
-
Zustandsvariablen des HiL-Simulationsmodells - wie auch der embedded Software -,
die sogenannten Messungen, können auch nicht für Testzwecke überschrieben werden.
(Dies ist eine prinzipielle Einschränkung beim Testen der embedded Software,
die sehr sinnvoll ist, da der Zugriff auf embedded Softwaremodule auch im Fahrzeug stattfinden kann.)
-
Um auf eine Modellgröße zuzugreifen, muss ihre Modellbezeichnung bekannt werden.
Um die Entwicklung von Tests auf unterschiedlichen HiL-Modellen zu verallgemeinern,
wurde eine Software-Schicht Namenzuordnung bzw. Global Mapping hinzugefügt:
Äquivalenten Größen werden dieselben globalen Bezeichnungen vergeben.
Leider existiert solche zusätzliche Schicht in der embedded Software selber nicht - was die Testenwicklung wesentlich erschwert.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
HYDROSIM |
HYDROlogische SIMulation (HYDROSIM)
ist der Name eines Programms zur Simulation von Entwässerungssystemen auf der Basis
von hydrologischen, holistischen Ansätzen, das im Rahmen von
Projekten 12
(frühere Versionen in Pascal)
13
(spätere Versionen in Delphi)
entwickelt wurde.
Mehrere Modellansätze stehen für ein bestimmtes Teilgebiet zur Verfügung, je nach zur Verfügung stehenden Messdaten (aus denen das Systemverhalten abgelesen wird)
und Kanaldaten (aus denen ggf. die Werte von Modellparametern abgeleitet werden).
Das Programm wurde deswegen entwickelt, um die Eignung von PREDICT
mit Hilfe der offline Simulation von gemessenen Ereignissen zu demonstrieren.
Rechtlicher Hinweis:
Die Bezeichnung HYDROSIM reflektiert Prinzipien - und auch Grenzen - der zugrundeliegenden Modellierung. Sie wurde projektintern vergeben.
Es besteht keine Verbindung mit Programmen ähnlicher Bezeichnung, die eventuell kommerziell vertrieben werden/wurden.
|
I | |
ICC-Solutions |
Chip Card Testing Device: ICC Solutions
Ins Testgerät vom Hersteller ICC-Solutions wird auf der einen Seite die zu testenden Karte inseriert. Auf der anderen Seite kommuniziert es mit der ICC-Software auf dem Rechner.
Diese Software liest Dateien, worin die durchzuführenden Tests geschrieben wurden - in einer proprietären Skriptsprache.
ICC-Solutions-Tests bestehen also aus einer geordneten Reihe von
APDU-Kommandos
(vgl. Zustandsbezogener Test ).
Wenn diese APDU-Kommandos an Testapplets verschickt werden,
ist es durchaus möglich, nicht nur APDU-Tests durchzuführen,
sondern auch API-Tests.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
IDE |
IDE Integrated Development Environment Englisches Akronym für 'Integrierte Entwicklungsumgebung'
Weiterführende Infos entnehmen Sie beispielsweise folgenden Seiten:
|
IfW |
Institut für Wasserwirtschaft der Universität Hannover (IfW)
Fakultät für Bauingenieurwesen und Geodäsie der Leibniz Universität Hannover heißt heutzutage WAWI.
Im Zeitraum 02.1987 bis 09.1992, wo ich dem Forschungsteam angehörte, leitete Prof. F. Sieker das Institut.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- Home Page
WAWI (Deutsch)
|
ifs |
Ingenieurgesellschaft für Stadthydrologie (ifs)
ist ein Ingenieurbüro mit Hauptsitz in Hannover, tätig im Bereich der Wasserwirtschaft. Es wurde von ehmaligen Mitarbeitern des
IfW Hannover
1992 gegründet: D. Grotehusmann, A. Khelil, L. Schiedt, M. Schütte, M. Uhl (alphabetisch).
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- Home Page
ifs (Deutsch)
|
Impedanz- Aggregometrie |
Impedanz-Aggregometrie
Messverfahren, welche die Aktivität der Thrombozyten im Blut aufgrund des Verlaufs von Impedanzwerten der Messzelle erfasst.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
Siehe auch Multiplate
|
IMTRAN |
IMPlicit resolution of the TRANsport-equation (IMTRAN)
ist ein Berechnungsmodul, das ursprünglich am
IfW von A. Khelil
geschrieben wurde und später von ihm weiterentwickelt.
Das Programm basiert auf dem Quelltext vom EXTRAN Modul,
wobei der Berechnungkern zur Lösung des Saint-Venant-Gleichungssystems durch einen impliziten Lösungsansatz ersetzt wurde.
Rechtlicher Hinweis:
Die Bezeichnung IMTRAN wurde projektintern vergeben. Es besteht keine Verbindung mit Programmen ähnlicher Bezeichnung,
die eventuell kommerziell vertrieben werden/wurden.
|
INCA |
Mess-, Kalibrier- und Diagnose- Software der Herstellers ETAS
Das Tool INCA wird während einer HiL-Simulation bzw. während der Testdurchführung aufgerufen. Über Schnittstellen wie ETK gewährt das Tool den direkten Zugriff
auf den Speicher der embedded Software im ECU
- deren Struktur es erkennen kann. Folgende Aktionen werden u.a. mit INCA durchgeführt:
- Den Zustand der embedded Software beobachten d.h. die sogenannten Messgrößen lesen - Messgrößen sind Variablen, die nicht überschrieben werden können
- Das Verhalten der embedded Software - zu Testzwecken - ändern d.h. Verstellgrößen - Englisch Calibration Data - überschreiben
- Einen bestimmten Stand ins Steuergerät flashen d.h. die Bereiche, Programmcode und Daten, im Speicher der embedded Software überschreiben
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
INSA |
Institut National des Sciences Appliquées INSA
ist eine französische Hochschule für Ingenieure, die in mehreren Städten Frankreichs angesiedelt u.a. Lyon.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- Wikipedia
INSA (Deutsch)
- Home Page
INSA-Lyon (Französisch/Englisch)
- Wikipedia
INSA (Französisch)
|
ISO 9000 |
ISO 9000
Die verschiedenen Version dieser Norm - und Nachfolgerin 9001 - definieren Grundlagen und Begriffe zu Qualitätsmanagementsystemen.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
J | |
Java |
Programmiersprache Java
ist eine objektorientierte Programmiersprache, das von Sun Microsystems entwickelt wurde und 1995 erst veröffentlicht wurde.
Zu den Zielen der Java-Designer sind folgende erwähnenswert:
-
Im Vergleich zu C++ soll die Objektorientierung in Java einfacher, direkter
gestaltet werden, um manche Fallstricke an der Wurzel zu verhindern.
-
Der Java-Quelltext soll platformunabhängig geschrieben werden - nach dem Motto
write once, run everywhere .
Der Trick dabei ist, eine zusätzliche Station zwischen
Quelltext und Maschinencode einzuführen: den Byte Code. D.h. die Übertragung des Quelltextes erfolgt zunächst in eine standardisierte (virtuelle) Maschinensprache
(die kein Mikrokontroller direkt ausführen kann).
Erst aus dem Byte Code liefert die Java Runtime Environment auf der jeweiligen Zielplatform den realen Maschinencode (ob interpretiert oder kompiliert).
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
JavaCard |
Java Card
Bezeichnet eine vereinfachte Variante der Programmiersprache Java,
und auch die Chipkarten, auf denen JavaCard Applets installiert werden können.
Die JavaCard-Spezifikation beschreibt, wie eine JavaCard implementiert werden muss - u.a. die Beziehungen zwischen den installierten Applets
und der zugrundeliegenden Schicht.
Zusammen mit der Spezifikation GlobalPlatform
ist die JavaCard Spezifikation ein wichtiger Schritt zur Interoperabilität der Chipkarten, ein Ziel, das mittlerweile alle wichtigen Hersteller unterstützen.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
JIRA |
JIRA abgeleitet vom japanischen Namen für 'Godzilla' 'Godjira'
Nach Angabe von Wikipedia wollten die Entwickler einen Bezug zu Bugzilla erstellen. Im Prinzip
übernehmen beide Applikationen die gleiche Aufgabe: die webbasierte Verwaltung von Fehlermeldungen (bugs) und Erweiterungs- Änderungs- Vorschlägen (features).
- Bugzilla ist open-source und in Perl programmiert.
- JIRA ist kommerziell vertrieben und in java programmiert.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
K | |
KA |
Korrespondenz Abwasser (KA)
Monatliche Zeitschrift, die von der Gesellschaft zur Förderung der Abwassertechnik e.V. (GFA) veröffentlicht wird.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
KMROUT |
KMROUT Kalinin-Miljukov Routing
ist ein Programm zur Berechnung des Abflusstransports in Kanalnetzen, basierend auf dem von Kalinin-Miljukov beschriebenen konzeptuellen Ansatz.
Das Programm wurde am IfW entwickelt. Ursprünglich
von W. Schilling und M. Semke entwickelt. Das Programm wurde im Laufe der Jahre mehrfach erweitert u.a. von D. Grothehusmann, S. Deyda und A. Khelil,
M. Siekmann.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Kommando Zeile |
Kommando Zeile (English Command Line)
Bedienschnittstelle eines Rechners.
Historisch betrachtet ist die Kommando Zeile die älteste Schnittelle über die ein Anwender mit
dem Rechner kommunizieren konnte bzw. seine Befehle eintragen konnte.
In den Siebzieger und Achtziger Jahren des vorherigen Jahrhunderts saß die Mehrzahl der Computer-Anwender an Terminals,
die mit einem Großrechner (Mainframe) verbunden war, welcher von einem unixoiden
System betrieben wurde (das gleichzeitig viele Usern bedient). Nach dem Login wurde die User-konfigurierte Shell
aufgerufen und der User fing seine Tätigkeit an.
Heutzutage arbeiten die meisten User am eigenen Rechner, der über eine GUI bedient wird.
Sowohl auf Windows als auch auf
unixoiden Systemen, kann der User aber, bei Bedarf, einen Terminal eröffnen, um
über die Kommandozeile Befehle - an die Shell - zu senden. Für Administrationszwecke ist diese Bedienart immer noch die effizientere (Skripte werden über die Kommandozeile aufgerufen).
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
KPI Test |
Key Performance Indicators Test
wie der Name besagt, wird ein System dadurch primär auf seine Verhaltensweise - und nicht auf seine Funktionalität - geprüft.
Es geht also nicht primär darum, ob eine Funktion richtig unterstützt wird, sondern wie (schnell, viel, etc.).
Gerade in Situationen, wo eine Vielzahl von Usern bzw. (Stör-)Faktoren (z.B. der Kommunikation) gleichzeitig Einfluss nehmen, werden bestimmte
Kenngrößen ermittelt: Verfügbarkeit, Reaktionszeit, Geschwindigkeit, Zuverlässigkeit etc.
Solcher Test spielte insbesondere im DKEY Projekt
eine große Rolle bei der Bewertung von offiziellen Releases. Der Auftraggeber allein (BMW AG)
hat die (für den User) relevanten Parameter isoliert und jeweils die Grenzwerte definiert, oberhalb oder unterhalb derer das System angenommen oder abgelehnt wird.
Weiterführende Infos sind z.B. den Links unten zu entnehmen.
|
L | |
Laboratoire Méthodes |
Laboratoire Méthodes, Département Génie Civil et Urbanisme,
INSA-Lyon
war Ende der 1980er Jahre ein Forschungslaboratorium der Fakultät "Bauwesen und Stadtplanung" der Hochschule INSA-Lyon (Frankreich).
Schwerpunkt des Laboratoriums war die Anwendung von mathematischen Verfahren und Computerberechnungen in ausgewählten
Bereichen des Bauwesens und der Stadtplanung, darunter der Wasserwirtschaft.
Heutzutage sind alle Laboratorien dieser Fakultät unter einem Dach, namens LGCIE, organisiert, das in drei Zweige A bis C aufgeteilt ist.
Der Zweig-A entspricht inhaltlich Aufgaben der Wasserwirtschaft.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Lastenheft |
Lastenheft
formuliert alle Anforderungen eines Auftraggebers an die Lieferungen und Leistungen eines Auftragnehmers.
Es wird dem englischen Begriff Requirement Specifications (UR) gleichgesetzt.
Aus der Perspektive eines Testers bildet das Lastenheft die Grundlage für den Abnahmetest (Englisch acceptance test) - vgl.
auch Software-Validierung.
Der Begriff Lastenheft steht in Zusammenhang mit - in Kontrast zu - dem Begriff
Pflichtenheft.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Layertest |
Schnittstellen-Test
im Kontext des AGS-Projektes
hat sich der Begriff Layertest eingebürgert, um den Schnittstellentest zu bezeichnen.
Der Layertest wird in mindestens zwei Kategorien aufgeteilt:
-
Um berechnen zu können, benötigt die embedded
AGS-Software Eingabedaten, deren Gestaltung mithilfe der LayerIn-Spezifikation festgelegt wird.
-
Auch veröffentlicht die AGS-Software
ihre Ergebnisse mit Hilfe von Ausgabedaten, deren Gestaltung mithilfe der LayerOut-Spezifikation festgelegt wird.
|
Linux |
Linux
ist ein aus Unix abgeleitetes oder abgezweigtes Betriebssystem.
2019 habe ich meine OS X Systeme (iMac, MacBook Pro) gegen ein Linux System ausgetauscht.
Grund genug Linux einen eigenen Eintrag zu widmen - anstatt es unter den unixoiden
System aufzulisten - wie bisher.
Januar 2023 zeigt meine Linux-Variante folgende Merkmale an (Abfrage der Systeminformationen):
Der Name des Betriebssystems (Ubuntu 20.04.1 LTS ) oder die Kernel-Version ([Linux] [5.4.0-59-generic])
kann man auch über das Kommando hostnamectl erfahren. Weitere Möglichkeiten werden z.B. in
check the os version
erläutert.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
Texte:
Videos:
|
LTG |
Der LEIRIOS Test Generator alias LTG
ist ein kommerzielles Tool der Firma LEIRIOS.
Aufgrund einer formalen Modellierung der Softwarespezifikation (bzw.
des Pflichtenheftes)
definiert der LTG Tests, um eine zugehörige Softwareimplementierung zu
verifizieren.
Die Modellierung erfolgt entweder mit Hilfe der B-Methode
oder mit Hilfe der UML-Sprache.
Die Generierung der Testfälle ist ein Nebenprodukt der eigentlichen Tätigkeit des LTG-Rechenkerns: Die Beweisführung der Konsistenz und Vollständigkeit
eines Modells, das aus einem oder mehreren Modul-Dateien besteht.
Im Pilotprojekt 18,
beauftragt von Giesecke & Devrient,
wurden Teile der Spezifikation
GlobalPlatform und
JavaCard
mit Hilfe der B-Methode modelliert.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
LWA |
Lehrstuhl für Wassergüte und Abfallwirtschaft der technischen Universität München (LWA)
heißt heutzutage Lehrstuhl für Siedlungswasserwirtschaft.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
M | |
MacOSX |
Mac OS X (X steht für die römische Zahl 10), seit Version 10.8 nur OS X
Betriebssystem, das von Apple Inc.
Es ist eine proprietäre Distribution des freien, ebenfalls von Apple entwickelten Betriebssystems
Darwin,
das wiederum aus der
BSD
(Berkeley Software) Distribution stammt. Daher entspricht die Handhabung der Kommandozeile auf einem OSX System derjenigen auf einem
(BSD-)Unix System.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
MacPorts |
MacPorts
MacPorts ist ein Programm, das der automatischen Installation und Wartung von
Open Source Software dient.
Beachte:
[2020-09] Möglicherweise wird macPorts nicht mehr genügend gewartet.
Alternative Paketverwaltungsprogramme sind im Kommen
(z.B. Homebrew).
MacPorts ist ein Kommandozeilen Programm für das
OS X Betriebssystem.
Weiterführende Infos entnehmen Sie folgenden Seiten:
|
MATLAB® |
MATLAB® MATrix LABoratory
ist eine kommerzielle Software zur numerischen Lösung von mathematischen Problemen, die auf die Matrizen-Kalkulation zurückgeführt werden können.
In den meisten Projekten wird MATLAB® zusammen mit seinem Zusatzprodukt Simulink®
eingesetzt. Erst die Kombination beider ermöglicht es den Entwicklern, eine große Bandbreite von Ingenieuraufgaben mathematisch zu formulieren - welche vom Programm numerisch gelöst werden.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Modultest |
Modul- bzw. Komponenten- Test
Bezeichnet einen Test nach der Teststufe des zugrundeliegenden Vorgehensmodells - siehe z.B. das V-Modell.
Im Modultest werden die einzelnen Softwarebausteine verifiziert (Fragestellung: Wurde richtig implementiert?) bzw. validiert (Fragestellung: Wurde das Richtige implementiert?).
Was für den Tester als Softwaremodul gelten soll, muss im jeweiligen Projekt noch definiert werden. Dabei wird die Software-Architektur berücksichtigt. Ein Testmodul
kann u.U. mehrere Softwarebausteine zusammenfassen, die zusammen eine einzelne Funktion simulieren.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
MicroNova |
Hersteller von HiL-Prüfständen für Fahrzeuge
Um eine HiL-Simulation des Fahrzeuges zu starten, muss auf dem Prüfstandrechner die Bedienoberfläche (HiL-GUI) NOVASIM aufgerufen werden.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Microsoft-Windows |
Microsoft Windows
ist ein ubiquitäres Betriebssystem, das jeweils in gestaffelten Ausprägungen, die sogenannten Editions, veröffentlicht wird, um
ein breites Nutzungsspektrum abzudecken: von der Home-Edition für den Privatuser bis zur Enterprise-Edition für Konzerne.
Salopp formuliert besteht ein wesentlicher Unterschied zur Unix-Familie darin,
wie die User-Schnittstelle strukturiert ist.
Unter Microsoft Windows wird möglichst viel in die
grafische Benutzeroberfläche
integriert.
Im Ausnahmefall wird auf die
Kommandozeile zurückgegriffen,
um im interaktiven Modus Befehle einzeln auszuführen oder im Stappelmodus, in eine Textdatei zusammengeführte Befehle der Reihe nach automatisch aufzurufen.
Zu diesen Zwecken wird eine Konsole, oft DOS-Fenster genannt, über den Aufruf des Windows Command Line Interpreter (CLI),
cmd.exe, eröffnet.
Eine Liste der CMD-Befehle entnehme man z.B. der
A-Z Index of CMD.
-
In den meisten Unix-Systemen
wartet nach dem Rechnerhochfahren bzw. Userlogin
die Kommandozeile
auf Eingaben des Anwenders. Je nach System- oder User- Konfiguration ist die Eingabeaufforderung mit der einen oder anderen
Shell- verbunden.
Im Gegensatz zu Microsoft Windows gibt es eine Vielzahl von Shells, unter denen
der User wählen kann, vorausgesetzt der Systemadministrator hat sie im Vorfeld installiert. Die meist verwendete Shell ist die
Bash-Shell.
Erst in einem weiteren Schritt kann der User
eine grafische Benutzeroberfläche
aufrufen - vorausgesetzt der Systemadministrator hat sie im Vorfeld installiert. Weitverbreitet sind
Gnome und
KDE.
Eine Sonderstellung nimmt OS X, das, wie Microsoft Windows, in erster Linie über seine
grafische Benutzeroberfläche
bedient wird.
Sobald der User aber eine Konsole eröffnet, wird das Unix-Substrat,
Darwin,
wieder sichtbar - und die Vielfalt der Unix Tools.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Multiplate |
Projekt zur Entwicklung des 'Multiplate'
Zum Projekt
Bis Ende 2010 wurde das Messgerät, der
Multiplate© Analyzer
(kurz Multiplate),
von einem Team weiterentwickelt - um die Mitbegründer der Firma
Verum Diagnostica GmbH
gesammelt:
Die Entwicklung wurde insbesondere von Andreas Calatzis und Patric Sokoll gesteuert.
-
Andreas Calatzis ist Hämatolog.
Aufgrund seiner Expertise im Bereich der
Thrombozytenaggregometrie -
und seiner Erfahrung mit existierenden Geräten - z.B. dem seit den 1970er Jahren vertriebenen
Chronolog-Aggregometer
(Impedanz-Aggregometrie) -
erarbeitete er in den 1990er Jahren Ideen für eine modernisierte Messung der Thrombozyten-Aktivität.
-
Patric Sokoll ist Hardware und Software- Entwickler.
Er stieg Anfang 2000 ins Vorhaben. In den Folgejahren entwickelte er schließlich die gesamte Elektronik und schrieb die gesamte Software und Firmware des Gerätes, das
später kommerziell vertrieben wurde.
Ende 2011 wurde das Unternehmen samt Rechte an den
Roche-Konzern verkauft.
Zum Gerät
Das Gerät misst in vitro die Thrombozyten-Aktivität im Vollblut, indem die Messelektronik
innerhalb einer festgelegten Zeitdauer - i.d.R. von 6 Minuten - den Verlauf der elektrischen Impedanz in einer Messzelle aufnimmt.
- An das Messgerät können mehrere Messzellen - je nach Anfertigung 3 bis 6 - angedockt werden.
- Jede Messzelle umfasst einige milliliter (ml) Vollblut, dem zu Beginn der Messung spezifische Chemikalien - Reagenzien -
nach festgelegter Reihenfolge beigemischt werden.
- Je nach Reagenzien und je nach Verlauf der Messwerte können Inhalte - insbesondere Aspirin - nachgewiesen werden.
Weitere Infos entnehmen Sie z.B. folgenden Seiten:
Zu Teilen der Entwicklung, in denen ich (Amar Khelil) involviert war, siehe auch folgende Seiten:
|
N | |
Näherungsverfahren Approximation |
Näherungsverfahren
auch Approximationsverfahren genannt sind numerische Verfahren, die aus einer Menge
von (Mess-)Punkten Funktionen ermitteln, die gut dazu passen. Etliche Lösungsansätze stehen zur Verfügung,
je nach Formulierung des Problems und Algorithmen.
Einführende und weiterführende Infos sind zum Beispiel folgenden Links zu entnehmen:
Numerische Näherungsverfahren wurden unter Anderem in folgenden externen Projekten programmiert und eingesetzt:
-
Projekt Multiplate, 2010,
im Auftrag der Dynabyte Informationssysteme GmbH
-
Projekt HYDROSIM, 1998-2000,
im Auftrag des AOI
-
Projekt Konsistenzprüfung der online-Messung, 1993,
im Auftrag des
Bremer Umweltbetriebes
-
Projekt Neues Steuerungskonzept, 1991-1992,
im Auftrag des
Bremer Umweltbetriebes
-
Projekt Steuerung eines Mischkanals, 1989-1990,
im Auftrag des
Bremer Umweltbetriebes
-
Projekt Computersystem zur Auswertung von Niederschlagsdaten, 1983-1985,
im Auftrag des COURLY
und des französischen Ministeriums der Stadtentwicklung (Programm PLAN URBAIN)
Im Rahmen eines internen Projektes wurde
in Perl das Newton Approximationsverfahren
programmiert.
|
O | |
Office Paket |
Office Paket
ist eine Zusammenstellung von Programmen, die für Standardaufgaben der Bürotätigkeiten nützlich sind.
Alle Zusammenstellungen (Suites) dieser Art beinhalten u.a. einen Editor zur Erstellung von Briefen & Büchern, einen Tabellenkalkulator, einen Editor zur Erstellung von Präsentationen. Die meistverbreiteten
sind die proprietäre Microsoft Office Suite und die open source LibreOffice Suite.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
OO(P) |
Objekt Orientierung, Objekt-orientierte Programmierung
ist ein Programmierparadigma,
nach dem das Geschehen innerhalb eines Programs, als Interaktionen zwischen Objekten wahrgenommen wird. Jedes Objekt gehört einem Typus - meisten Klasse genannt.
Jedes Objekt wird durch eingekapselte Daten und Funktionen identifiziert:
-
Die Daten charakterisieren momentane Merkmale bzw. den momentanen Zustand des Objektes.
-
Die Funktionen charakterisieren die Weise, wie sich das Objekt verhält
d.h. wie sich Merkmale bzw. Zustand ändern.
Daten und Funktionen sind in der Klassen-Definition festgelegt.
Erst nach seiner Instanziierung existiert das Objekt im Programspeicher und beeinflusst das Programm-Geschehen.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
OP |
Open Platform
In dieser Institution vereinigen sich namehafte Konzern, die auf dem Markt Chipkarten und Kartenlesern agieren, um ein gewisses Maß an Interoperabilität
der Produkten zu gewährleisten. Die herausgegebenen Spezifikationen werden auch nach OpenPlatform genannt.
OpenPlatform wurde 2001 in GlobalPlatform umgenannt.
|
OS X Systemeinstellungen |
OS X Systemeinstellungen
entspricht der MS Windows Systemsteuerung.
Über eine GUI können manche Programme und Dienste konfiguriert werden.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
P | |
Pascal |
Programmiersprache Pascal
benannt nach dem Mathematiker Blaise Pascal. Sie ist eine prozedurale Sprache, verbreitet im Bereich der wissenschaftlichen Berechnung.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Perl |
Programmiersprache bzw. Skriptsprache Perl
Einführungen zu Perl entnehmen Sie zum Beispiel folgenden deutschsprachigen Seiten:
Introductions, tutorials, programming guides about perl written in English:
Zum Begriff Skriptsprache hier klicken.
Für Infos zu eigenen externen Projekten, die sich auf die Perl Programmierung beziehen:
Für Infos zu eigenen internen Projekten, die sich auf die Perl Programmierung beziehen, hier klicken.
|
Pflichtenheft |
Pflichtenheft
beschreibt wie der Auftragnehmer die Anforderungen des Auftraggebers zu erfüllen gedenkt.
Es wird oft dem englischen Begriff Answer to User Requirements (AUR) gleichgesetzt.
Im Kontext der Softwareentwicklung wird der Begriff Pflichtenheft oft dem Begriff Softwarespezifikation gleichgesetzt.
Der Begriff Pflichtenheft steht in Zusammenhang mit - in Kontrast zu - dem Begriff
Lastenheft. Im Vergleich zum Lastenheft (welches lediglich ein was beschreibt) ist
das Pflichtenheft (welches auch das wie dazu beschreibt) umfangreicher und detaillierter.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
PREDICT |
PREDICTion of the state of a urban drainage system during rainfall
ist der Name eines Programms zur online Vorhersage des Zustands eines Entwässerungssystems während eines Niederschlags,
das im Rahmen von Projekten 12 und
13
entwickelt wurde.
PREDICT ist die online Version vom Programm HYDROSIM,
das im Rahmen desselben Projektes entwickelt wurde.
Rechtlicher Hinweis:
Die Bezeichnung PREDICT wurde projektintern vergeben. Es besteht keine Verbindung mit Programmen ähnlicher Bezeichnung,
die eventuell kommerziell vertrieben werden/wurden.
|
Prolog |
PROgrammation en LOGique
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
python |
Programmiersprache
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- Wikipedia
python (Deutsch)
- Offizielle Seite von
python (Englisch)
|
Q | |
Qt |
Qt
ist eine
Entwicklungsumgebung
die es
C++-Programmierern ermöglicht, GUI-Applikationen
zu entwickeln, deren Quelltext auf alle gängigen Betriebssysteme portbierbar sind.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
Weitere Infos zur Nutzung des Tools in internen Projekten
sind unter Qt-Tool
erhältlich.
|
R | |
Regexp |
Regexp
Der Begriff "Regular Expression" wird im Deutsch "regulärer Ausdruck" übertragen.
Ein regulärer Ausdruck wird dazu verwendet, um ein "Bezeichnungsmuster" zu definieren, d.h. eine Menge von möglichen Bezeichnungen,
die eben einem gegebenen Muster entsprechen. Dazu wird eine Syntax definiert, die bestimmte Zeichen (Sonderzeichen) verwendet und nach
spezifizierten Regeln kombiniert.
regexp (Syntaxen) sind nach und nach entstanden - mit unterschiedlichen Merkmalen - und nachträglich
von POSIX formalisiert.
Im laufe der Zeit wurde eine Reihe von POSIX-Versionen herausgegeben. Zwischen "grundlegender" (basic) und einer "erweiterter"
(extended) Implementierung der Spezifikation wurde unterschieden. Die "basischen" regexp sind heutzutage als obsolet markiert.
In der Unix/Linux Welt unterstützen verschiedene Tools - mehr oder weniger genau - die eine oder die
andere POSIX Ausrichtung ("flavour") vgl. beispielsweise
Regulärer Ausdruck in grep.
Anbei weitere nützliche Links:
|
ROTEM |
ROTEM
ist ein in der Medizintechnik tätiges Unternehmen.
Die Firma entwickelt und vertreibt verschiedene Geräte zur Messung von Blutmerkmalen, u.a. ein Gerät zur Messung der Thrombozyten-Funktion auf der Basis der Impedanz-Aggregometrie
siehe auch Multiplate.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- Home Page
ROTEM (Deutsch)
|
S | |
SCRUM |
SCRUM
beschreibt einen der Entwicklungsprozesse aus der Agilen Softwareentwicklung.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
Im DKEY Projekt auf das Scrum-Paradigma teilweise zurückgegriffen.
|
SERAIL |
Simulation des Ecoulements dans le Reseau d'Assainissement Interurbain de Lyon (SERAIL)
Computersystem zur Verwaltung, Analyse, Planung und Simulation von Entwässerungssystemen, entwickelt
im Labor Méthodes der INSA-Lyon
von B. Chocat
und seinem Team.
Einzugsgebiet und Kanal werden genau erfasst (Große Datenmengen). Die eingebauten Module können
den Zustand in den Rohrleitungen und Sonderbauwerken hydrodynamisch berechnen.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Shell |
Shell
ist in unixoiden Betriebssystemen
ein Befehlsinterpreter,
der sich über die Kommandozeile
bedienen lässt.
(Kommandozeile-)Befehle
Der Anwender kann im interaktiven Modus, auf der Zeile Eingabeaufforderung - engl. Prompt -, Befehle eingeben.
Es gibt zwei Arten von Befehlen: interne Befehle (engl. builtin commands) und externe Befehle.
-
Interne Befehle sind Kommandos, die von der Shell direkt implementiert sind. Umfang, Syntax und Wirkung eines Builtin hängen von der Shell ab,
die der Benutzer nutzt - siehe unten 'Eckpunkte der Entwicklungsgeschichte.
-
Externe Befehle werden zwar über die Shell aufgerufen, sind aber unabhängig programmiert worden, als Erweiterung der Funktionalität.
Sie sind auch (Unix-)Tools genannt.
In wenigen Fällen wurde ein Befehl, sowohl intern als extern, implementiert. Welche Variante aufgerufen wird, hängt von der Systemkonfiguration ab.
Scripting
Die Stärke einer Unix Shell kommt aber erst zum Vorschein, wenn der User im Stapelmodus arbeitet, d.h. wenn Befehle nicht interaktiv eingegeben werden,
sondern in sogenannte Skripte zusammengefasst werden,
um komplexe repetitive Aufgaben zu erledigen - z.B. der Systemadministration.
Um die in der Praxis erforderliche Flexibilität zu erreichen, muss die Shell folgende Merkmale unterstützen:
-
Merkmale einer klassischen Computersprache wie Deklaration von Variablen, Bedingungen (if-then-else), Schleifen (for, while).
-
Erweiterte Merkmale wie Regular Expressions, piping - die auch in Betriebssystem-übergreifenden
Skriptsprachen,
wie Perl ausführlich
implementiert sind.
Eckpunkte der Entwicklungsgeschichte
-
Die erste Shell der Unix-Geschichte wurde von
Ken Thompson implementiert
und heisst deswegen Thompson-Shell - siehe auch osh (old shell).
-
1979 löste die von
Stephen Bourne entwickelte
Bourne Shell (Programmaufruf sh)
die Thompson-Shell als Standard-Shell ab.
-
Seitdem wurden weitere Shells implementiert, u.a. die Korn-Shell, die C-Shell, die Z-Shell.
Die meist verbreitete Shell ist die
bash (Bourne Again Shell, Programmaufruf bash):
bash ist auch derzeit die Standard-Shell auf OS X.
Pendant in Microsoft Windows
In Microsoft Windows Betriebssystemen gibt es auch einen
Befehlsinterpreter namens CMD.EXE oder
in älteren Systemen COMMAND.COM.
Ein wesentlicher Unterschied gegenüber
unixoiden Systemen
ist, dass in Windows nur diese eine OS-Shell verfügbar ist.
Weiterführende Infos entnehmen Sie beispielsweise folgenden Seiten:
|
Simulink® |
Simulink®
ist ein Zusatzprodukt zur kommerziellen Software MATLAB® und benötigt dieses
zum Ausführen.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Skriptsprachen |
Skriptsprachen
Mit Hilfe von Skriptsprachen werden sogenannte Skripte geschrieben, wogegen bei konventionellen Programmiersprachen
Anwendungen geschrieben werden.
Skripts werden dazu geschrieben, um z.B. folgende Aufgaben zu erledigen:
- Routine-Aufgaben im Bereich der Daten- und Datei- Verwaltung
- Automatisierte Bedienung von speziellen Tools z.B. Testtools
- Prototyping
Erklärtes Ziel der Designer ist es, dem Programmierer von "lästigen" Aufgaben zu entlasten. Daher folgende Merkmale:
- Kein Zwang zur Deklaration der Variablen im Vorfeld und, damit verbunden, Dynamische Typisierung (der Programmierer kann sofort loslegen)
- Ausführung des Quelltextes durch Interpretation ohne getrennte Übersetzungsphase (der Programmierer kann schnell prüfen kann, was das Programm tun)
Auch ist keine aufwändige - und teure - Entwicklungsumgebung nötig: Übliche Editoren unterstützen den Programmierer meistens in ausreichendem Maße.
Mit folgenden Nachteilen muss gerechnet werden:
-
Wenn der Programmierer selbst nicht die nötige Disziplin aufbringt, wird aus seinem Programm, ab einer gewissen Größe, ein schwer lesbares und dadurch schwer
wartbares Knäuel. Begriffe wie
Spaghetticode
oder quick and dirty bringen es auf den Punkt.
-
Das Skript ist meistens nur als Quelltext erhältlich und läuft wegen des Interpretationsschritts etwas langsamer als kompilierter Code.
Skriptsprachen können in folgenden Klassen unterteilt werden:
-
Skriptsprachen, die von Kommandozeileninterpretern eines Betriebssystemes abgeleitet werden.
Beispiele:
-
Selbstständige Skriptsprachen, die oft ähnliche Aufgaben, wie die erste Kategorie
übernehmen d.h. Verwaltungsaufgaben auf Rechnern, Datei- und Daten- Manipulationen.
Beispiele:
-
Anwendungsspezifische Skriptsprachen.
Beispiele:
VBA (Visual Basic for Applications) |
Skriptsprache für Microsoft-Produkte |
ICC-Solutions |
verwendet um APDU-Tests für Chipkarten
schreiben bzw. durchführen
|
Bei Skriptsprachen der zweiten Kategorie - die selbständigen Skriptsprachen - verwischen sich immer mehr die Grenzen zu den konventionellen Sprachen.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Softwaremetrik |
Softwaremetrik
ist eine (meist mathematische) Funktion, die Eigenschaften der Software - via Maßzahl(en) - darstellt.
Mittlerweile wurde eine unübersichtliche Menge von Methoden (Welche Eigenschaft soll gemessen werden? wie?) für die gängigen Programmiersprachen - insbesondere für
C,
C++ -
vorgestellt und programmiert.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
SW-Test |
Softwaretest, Software testing
Je nach Darstellungen des Softwareentwicklungsprozesses wird die Testaktivität anders artikuliert. Zwei grundlegende Modelle seien erwähnt:
-
Das
Wasserfallmodell [Royce 70]
ist eines der ältesten Modelle.
Es versteht den Gesamtprozess als einzige Kette von Aktivitäten - Jede Aktivität nur mit den angrenzenden Gliedern davor und danach in Verbindung stehend.
Die Testaktivität ist am unteren Ende angesiedelt - nach der Implementierung und vor der Inbetriebnahme.
Der große Nachteil dieser Vorstellung ist ihr
monolithisches Charakter: Softwaretest wird als einmalige Aktion am Projektende vor der Inbetriebnahme aufgefasst.

Bild: Wasserfallmodell (Quelle: Sebastian Stein 2004-08-30)
Heutzutage wird das Wassermodell kaum auf den gesamten Prozess angewandt. Sinnvoll kann es zur Strukturierung einzelner Entwicklungs- bzw. Teststufen sein.
-
Das
allgemeine V-Modell [Boehm, 79]
lieferte einen wesentlichen Beitrag zum modernen Verständnis, dass Test und Softwareentwicklung aus korrespondierenden Stufen bestehen.
Anstatt eines Prozessstranges sind es zwei, mit zueinander geordneten Stufen (Die Stufen mit gleichem Buchstaben entsprechen sich):
- Der linke absteigende Ast umfasst die Kette der Entwicklungsstufen: -a- Anforderungsdefinition, -b-Funktionaler Systementwurf, -c- Technischer Systementwurf, -d- Komponenten Spezifikation, -e- Programmierung
- Der rechte aufsteigende Ast umfasst die Kette der Teststufen: -d'- Komponententest bzw. Modultest, -c'- Integrationstest, -b'- Systemtest, -a'- Abnahmetests.

Bild: V-Modell (Quelle: Wikipedia, V-Modell)
Heutzutage gibt es eine Vielzahl von Modellen des Softwareentwicklungsprozesses. Im Prinzip kann jede Firma oder Behörde ein eigenes definieren. Wer das V-Modell versteht,
wird sich i.d.R. schnell zurückfinden.
Zusätzlich zur Einordnung der Testaktivität in den Gesamtentwicklungsablauf wird jeder Test in Stufen artikuliert. Im Buch
Basiswissen Softwaretest werden folgende gezählt:
- Planung
- Analyse und Design
- Realisierung und Durchführung
- Auswertung und Bericht
- Abschluss
Je nach Anforderungen kann die Testimplementierung selbst eine eigene anspruchsvolle Softwareentwicklungstätigkeit sein.
Es ist zu erwarten, dass künftig - aufgrund der wachsenden Komplexität der Software - der Softwaretest aufgewertet wird und
Basiswissen über Test unabdingbar für alle Softwareentwickler wird.
Eine Organisation, die sich weltweit für die Verbreitung von Test-Methodologien einsetzt, ist the International Software Testing Qualification Board,
kurz ISTQB.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
SOP |
Standard Operating Procedure (Standardarbeitsanweisung)
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- Wikipedia
SOP (Deutsch)
|
SuG |
Zeitschrift für STADTENTWÄSSERUNG UND GEWÄSSERSCHUTZ (SuG) mit Sammerlwerk HYDROLOGIE DER STADTENTWÄSSERUNG
Zeitschrift und Buchreihe wurden von Prof. Dr.-Ing. F. Sieker, IfW, Universität Hannover,
herausgegeben.
Zur Unterscheidung zwischen den Veröffentlichungen werden die Begriffe Zeitschrift SuG bzw. Schriftreihe SuG verwendet.
Zeitschrift und Buchreihe trugen schwerpunktmäßig Ergebnisse des Forschungsteams um Prof. Sieker vor, der 1974 bis 1998 als Hochschullehrer in Hannover tätig war.
Nach seinem Ausscheiden wurden die Veröffentlichungen nicht weiter fortgeführt.
|
SVN |
Apache Subversion
ist ein Versionierungsprogramm (version control system), das von der Apache Foundation als open source Projekt weitergeführt wird.
In den letzten Jahren nutze ich SVN ausschließlich über die integrierte Schnittstelle tortoise.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
SWEPiT |
SWEPiT (Unbekannte Aufschlüsselung des Akronyms)
Tool zur Verwaltung des Lebenszyklus einer Software-Applikation, das von BMW intern entwickelt und verwendet wird.
Nach meinem Kenntnisstand ist SWEPiT in VBA geschrieben und greift auf das microsoft ACCESS Datanbank-Programm zu.
|
SWMM |
Storm Water Management Modell (SWMM)
ist ein weltweit verbreitetes Simulationsprogramm im Bereich der Wasserwirtschaft - der Entwässerung in Mischwasserkanälen.
Es wurde im Auftrag der EPA
(weiter-) entwickelt. Von deren Webseite kann das Gesamtpaket kostenlos heruntergeladen werden - inkl. der Quelltexte (Fortran).
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- Wikipedia
SWMM (Englisch)
- EPA
EPA-SWMM (Englisch)
- Kurzbeschreibung von SWMM lesen hier klicken (Englisch)
|
Systemtest |
Systemtest
Bezeichnet einen Test nach der Teststufe des zugrundeliegenden Vorgehensmodells - siehe z.B. das V-Modell.
Im Systemtest wird im Prinzip das Gesamtsystem validiert (Fragestellung: Sind alle Anforderungen an die Software vollständig und korrekt implementiert worden?). In manchen Projekten
können manche Funktionen - die das Ineinandergreifen aller Systemkomponente voraussetzen - erst vom Systemtest erfasst werden.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
T | |
Tektronix |
Tektronix
ist eine US amerikanische Firma, die elektronische Geräte produziert.
Im Rahmen von Projekten, die ich 1983 bis 1985 im
Laboratoire Méthodes der
INSA-Lyon
betreute, kamen Tektronix-Rechner zum Einsatz. Die Rechner lasen alle Daten aus Magnetbändern. Die Auswertungsprogramme wurden in einem
BASIC
Dialekt geschrieben, der Sprachbefehle zur grafischen Darstellung umfasste.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Tessy |
Tessy
Anbei ein Auszug aus der Wikipedia Seite zu Tessy
Tessy bestimmt automatisch die Schnittstelle der zu testenden C-Funktion (der Unit bzw. dem Modul).
Die Schnittstelle besteht im Wesentlichen aus der Menge der Eingabe- und der Menge der Ausgabevariablen dieser Funktion.
Tessy generiert automatisch die Software für einen sog. Test-Treiber, der es erlaubt, die zu testende Funktion ohne die anderen C-Funktionen
der Applikation aufzurufen. Der Benutzer bestimmt die Testdaten, mit denen die zu prüfende Funktion versorgt werden soll und die erwarteten
Ergebnisse.
Funktionen, die von der zu prüfenden Funktion aufgerufen werden, können durch Stubs mit einem definierten Verhalten ersetzt werden.
Solche Stubs können überprüfen, ob sie ihrerseits mit gültigen Parameter aufgerufen wurden und liefern typischerweise konstante Werte
zurück, mit denen die zu testende Funktion arbeiten soll (sogenanntes Mocking).
Test-Treiber und zu testende Funktion werden von Tessy übersetzt und gebunden, normalerweise mit dem Cross-Compiler für das betreffende
Embedded System.
Die Tests werden dann von Tessy auf dem Embedded System durchgeführt. Alternativ können die Tests auch auf einem PC ablaufen.
Tatsächliche Testergebnisse werden automatisch mit den erwarteten Ergebnissen verglichen.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Testspezifikation |
Testspezifikation
Nach dem Standard IEEE 829 Standard for Software Test Documentation gibt es drei (3) Kategorien von Dokumenten zur Dokumentation der testaktivität,
die jeweils unterteilt werden. Insgesamt werden acht (8) Arten von Dokumenten identifiziert.
Testkonzept (Englisch test plan)
beschreibt im Vorfeld Bereich, Aufgaben, Methodik, verantwortliches Personal, vorgesehenen Ablauf der gesamten Testaktivität.
Daraus sollen auch damit verbundene Risiken ersichtlich werden, dass Fehlerzustände übersehen werden.
|
Test-Spezifikation (Englisch test specification)
-
Testentwurfspezifikation (Englisch test design specification)
verfeinert folgende Punkte aus dem Testkonzept:
- Die Test-Methodik wird näher beschrieben.
- Der Abdeckungsbereich des Tests wird näher beschrieben: welche Softwareteile werden wie gestestet?
- Wie und in welcher Reihenfolge werden die Testfälle durchgeführt? Welche Kriterien entscheiden über deren Ergebnis (Erfolg oder Scheitern)?
-
Testfallspezifikation (Englisch test case specification)
dokumentiert bis ins letzte Detail jeden einzelnen Testfall: Vorbedingungen (Stand der Software davor), Test-Aktion, Nachbedingungen (Stand der Software danach).
-
Testablaufspezifikation (Englisch test procedure specification)
dokumentiert die Schritte zur Durchführung der spezifizierten Testfälle und ihre Implementierung.
|
Testbericht (Englisch test reporting)
-
Testobjektübergabebericht (Englisch test item transmittal report)
beschreibt die Übergabe der Testfälle, wenn z.B. getrennte Teams zusammenspielen oder wenn die Testausführung zu einem
bestimmten Termin erfolgt.
-
Testprotokoll (Englisch test log)
dokumentiert die durchgeführten Testfälle samt Ergebnisse.
-
Testabweichungsbericht (Englisch test incident report)
beschreibt Ereignisse, die während der Testasuführung aufgetreten sind und eine Nachprüfung erfordern.
-
Testabschlussbericht (Englisch test summary report)
fasst die Ergebnisse des Tests zusammen.
|
Der Standard schreibt nicht vor, welche Dokumente zwingend erforderlich sind. In den meisten Projekten ist
nur ein Teil der Unterlagen vorhanden - unterschiedlich je nach Projekt.
Auf diesen Seiten gelten folgende Übereinkünfte - wenn nicht anders vermerkt:
- Der Begriff Testspezifikation steht für Testfallspezifikation.
- Der Begriff Testbericht steht für Testprotokoll.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
U | |
Unix |
Unix, ursprünglich Unics akronym von Uniplexed Information and Computer Service
Unix ist ein Betriebssystem, das 1969 in den Bell Laboratories
(u.a. von Ken Thompson,
Dennis Ritchie )
zur Unterstützung der Softwareentwicklung entwickelt wurde.
Aus dem Ursystem sind viele Betriebssysteme entstanden, entweder als Unix-Derivate oder unixoide Systeme. Eine grafische Übersicht dazu ist z.B.
hier veröffentlicht.
Unter den wichtigen Abzweigungen zählen:
Linux,
FreeBSD,
MacOSX.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
V | |
Validierung |
Software-Validierung
Im Buch Basiswissen Softwaretest sind
prägnante Sätze geschrieben, die den Begriff klar umrissen:
Beim Validieren bewertet der Tester, ob ein (Teil)-Produkt eine fetsgelegte Aufgaeb tatsächlich löst und deshalb für seinen Einsatzzweck tauglich oder nützlich ist
Ist das richtige System implementiert?
Oft leitet sich die Definition der Testfälle einer Validierung aus der Nachbildung von typischen oder kritischen Anwendungssituationen ab - vgl.
Anwendungsbasierter Test -
und/oder auch aus dem Lastenheft.
Der Begriff der Validierung steht im Zusammenhang mit - bzw. im Kontrast zu - dem Begriff der Verifizierung.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
VCS |
Version Control System bzw. Versionsverwaltung
bezeichnet eine Software, deren Aufgabe es ist, verschiedene Versionen einer gegebenen Menge von Unterlagen (Dateien) zu erfassen, archivieren und bei Bedarf wieder zu herstellen,
je nach Anforderungen (u.a. Zeitstempel, Benutzerkennung).
Programme zur Versionsverwaltung werden standardmäßig in Projekten der Softwareentwicklung eingesetzt - insbesondere aber nicht ausschließlich zur Verwaltung der Quelltexte.
Im Prinzip können sie aber dazu verwendet, um beliebige Mengen von Dateien aus den unterschiedlichsten Formaten zu verwalten.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
Zur Versionsverwaltung nutze ich derzeit Git.
|
VBA |
Visual Basic for Application
ist eine Skriptsprache für die Steuerung von Abläufen der Microsoft-Office-programmfamilie, entstanden aus dem von Microsoft entwickelten BASIC-Dialekt (VB).
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
- Wikipedia
VBA (Deutsch)
|
Verifizierung |
Software-Verifizierung
Unter Verifizierung versteht man die Beweisführung, dass die Software zu ihrer Spezifikation konform ist.
Ist das System richtig implementiert?
Die Verifizierung bezieht sich auf einzelne Projektphasen. Sie soll Korrekheit und Vollständigkeit eines Phasenergebnisses - einer Teilimplementierung - bewerten.
Liegt eine formale Spezifikation vor - z.B. als B-Modell, wie im Projekt -06- B-Modellierung von GlobalPlatform
angestrebt, kann eine formale Verifikation durchgeführt werden - wie ein mathematischer Beweis. Für B-Modellen kann das Tool LTG
diese Aufgabe der Beweisführung bzw. der Testdefinition übernehmen.
Der Begriff der Verifizierung steht im Zusammenhang mit - bzw. im Kontrast zu - dem Begriff der Validierung.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Versionsverwaltung |
Versionsverwaltung
Zur Versionsverwaltung gehört die Erfassung von Änderungen an Unterlagen (Dateien), die ein Projekt dokumentieren.
Diese Aufgabe ist grundlegender Bestandteil eines jeden Software-Entwicklungsprojektes, da der Prozess grundsätzlich
inkrementell (und sogar iterativ) angelegt sein muss - egal welche Prozessstufe (z.B. im V-Modell) betrachtet wird - siehe auch
SW-Test.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
Verum Diagnostica |
Verum Diagnostica GmbH
Unternehmen der multiplate group, das - in dem Zeitraum 2007 bis 2011 - den
Multiplate® Analyzer
vertrieb.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
vi |
Editorprogramm vi (steht für visual editor) bzw. vim (steht für vi improved):
Open source Texteditor, der - insbesondere in der unix-Welt - verbreitet ist.
Auf Unix, Linux und Mac OSX Systemen ist vi standardmäßig installiert (direkt abrufbar von der Kommandozeile:
einfach vi eintippen).
Zudem kann man, je nach Geschmack, GUI-Versionen
kostenfrei vom Internet herunterladen.
-
Diese HTML-Seiten wurden großteils
mit
MacVim
geschrieben - eine GUI-Version von vim für OS X.
-
Auf Windows ist z.B.
gvim
verfügbar.
Eigentlich ist vi die visuelle Betriebsart (siehe Bildschirmorientierung) vom zeilenorienterten ex Editor, welcher Editierkonzepte und Befehlsyntax
von ed übernahm.
Weiterführende Infos entnehmen Sie folgenden Links:
Englisch:
-
Free BSD: manpage
Deutsch:
-
Wikipedia: vi
-
Wikipedia: vim (vi improved)
Bücher:
-
vi, Robbins, Lamb, 1999, 333p (Deutsch Übersetzung)
Frei verfügbare Dokumentation
Englisch:
- vi Übersicht, amath, 2002, 2p
- vi Übersicht, Bindner, 2004, 1p
- vi Tutorial (1), 2011, 14p
- vi Tutorial (2), 2011, 10p
- a Byte of vim, Swaroop, 2012, 89p
Deutsch:
- vi Einführung, Birnthaler, 2009, 44p
- Editieren mit vi, Khelil, 2015
|
W | |
White-Box-Test |
White-Box-Tests
zielen auf eine Verifizierung des Quelltextes. Dabei wird das Programm
einer Funktion P: S → R gleichgestellt, deren Definition vom Quelltext - als Ablaufgraph abgebildet - abzulesen ist.
- S ist die Gesamtheit aller Eingabedaten.
- R ist die Gesamtheit aller Ausgaben.
Im Idealfall sollte der Test die Gesamtheit der Eingabedaten umfassen und damit die Gesamtheit der Ausgabedaten (Ergebnisse) erreichen.
Außerhalb des Schulunterrichtes ist solches Ziels unmöglich - schon allein hinsichtlich der Durchführung einer wahrscheinlich unendlichen Menge von Testfällen.
Die Theoretiker haben verschiedene Ansätze vorgeschlagen, um den Testumfang auf das wirtschaftlich Vertretbare zu schrumpfen, ohne das
Testergebnis zu schmälern: Möglichst viele Fehlzustände der Software zu identifizieren.
-
Der Ansatz nach dem Black-Box
Verfahren beruht auf der direkten Analyse der Eingabedaten.
-
Der Ansatz nach dem White-Box-Verfahren versucht, eine gegebene Überdeckung des Ablaufgraphen zu gewährleisten.
Je größer die Überdeckung, desto aufwändiger der Test.
Zur Darstellung eines Programmes als Ablaufgraphen werden zwei Schritte benötigt:
- Eine Reihe von Anweisungen, die sequenziell durchgeführt werden, stellt einen einzelnen Knoten des Graphen dar.
- Die Kanten stellen den Kontrolfluss dar, wo Programmzweige von einander abweichen oder zusammengeführt werden.
Folgende Testfallentwurfsmethoden werden in der Literatur erwähnt - in der Reihenfolge der Komplexität:
-
Anweisungsüberdeckung
Im Fokus steht der Versuch, einen bestimmten Anteil der Anweisungen - oder sogar alle - zur Ausführung zu bringen.
Anm.: Programmanweisungen, die unter keinem Umstand ausführbar sind - Sackgassen -, werden als Fehlprogrammierung gedeutet.
-
Zweigüberdeckung
Im Fokus steht der Versuch, einen bestimmten Anteil der Zweige des Kontrollgraphen zu aktivieren. Die Auswertung der Bedingungen
an den Abzweigstellen ist entscheidend.
-
Test der Bedingungen an jeder Abzweigstelle
-
Einfache Bedingungsüberdeckung:
Wenn mehrere Bedingungen zusammentreffen, werden jeweils pro Bedingung zwei Testfälle generiert: Bedingung erfüllt, Bedingung nicht erfüllt.
-
Mehrfachbedingungsüberdeckung:
Wenn mehrere Bedingungen zusammentreffen, werden alle Kombinationen der Bedingungen (erfüllt, nicht erfüllt) ausprobiert. Dieser
Ansatz ist wegen der kombinatorische Explosion in den meisten Fällen nicht durchführbar.
-
Minimale Mehrfachbedingungsüberdeckung:
Sie ist ein möglicher Weg, die Zahl der Testfälle aus der Mehrfachbedingungüberdeckung einzuschränken:
Redundante Bedingungen im Hinblick auf das Gesamtergebnis werden ausgelassen.
Im Beispielfall
(Bedingung_1 OR Bedingung_2) werden nur die Testfälle (B1=True B2=False), (B1=False B2=True), (B1=False B2=False) berücksichtigt.
Testfall (B1=True B2=True) wird ausgelassen.
-
Pfadüberdeckung
ist eine Weiterentwicklung der Zweigüberdeckung.
- Bei der Zweigüberdeckung wird jeder Zweig unabhängig von den anderen betrachtet.
-
Bei der Pfadüberdeckung wird pro Ablauf des Programms die Gesamtheit aller durchgeführten Programmanweisungen einem Testfall zugeordnet.
D.h. die Kombination der durchgeführten Zweige wird betrachtet. Und wenn das Program schleifen enthält, wird zwischen 2 Testfällen
unterschieden, die gleiche Zweige aktivieren - aber mit unterschiedlichen Iterationszahlen.
Kritik der Methode:
-
White Box Tests kommen nur für relativ übersichtliche Teilmodule der Gesamtsoftware in Frage, zumindest wenn der Quelltext manuell verarbeitet wird.
Liegt die Software als Modell vor, das z.B. vom einem Tool zur automatischen Beweisführung gelesen werden kann, kann automatisch
eine enorme Zahl von Testfällen definiert werden.
Ähnlich wurde im
Projekt 18
verfahren, wobei nicht die Software als Modell vorlag, sondern die Software-Spezifikation - als B-Modell. Das
LTG Tool führt eine
automatische Beweisführung - der Konsistenz und Vollständigkeit des Modells - durch, wobei das Ergebnis in Form von Testfällen geliefert wird.
Anm.:
Ob die definierten Tests noch automatisch generiert werden können - d.h. in Form von durchführbaren Tests ausgegeben werden -
ist ein zweiter Schritt, der aber in der Praxis entscheidend ist.
-
Manche Fehler im Programm können nur über die White-Box-Betrachtung entdeckt werden, z.B. Programsackgasse d.h. Anweisungen, die nie zur Ausführung kommen.
Anm.:
Heutzutage reicht vielleicht eine Analyse aller Warnings des Compilers aus, um alle Inkonsistenzen des Quelltextes aufzudecken.
-
Dem Verfahren inhärent ist aber die Tasache, dass nur getestet wird, was die Software hergibt.
Hat sie einen Teil der Spezifikation vernachlässigt, werden die generierten Testfälle dies übersehen.
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|
WYSIWYG |
WYSIWYG, Akronym für What You See Is What You Get
Weiterführende Infos entnehmen Sie z.B. folgenden Seiten:
|