<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="de">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Entwicklung und Evaluierung einer domänenspezifischen Sprache f ür SPS-Schrittketten</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Bastian</forename><surname>Cramer</surname></persName>
							<email>bcramer@uni-paderborn.de</email>
							<affiliation key="aff0">
								<orgName type="department">Department of Computer Science</orgName>
								<orgName type="institution">Uwe Kastens University of Paderborn</orgName>
								<address>
									<addrLine>Fürstenallee 11</addrLine>
									<postCode>33102</postCode>
									<settlement>Paderborn</settlement>
									<country key="DE">Germany</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Dennis</forename><surname>Klassen</surname></persName>
							<email>dennis.klassen@uni-paderborn.de</email>
							<affiliation key="aff0">
								<orgName type="department">Department of Computer Science</orgName>
								<orgName type="institution">Uwe Kastens University of Paderborn</orgName>
								<address>
									<addrLine>Fürstenallee 11</addrLine>
									<postCode>33102</postCode>
									<settlement>Paderborn</settlement>
									<country key="DE">Germany</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Entwicklung und Evaluierung einer domänenspezifischen Sprache f ür SPS-Schrittketten</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">9134AEF3704C2E58B4CD31FE050D8720</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-25T01:10+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Domänenspezifische Sprachen mit passenden Entwurfs-und Transformationswerkzeugen unterstützen Anwender in speziellen Gebieten ihre Entwürfe in Implementierungen umzusetzen. Sind solche Sprachen visuell, so können auch graphische Notationen aus dem Anwendungsgebiet übernommen werden, um die Akzeptanz der Sprache zu verbessern. In diesem Artikel berichten wir über den Entwurf, die Implementierung und Evaluation einer visuellen Sprache, die im industriellen Umfeld zur Steuerung von Robotern einer Produktionsstrecke eingesetzt wird. Der Einsatz eines Werkzeugsystems zur Sprachimplementierung (DEViL [Sch06a]) ermöglichte, dass mit akzeptablem Aufwand Prototypen generiert und Sprachvarianten erprobt wurden. 1 Einleitung Domänenspezifische Sprachen eignen sich sehr gut, um Entwürfe in speziellen Anwendungsgebieten treffend zu formulieren und mit passenden Werkzeugen in Programme oder andere formale Strukturen zu transformieren. Visuelle Sprachen sind für solche Zwecke besonders nützlich, da Strukturen und Zusammenhänge sehr anschaulich dargestellt werden können. Außerdem können sie gut an etablierte Notationen des Anwendungsgebietes angepasst werden und verkleinern dann die Distanz zwischen den Vorstellungen des Anwenders und den Sprachelementen. In diesem Artikel berichten wir über eine visuelle Sprache, die wir für die Firma Robert Bosch GmbH entwickelt haben, um damit die Steuerung von Robotern zu formulieren, die Elektromotoren montieren. Mit Entwürfen in dieser Sprache sollen Entwickler, die eine Motoren-Produktionsstrecke konzipieren, ihre Vorstellungen zum Ablauf der Montage an Programmierer vermitteln, welche die Steuerung der Roboter implementieren. Die Randbedingungen für die Entwicklung der Sprache werden in Abschnitt 2 dargestellt. Die von uns entwickelte Sprache soll eine informelle Notation ablösen, die bisher für diesen Zweck eingesetzt wurde. Damit soll erreicht werden, dass Entwürfe treffender beschrieben und Entwicklungszyklen abgekürzt werden. Der Entwurf der Sprache musste Konzepte der bisher verwendeten Notation gut aufnehmen und Erweiterungen und Präzisierungen sensibel einfügen, damit die Sprache von beiden Entwicklergruppen akzeptiert wurde. Im Abschnitt 3 stellen wir Sprachkonstrukte exemplarisch vor und berichten über die Evaluation der Sprache als akzeptanzsteigernde Maßnahme.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="de">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Um mit einer domänenspezifischen Sprache praktischen Nutzen zu erzielen, werden sprachspezifische Werkzeuge benötigt. Wir haben für diese Sprache u.a. einen visuellen Struktureditor, Übersetzer für SPS nach XML und einen Codegenerator für SPS implementiert und in den Entwicklungsprozess für die Produktionsstrecken eingebettet. Abschnitt 4 vermittelt einen Eindruck dieser Aufgaben jenseits der Sprachentwicklung im engeren Sinne.</p><p>Neben den grundsätzlichen Aufgaben zur Implementierung von Sprachen erfordert eine visuelle Sprache in erheblichem Maße zusätzliches technisches und konzeptionelles Wissen sowie weiteren Entwicklungsaufwand. Wenn man trotzdem noch Entwurfsvarianten erproben will, um die Akzeptanz zu verbessern, ist der Aufwand für eine manuelle Implementierung nicht akzeptabel. Wir haben für die Realisierung dieser Sprache das von uns entwickelte Werkzeugsystem DEViL <ref type="bibr" target="#b8">[Sch06a]</ref> eingesetzt. Es generiert vollständige Sprachimplementierungen mit visuellen Struktureditoren als Frontend aus Spezifikationen hohen Abstraktionsniveaus <ref type="bibr" target="#b9">[Sch06b]</ref>. Im Abschnitt 5 vermitteln wir einen Eindruck von dem Einsatz und der Wirksamkeit des Systems.</p><p>Einige Hinweise auf verwandte Arbeiten und eine Zusammenfassung beschließen den Artikel.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Vorstellung der Domäne</head><p>Die Firma Robert Bosch GmbH produziert an ihrem Standort in Bühl kleine Elektromotoren in großen Stückzahlen für vielfältige Einsätze in Kraftfahrzeugen. Auf langen Produktionsstrecken mit vielen einzelnen Stationen bauen Roboter die Motoren schrittweise zusammen und prüfen sie. Für jeden neuen Motortyp muss die Produktionsstrecke neu eingerichtet werden. Dazu wird für jede Station der Aufbau des Roboters, die Zuführung des Materials und die Weiterleitung der Produkte entworfen. Darauf abgestimmt werden die Arbeitsschritte des Roboters geplant und in speicherprogrammierbaren Steuerungen (SPS <ref type="bibr" target="#b1">[Aue89]</ref>) programmiert.</p><p>Bei der Entwicklung der motorspezifischen Produktionsstrecke kooperieren zwei Gruppen von Entwicklern mit unterschiedlichen Aufgaben: Die hier "</p><p>Projektleiter" genannte Gruppe entwirft den mechanischen Aufbau jeder Station und den Einsatz der Roboter, Greifarme, Schub-und Dreheinrichtungen, Taster und Sensoren. Die zweite Gruppe, hier als "</p><p>Programmierer" bezeichnet, entwickelt Programme zur Steuerung der Komponenten mit speicherprogrammierbaren Steuerungen. Die beiden Entwicklergruppen kommunizieren über den geplanten Ablauf der Produktionsschritte der Stationen. In mehreren Iterationen werden die Pläne verfeinert, in Programme umgesetzt, an den Geräten getestet und verbessert. Die Pläne der Abläufe, sogenannte " Schrittketten" werden in einer speziellen Notation beschrieben, zwischen den Entwicklergruppen ausgetauscht, fortgeschrieben und dokumentiert. Die Notation enthält graphische Elemente zur Skizzierung von Ablaufschritten und textuelle Annotationen für technische Angaben. Abbildung 2 und 3 zeigen Beispiele dazu.  </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Der Entwicklungsprozess einer</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Sprachentwurf</head><p>Wie aus dem vorhergehenden Abschnitt hervorgeht, wird eine domänenspezifische Sprache benötigt, welche den Aufgaben angemessen ist. In diesem Abschnitt wird die Vorgehensweise für einen solchen Sprachentwurf vorgestellt. Die SPS-Programmiersprachen spielen dabei eine wesentliche Rolle, da die DSL Programme für SPS beschreiben soll. Dafür wird zu Beginn eine Übersicht über die SPS-Sprachen gegeben. Anschließend wird der Sprachentwurf und die dazu verwendeten Elemente aus der vorhandenen Notation beschrieben. Im Anschluss daran werden die Evaluierung und die daraus resultierende DSL beschrieben.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.1">SPS-Konzepte als Grundlage der DSL</head><p>Die DSL soll speziell für die Entwicklung der Schrittketten eingesetzt werden, wofür nur bestimmte Teile der SPS-Sprachen verwendet werden. Der Standard IEC 61131 <ref type="bibr" target="#b6">[Inf03]</ref> vereinigt fünf Sprachen für SPS. Die Ablaufsprache (AS) dient der Gliederung und Orga- Bereits an dieser Stelle sind Gemeinsamkeiten und Gegensätze zwischen vorhandenen Werkzeugen und den Wünschen der Entwickler erkennbar. Z.B. sollte der Fluss der Schrittketten von links nach rechts beibehalten werden, entsprechend der bereits vorhandenen Notation in den Schrittkettenablaufzetteln (Abbildung 3, 4). Geändert werden sollte die Beschreibung der Transitionen und Bedingungen: Auf den Schrittkettenablaufzetteln (Abbildung 3) werden Bedingungen modelliert, unter welchen der dazugehörige Schritt geschaltet wird; in der neuen Sprache (Abbildung 4) werden Transitionen modelliert, die zum Verlassen des Schrittes führen. • Die Programmierer sind im Umgang mit SPS erfahrener, das sie bereits SPS-Software entwickelt und mit grafischen Editoren gearbeitet haben.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Als erstes werden die zu modellierenden</head><p>• Die Projektleiter programmieren nicht selbst. Ihr Bezug zu der SPS entsteht über den mechanischen Ablauf der Maschinen und die Schrittketten-Ablaufzettel.</p><p>Aus den Methoden, die für solche Evaluierungen einschlägig sind <ref type="bibr" target="#b10">[SCK07]</ref>, haben wir in diesem Projekt folgende eingesetzt:   </p><formula xml:id="formula_0">Interview</formula></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head></head><label></label><figDesc>Abbildung 1: Entwicklungsprozess vor der Einführung der DSL In der Abbildung 2 sind drei Schritte genauer dargestellt. Als Beispiel betrachten wir den Schritt N16, in dem die Aktion " Parkpos.anfahren" durchgeführt wird. Das grau unterlegte Kästchen stellt den Schritt dar. Darüber sind zwei vertikale Linien angeordnet, diese repräsentieren eine ODER-Verknüpfung zwischen drei Konditionen, unter denen dieser Schritt geschaltet wird. Die untereinander aufgelisteten Variablennamen sind UNDverknüpft. Unter dem Schritt können mehrere Aktionen aufgeführt sein, die in dem Schritt durchzuführen sind, bevor die Konditionen für den nächsten Schritt geprüft werden. Eine Schrittkette kann über hundert Schritte besitzen und erstreckt sich dann über mehrere Seiten. Die Schrittketten-Ablaufzettel sind während des gesamten Entwicklungsprozesses im Umlauf (Abbildung 1, Punkt 7,9). Alle Änderungen an dem Ablauf oder den Maschinen fordern stets den Einsatz des Schrittketten-Ablaufzettels. Häufig sind die Änderungen nur gering, wie z.B. das Entfallen einiger Schritte, die Änderung der Schrittreihenfolge oder eine einfache Namensänderung der Schritte. Die Abbildung 3 zeigt einen Auszug aus einem laufenden Projekt mit durchgeführten Korrekturen.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head></head><label></label><figDesc>Abbildung 2: Schritte, dargestellt mit dem Schrittketten-Dokumentationssystem</figDesc><graphic coords="4,151.59,125.80,303.60,162.85" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Abbildung 3 :</head><label>3</label><figDesc>Abbildung 3: Schrittketten-Ablaufzettel mit Änderungen</figDesc><graphic coords="5,124.80,125.80,357.15,245.10" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head></head><label></label><figDesc>Abbildung 5: Schritte/Aktionen/Transitionen</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_4"><head>Das</head><label></label><figDesc>Ziel dieser Arbeit war die Modernisierung und Verbesserung des Entwicklungsprozesses von SPS-Schrittketten in industrieller Umgebung. Dazu wurde eine visuelle domänenspezifische Sprache mit dem Werkzeugsystem DEViL für zwei, miteinander kommunizierende, Entwicklergruppen entwickelt und speziell an deren Aufgaben angepasst. Für den zu entwickelnden Struktureditor wurden anhand eines strukturierten Entwicklungsprozesses erst die Situation bei Bosch analysiert, sowie die Aufgaben der Benutzer und das Umfeld der Aufgaben untersucht. Die Benutzungsschnittstelle und die DSL wurden für genau die durchgeführten Aufgaben ausgelegt. Durch die verwendeten Werkzeuge bestand der Hauptteil dieser Arbeit aus der Evaluierung der visuellen Sprache und der Benutzungsschnittstelle. Durch wiederholte kontrollierte Experimente, Interviews und Gruppenbesprechungen mit den Benutzern wurde eine für beide Entwicklergruppen geeignete visuelle DSL sowie eine übersichtliche und aufgabenkonforme Benutzungsschnittstelle entworfen. Der dabei entwickelte Schrittkettenkonfigurator entspricht den Vorstellungen der Benutzer. Durch die Einführung des Schrittkettenkonfigurators wird der Entwicklungsprozess der Schrittketten beschleunigt und vereinfacht. Durch den in dieser Arbeit entwickelten Schrittkettenkonfigurator wird dem Werkzeugsystem DEViL und dem Vorantreiben dieser Arbeit bei Bosch sehr großes Interesse entgegen gebracht. Obwohl der Schrittkettenkonfigurator alle zu Beginn dieser Arbeit gestellten Anforderungen erfüllt, wurde erst während der Entwicklung die Ausbaufähigkeit des Systems deutlich. So wurden nachträglich zum konformen Ausdrucken der Schrittketten aus dem Schrittkettenkonfigurator zusätzliche Module in DEViL eingebaut und stehen somit auch</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0"><head></head><label></label><figDesc></figDesc><graphic coords="7,160.52,125.80,285.74,201.16" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0"><head></head><label></label><figDesc></figDesc><graphic coords="12,151.59,125.79,303.59,213.17" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head></head><label></label><figDesc>Bereits eine Skizze auf Papier (Abbildung 4) verkörpert den ersten Prototyp und die ersten Schritte der Evaluierung. Das "Rapid Prototyping" wurde durch den Einsatz des Generators DEViL ermöglicht. Da sich sowohl einzelne Teile der Benutzungsschnittstelle als auch Sprachelemente separiert evaluieren lassen, kann dadurch den Benutzern eine Vielzahl von Alternativen angeboten werden. Ein vielfältiges Angebot ist notwendig, da die Benutzer nicht den Überblick über die verschiedenen Modellierungstechniken besitzen. Das bedeutet, die Benutzer können nicht direkt mitteilen, welche Modellierungsmethode sie bevorzugen, sondern können aus den präsentierten Methoden eine Auswahl treffen und diese bewerten. Die Auswahl der Benutzer für die Evaluierung beschränkt sich auf die Mitarbeiter in der TEF-Abteilung bei Bosch in Bühl. Es ist wichtig, dass beide Entwicklergruppen, Programmierer und Projektleiter, bei der Evaluation vertreten sind. Denn sie haben unterschiedlich tiefe Kenntnisse von SPS-Konstrukten, welche die DSL stark prägen.</figDesc><table><row><cell>3.2 Evaluierung der DSL</cell></row><row><cell>In diesem Projekt haben wir der Evaluierung besondere Beachtung geschenkt. Dazu wur-</cell></row><row><cell>den verschiedene Methoden und Vorgehensweisen angewendet, mit denen unterschiedli-</cell></row><row><cell>che Effekte evaluiert wurden, z.B. Kommunikation zwischen den Benutzern, Verständlich-</cell></row><row><cell>keit der Modellierungssprache usw.. Die dabei erzielten Ergebnisse sind z.T. benutzer-</cell></row></table><note>Elemente der SPS-Sprachen ermittelt. Dafür wird das Expertenwissen aus dem Umfeld benötigt, unterstützend dazu werden die vorhandenen Projektdokumente untersucht. Sobald der Satz der zu modellierenden Elemente feststeht, kann dieser in einer abstrakten Struktur für DEViL<ref type="bibr" target="#b8">[Sch06a]</ref> implementiert werden. Aus dieser abstrakten Struktur ist DEViL bereits in der Lage einen Struktureditor mit einer simplen Baumdarstellung zu generieren. Bereits hier sind mit den generierten Struktureditoren Evaluierungstests möglich. Dabei kann untersucht werden, ob sich bereits vorhandene Projekte mit den Strukturbäumen ausdrücken lassen. Nachdem die abstrakte Struktur feststeht, kann mit der Modellierung der visuellen Komponenten der DSL begonnen werden. Abbildung 4: Erste Skizze des Schrittkettenkonfigurators abhängig und müssen richtig interpretiert werden. Außerdem sollte beachtet werden, dass sich die Wünsche und Meinungen der Entwickler im Verlauf der Evaluierung ändern, so ist z.B. in der Abbildung 4 zu sehen, dass die Benutzer alle Elemente zum Konfigurieren einer Schrittkette in einer einzigen Sicht dargestellt wünschen. Dieser Wunsch hat sich im Verlauf der Evaluierung geändert, da realistische SPS-Projekte in einer Sicht umfangreich und zu unübersichtlich werden. Neben dem Expertenwissen und Kenntnissen über die Domäne muss für die Evaluierung der DSL der Kenntnisstand der Benutzer ermittelt werden. Für diesen Zweck sind Interviews und Beobachtungen vor Ort notwendig. Die Ergebnisse können für die Dialogmodellierung verwendet werden, die beschreibt, wie sich das System zu verhalten hat und welchen Arbeitsfluss die Benutzer beim Erledigen ihrer Aufgaben haben. Außerdem kann mit Hilfe der Interviews herausgearbeitet werden, wie die Benutzungsschnittstelle auszusehen hat. Der Aufbau einer Grundakzeptanz ist für die weitere Entwicklung enorm wichtig. Erst wenn diese erreicht wurde, kann mit der Evaluierung der DSL fortgefahren werden. Die Evaluierung wurde parallel zum Prototyping und der Implementierung durchgeführt.</note></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_1"><head></head><label></label><figDesc>Wie schon aus dem SPS-Standard hervorgeht, gibt es visuelle Notationen für SPS und umfangreiche Entwicklungsumgebungen für SPS-Software, wie z.B. IndraWorks[Ind]. Diese Programmierumgebung bietet leider keine Möglichkeit die Darstellungen der Sprachen zu verändern. Da diese Umgebung für professionelle Softwareentwickler ausgerichtet ist, ist sie für unerfahrene Benutzer nicht gut geignet. Durch einfachere und besser angepasste Notationen können auch die unerfahrenen Benutzergruppen erreicht werden. Con02] und das in diesem Projekt verwendete DEViL, so wie Eclipse basierende Plattformen wie oAW oder GMF [BSM + 03]. Das System GenGed z.B. basiert auf einer als Graph modellierten abstrakten Struktur. In DEViL dagegen werden Sprachkonstrukte durch attributierte Grammatiken spezifiziert und als attributierte Bäume mit Querreferenzen repräsentiert, was eine entscheidende Rolle bei der Strukturmodellierung und den Sicht-Definitionen spielt. Einen ähnlichen Ansatz der Modellierung findet man beim MetaEdit+. Dieses System hat leider eine eingeschränkte Flexibilität bezüglich grafischer Repräsentationen. DEViL bietet dagegen spezialisiertere und stärker parametrisierbare grafische Fähigkeiten. So gibt es z.B. Spezialmuster für Bäume VPExplorerTree bzw. VPTree [Sch06b] mit Anbindung an das Graphlayout Werkzeug Dot und diverse Listenmuster. Außerdem sind Funktionen eingebettet um z.B. die Überlappungsfreiheit zu kontrollieren. Die Spezifikationen des Modells mit EMF ist grob mit DEViL vergleichbar. GMF z.B. unterscheidet analog zu DEViL zwischen der semantischen und der editierbaren Struktur, DEViL bietet jedoch weitere Spezialsprachen um die Spezifikation noch weiter zu vereinfachen Die Entwicklung einer visuellen Sprache [SK03] wurde bereits mit dem VL-Eli [KS02] System, dem Vorgänger von DEViL, in anderen Projekten erfolgreich durchgeführt. So wurde in Zusammenarbeit mit Sagem Orga SIMtelligence Designer/J [SPKF02], eine visuelle Sprache zur Anwendungsentwicklung für SIM-Karten, entwickelt.</figDesc><table><row><cell>MetaEdit+ [</cell></row><row><cell>Werkzeugsysteme zur Entwicklung visueller Struktureditoren sind z.B. GenGed [Bar98],</cell></row></table></figure>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">allen weiteren mit DEViL generierten Editoren zur Verfügung. Über die systematische Evaluierung des DEViL-Systems und mit ihm erzeugter Sprachimplementierungen wird in</title>
	</analytic>
	<monogr>
		<title level="m">Das gesamte Konzept hat bei Bosch großen Zuspruch gefunden</title>
				<imprint/>
	</monogr>
	<note>B. für Analysen und diverse Simulationszwecke erweitert</note>
</biblStruct>

<biblStruct xml:id="b1">
	<monogr>
		<author>
			<persName><forename type="first">A</forename><surname>Auer</surname></persName>
		</author>
		<title level="m">SPS -Aufbau und Programmierung 2</title>
				<imprint>
			<publisher>Huethig</publisher>
			<date type="published" when="1989">1989</date>
		</imprint>
	</monogr>
	<note>ïberarb. Aufl</note>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">GenGed: A Generic Graphical Editor for Visual Languages based on Algebraic Graph Grammars</title>
		<author>
			<persName><forename type="first">Roswitha</forename><surname>Bardohl</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">IEEE Symp. on Visual Lang</title>
				<imprint>
			<date type="published" when="1998-09">1998. September 1998</date>
			<biblScope unit="page" from="48" to="55" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Eclipse Modeling Framework</title>
		<author>
			<persName><forename type="first">Frank</forename><surname>Budinsky</surname></persName>
		</author>
		<author>
			<persName><forename type="first">David</forename><surname>Steinberg</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Ed</forename><surname>Merks</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Ray</forename><surname>Ellersick Und</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Timothy</forename><surname>Grose</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">BSM + 03</title>
				<imprint>
			<publisher>Addison Wesley</publisher>
			<date type="published" when="2003-08">aug 2003</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<monogr>
		<title level="m" type="main">MetaEdit+ User&apos;s Guide</title>
		<ptr target="http://www.metacase.com/" />
		<imprint>
			<date type="published" when="2002">2002</date>
		</imprint>
		<respStmt>
			<orgName>MetaCase Consulting</orgName>
		</respStmt>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<monogr>
		<title/>
		<author>
			<persName><forename type="first">Rexroth</forename><surname>Indraworks Von</surname></persName>
		</author>
		<ptr target="http://www.boschrexroth.com/" />
		<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">-3 Speicherprogrammierbare Steuerungen Teil 3</title>
		<idno>IEC 61131</idno>
	</analytic>
	<monogr>
		<title level="j">Programmiersprachen Deutsche Fassung EN</title>
		<imprint>
			<biblScope unit="volume">61131</biblScope>
			<date type="published" when="2003">2003. 2003</date>
			<publisher>Deutsche Kommission Elektrotechnik Elektronik Informatik</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">VL-Eli: A Generator for Visual Languages</title>
		<author>
			<persName><forename type="first">Uwe</forename><surname>Kastens</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Carsten</forename><surname>Schmidt</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of Second Workshop on Language Descriptions, Tools and Applications (LDTA&apos;02)</title>
		<title level="s">Electronic Notes in Theoretical Computer Science</title>
		<meeting>Second Workshop on Language Descriptions, Tools and Applications (LDTA&apos;02)<address><addrLine>Grenoble, France</addrLine></address></meeting>
		<imprint>
			<publisher>Elsevier Science Publishers</publisher>
			<date type="published" when="2002">2027. 2002</date>
			<biblScope unit="volume">65</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<monogr>
		<title level="m" type="main">DEViL Homepage</title>
		<author>
			<persName><forename type="first">Carsten</forename><surname>Schmidt</surname></persName>
		</author>
		<ptr target="http://ag-kastens.uni-paderborn.de/forschung/devil/" />
		<imprint>
			<date type="published" when="2006">2006</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<monogr>
		<title level="m" type="main">Generierung von Struktureditoren für anspruchsvolle visuelle Sprachen</title>
		<author>
			<persName><forename type="first">Carsten</forename><surname>Schmidt</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2006">2006</date>
		</imprint>
	</monogr>
	<note type="report_type">Dissertation</note>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">Usability Evaluation of a System for Implementation of Visual Languages</title>
		<author>
			<persName><forename type="first">Carsten</forename><surname>Schmidt</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Bastian</forename><surname>Cramer Und</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Uwe</forename><surname>Kastens</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Symposium on Visual Languages and Human-Centric Computing</title>
				<imprint>
			<publisher>IEEE Computer Society Press</publisher>
			<date type="published" when="2007-09">September 2007</date>
			<biblScope unit="page" from="231" to="238" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">Implementation of visual languages using patternbased specifications</title>
		<author>
			<persName><forename type="first">Carsten</forename><surname>Schmidt</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Uwe</forename><surname>Kastens</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Software -Practice and Experience</title>
		<imprint>
			<biblScope unit="volume">33</biblScope>
			<biblScope unit="page" from="1471" to="1505" />
			<date type="published" when="2003">Dezember 2003</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
		<title level="a" type="main">SIMtelligence Designer/J: A Visual Language to Specify SIM Toolkit Applications</title>
		<author>
			<persName><forename type="first">Carsten</forename><surname>Schmidt</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Peter</forename><surname>Pfahler</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Uwe</forename><surname>Kastens</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Carsten</forename><surname>Fischer</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of Second Workshop on Domain Specific Visual Languages (OOPSLA 2002)</title>
				<meeting>Second Workshop on Domain Specific Visual Languages (OOPSLA 2002)<address><addrLine>Seattle, WA, USA</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2002">2002. 2002</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
