Lastenheft. Integration mehrerer Plugins in eine Entwurfsumgebung für verteilte eingebettete Systeme

Ähnliche Dokumente
Lastenheft (Universität Paderborn, Softwaretechnikpraktikum SS2006)

Pflichtenheft Inhaltsverzeichnis. 1 Zielbestimmung Musskriterien Wunschkriterien Abgrenzungskriterien...

Softwaretechnik-Praktikum SS 2007 Aufgabenblatt 3. Gruppe: HK-07-4 Gruppenleiter: Stanley Hillner Lastenheft. (Editor für Eclipse GMF)

Fakultät für Elektrotechnik, Informatik und Mathematik Fachgebiet Softwaretechnik Warburger Straße Paderborn.

Lastenheft für dynamische Geometrie-Software der Firma EduSoft

Testdokument (Universität Paderborn, Softwaretechnikpraktikum SS2006)

Projekt: <Hier den Namen des Projektes eingeben!> <Adresse> <Telefon / Fax> <Ansprechpartner>

Updateseite_BuV-PlugIn-NERZ-Gesamt

Lastenheft. Inhaltsverzeichnis. Gruppe: swp09-5. Projektleiterin: Anne Vogler am: 28. April Zielbestimmungen 2. 2 Produkteinsatz 2

Dokumente eines IT-Projektes:

Gruppe: swp12-9 (Projektleiter: Benjamin Glatz) Datum: Lastenheft. Web Annotation mit Fragment Ids. Gruppe: swp12-9

Aufgabe 3 Erstellt am: Softwaretechnik Praktikum SS06 Verantwortliche: Irina Justus

Rhapsody in J Modellierung von Echtzeitsystemen

Android DER SCHNELLE UND EINFACHE EINSTIEG IN DIE PROGRAMMIERUNG UND ENTWICKLUNGSUMGEBUNG. EXTRA: E-Book inside. dirk LOUIS peter MÜLLER. 2.

Technologiepark Paderborn Telefon: / XX XX XX Mobil: 01XX / XX XX XX XX XXXXXXX@mail.upb.de

Software Engineering. 3. Analyse und Anforderungsmanagement

Technische Informatik für Ingenieure Winter 2005/2006 Übungsblatt Nr. 3

Handbuch. TC3 Remote Manager. TwinCAT 3. Version: Datum:

Pflichtenheft (Universität Paderborn, Softwaretechnikpraktikum SS2006)

Softwareentwicklungsumgebungen

Anleitung zum Applet

Lernumgebung für das Travelling Salesman Problem. Bedienungsanleitung. Projekt im Sommersemester 2016 Betreuer: Prof. Dr.

SEW Übung EMFText. 1 Aufgabe. 2 Domänenbeschreibung. 3 Installation von Eclipse/EMFText. 4 Schritt-für-Schritt Anleitung. 4.

Vorlesung Programmieren

Phasenmodell. Problem stellung. Neue Anforderungen. Benutzerwünsche. Anforderungs analyse und - definition Systemmodell. Betrieb.

Konzept und Realisierung eines Zustandsmaschinen-Editors für Interaktionen medizinischer Bildverarbeitung mit Debug-Funktionalität

Ein Beispiel-Pflichtenheft

Softwarepraktikum 2010

SMARTentry Notification

Softwaretechnik 2015/2016

-Abwesenheitsnachricht einrichten

Software-Engineering 2. Software-Engineering 2. Entwicklungsumgebungen (IDE) IT works. Klaus Mairon

UML (Unified Modelling Language) von Christian Bartl

Eclipse Tutorial.doc

Softwareentwicklungspraktikum Sommersemester Grobentwurf

Die Datenquelle anlegen

Entwicklungswerkzeuge

Anleitung zum Arbeiten mit Microsoft Visual Studio 2008 im Softwarepraktikum ET/IT

Unified Modeling Language

Projektplan. Transport TM. Projekt: Juniorprofessor Dr. Holger Giese

Christoph Kecher, Alexander Salvanos UML 2.5. Das umfassende Handbuch. Rheinwerk. Computing

Lastenheft Gruppe HK-03 erstellt am: Lastenheft

FRAUNHOFER-INSTITUT FÜR PRODUKTIONSTECHNOLOGIE IPT PROJEKTGRUPPE ENTWURFSTECHNIK MECHATRONIK

Pflichtenheft Projekt Rollercoaster. Projektgruppe: Gruppenname Phasenverantwortlich: Müller-Langowski 15. April 2002

Unified Modeling Language 2

NACHRICHTENTECHNISCHER SYSTEME

Together - Integrierte SWE und QA 1. Fahrstuhlsteuerung

Dabei sollen die Nutzern nach einer Authentifizierung entsprechend ihren Rechten Begriffe ändern, anlegen und kommentieren können.

Modellbasiertes Testen auf Basis des fundamentalen Testprozesses

Eigene Seiten erstellen Eigene Inhalte / CMS

Zentrale Archivierung am Domino-Server

Kurzanleitung creator 2.0

Software-Engineering

VENTA KVM mit Office Schnittstelle

Pflichtenheft. Software für Ansteuerung eines Moving-Heads mittels PCI-Card DMX512b

Testen mit Use Cases. Chris Rupp Dr. Stefan Queins

Tyros 5 / PSR-S970 / PSR-S770: Wichtige Information: Mehrere Expansion Packs gleichzeitig installieren

G DATA TechPaper. Update auf Version 14.1 der G DATA Unternehmenslösungen

Produktinformation DaVinci Developer

Funktionsabgrenzung qs-stat/destra/vidara/solara.mp

Eigene Seiten erstellen

Zustandsdiagrammeditor Pflichtenheft, Version 3.0

Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML)

Vorlesung Programmieren

Netzwerk-Analyse mit dem FEC Network Monitor

Benutzerdokumentation. ChangePlorer

ModernOffice - Outlook-Synchronisation

Anleitung für das Applet. Zentraler Grenzwertsatz

(1)Einführung in Android Studio

Software Engineering II

ImgTrans Systembeschreibung Ein Service von FlixData.Com. Vers April 2017

Software Engineering II

Sophia Business Leitfaden zur Administration

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick

Digitale Kompetenzen

Mastermind. Testplan. Hochschule Luzern Technik & Architektur. Programmieren 2 FS12. Gruppe 10

Kurzanleitung creator 2.0

Verteilte Paarprogrammierung mit Eclipse

Neuer Funkrufmaster: DAPNET Folien: Daniel Sialkowski und Ralf Wilke. 2. Hamnettagung in Aachen,

Installationsanleitung

Testplan. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw,

GameGrid mit BlueJ Seite 1

Dynamisch generierte grafische Übersichtsseiten für Learning-Content-Management-Systeme. Unterstützung von Grafiken für Prüfungsauswahl.

1.3.1 Java-Compiler installieren

Übung Einführung in die Softwaretechnik

Matrix42. Use Case - Anwender kann Datei vom Typ PNG nicht öffnen. Version Dezember

Produktskizze. 28. November 2005 Projektgruppe Syspect

Schnelleinstieg, Installation und Einrichtung System Concept DMS

NetMan Desktop Manager Quick-Start-Guide

Modell-basierte Entwicklung mit der Timing Definition Language (TDL)

Entwurf und Simulation einfacher Logikelemente

EIBPORT INBETRIEBNAHME MIT DEM BROWSER / JAVA EINSTELLUNGEN / VORBEREITUNGEN AM CLIENT PC

Das Redaktionssystem UCMS. Beschreibung Technisches Profil

Pflichtenheft Software-Projekt: AutoEdit Add On

Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn. Testen. Tutorial im Rahmen des Software(technik)praktikums SS 2012

(1)Einführung in Eclipse

GebertSoftware Erfahrung, die Sie nutzen. pitop - Entwickler-Workstation für JIGS-KMS

Seite 1 von 5 Geschäftsführer Sitz der Gesellschaft Gera Tel.: Heiko Dietz Registergericht Jena Fax: Volksbank

Erstellen und Verwalten von Karteikarten für imcards am iphone / ipod touch

Klausur zur Vorlesung Softwaretechnik

Transkript:

Lastenheft (Universität Paderborn, Softwaretechnikpraktikum SS 2006) Projekt: Auftraggeber: Integration mehrerer Plugins in eine Entwurfsumgebung für verteilte eingebettete Systeme Universität Paderborn Institut für Informatik Fachgebiet Softwaretechnik Herr Juniorprofessor Dr. Holger Giese Warburger Straße 100 33098 Paderborn sp2006@zitmail.uni-paderborn.de Auftragnehmer: Softwaretechnikpraktikum 2006 Gruppe 16 Raum N3.237 (donnerstags 11:00 12:30 Uhr) Warburger Straße 100 33098 Paderborn swtpra16@uni-paderborn.de Ansprechpartner: Herr Lars Kasper, kasper@upb.de Version Datum Autor(en) 1 1.1 2006-05-11 SwtPra16 370 2006-05-15 SwtPra16 371 2006-05-15 SwtPra16 372 2006-05-15 SwtPra16 381 2006-05-16 SwtPra16 382 2006-05-16 SwtPra16 390 2006-05-17 SwtPra16 393 2006-05-17 SwtPra16 401 2006-05-18 SwtPra16 434 2006-05-20 SwtPra16 439 2006-05-21 SwtPra16 1 SwtPra16: Sebastian Elsner, Nicolai Hähnle, Kai Michael Hamich, Lars Kasper, Alexander Klass, Peter Kling, Tobias Knieper, Jannis Weide

1 Zielbestimmung Verteilte eingebettete Systeme werden zunehmend in der Automobilbranche genutzt, um in Autos intelligentes Verhalten einzubauen, zum Beispiel zur (computerisierten und automatischen) Steuerung von Fensterscheiben und Türschlössern. Zum Testen dieser Steuerungssysteme, deren Komplexität immer weiter zunimmt, benötigen ihre Entwickler entsprechende Software-Werkzeuge. Dazu existieren drei Plugins, die in diesem Projekt zu einer Entwurfsumgebung integriert werden sollen: Ein Komponenteneditor ermöglicht es dem Entwickler, Komponenten zu erstellen. Mit dem Verteilungseditor können Verbindungen zwischen ihnen eingerichtet werden, um sie miteinander kommunizieren lassen zu können. In diesen Editoren ist es möglich, neue Bauteile einzufügen oder bestehende Bauteile zu verändern oder zu entfernen. Das Diagnosewerkzeug ermöglicht dem Entwickler, das Verhalten seines Systems zu untersuchen. Unser Ziel ist die Entwicklung und Vermarktung einer solchen integrierten Entwurfsumgebung, die es dem Entwickler ermöglicht, beliebig viele Verteilungen und Komponentenmodelle zu erstellen, diese zu bearbeiten und gezielt zu testen. Die Zielgruppe dieses Projektes umfasst erfahrene Entwickler von eingebetteten Systemen, beispielsweise Ingenieure aus der Automobilbranche. 2 Produkteinsatz Ein verteiltes eingebettetes System besteht aus einer Vielzahl von Komponenten. Es gibt drei Arten von Komponenten: Sensoren empfangen Daten aus der Umwelt, zum Beispiel ob eine Tür geöffnet wird. Aktoren wirken auf die Umwelt des Systems ein; so kann ein Aktor beispielsweise für das Ver- und Entriegeln eines Schlosses zuständig sein, oder für das Licht im Innenraum. Andere Komponenten enthalten die eigentliche Intelligenz des Systems in Form von Zustandsmaschinen. Komponenten können über mehrere Ports verfügen. So können sie mit anderen Komponenten via Nachrichten interagieren. Zum Beispiel könnte ein Sensor registrieren, dass die Fahrertür geöffnet wurde und eine entsprechende Nachricht verschicken. Eine dafür vorgesehene Komponente empfängt diese Nachricht und entscheidet daraufhin, dass das Licht im Innenraum angeschaltet werden soll. Dazu schickt sie ihrerseits wieder eine Nachricht an einen Aktor, der diese Entscheidung realisieren soll. Diese Kommunikation spielt sich lokal in Knoten und über größere Entfernungen auf Bussen ab. Nachrichten, die über Busse versendet werden sollen, werden in Nachrichtenpuffern gespeichert. Dann werden diese basierend auf ihren Prioritäten eingeordnet und verschickt. Universität Paderborn, Softwaretechnikpraktikum SS 2006 2

Um solch ein eingebettetes System zu entwerfen, definiert der Entwickler in einem Komponenteneditor die benötigten Komponenten mit ihrem Verhalten in Form von Zustandsmaschinen und Schnittstellen zum Nachrichtenaustausch mit anderen Komponenten. In einem Verteilungseditor wird die Netzwerkstruktur angelegt: Konkrete Instanzen von Komponenten werden in Knoten (welche die Embedded Control Units darstellen) angeordnet und diese über Busse verbunden, um sie miteinander kommunizieren lassen zu können. Das so entworfene System muß auf Funktionsfähigkeit getestet werden können, wofür ein Diagnosewerkzeug verwendet wird, welches Simulationen visualisiert. Es werden zeitliche Veränderungen im System veranschaulicht, aktuelle Zustände der Komponenten angezeigt oder eigene Nachrichten zu Testzwecken in das System eingeschleust. Das Diagnosewerkzeug ist für die Steuerung der Simulation verantwortlich: Von einem einzigen Simulationsschritt bis zum Eintritt gewisser Bedingungen, die vom Entwickler über Watchdogs zur Überwachung von Komponenten oder Bussen festgelegt werden. Die Simulation selbst gliedert sich in zwei Teile: Die SystemSimulation simuliert das Verhalten der Komponenten sowie den Austausch von Nachrichten über Knoten und Bussen. Die EnvironmentSimulation (Umweltsimulation) simuliert die Umgebung des Systems, indem sie aus dem Verhalten der Aktoren neue Eingabewerte für die Sensoren berechnet. Beide Teile werden nacheinander in einem Simulationsschritt ausgeführt und die Ergebnisse einzelner Simulationsschritte werden im Diagnosewerkzeug angezeigt. Alle diese Möglichkeiten stellt die integrierte Entwurfsumgebung zur Verfügung. 3 Produktfunktionen 3.1 Use-Case-Diagramm Abbildung 1 auf Seite 4 zeigt die vier übergreifenden Anwendungsfälle der integrierten Entwicklungsumgebung. Um mit Komponenten- und Verteilungseditor sowie Diagnosewerkzeug arbeiten zu können, muß zuvor ein entsprechendes Projekt angelegt werden. Beschreibung zu 001: Projekt anlegen Der Entwickler legt ein neues Projekt an, in welchem dann Komponenten und deren Verteilung eingerichtet sowie die Diagnose dieses Entwurfs eines eingebetteten Systems vorgenommen werden kann. Beschreibung zu 002: Komponenten bearbeiten Der Entwickler kann in der integrierten Entwurfsumgebung den Komponenteneditor verwenden, um ein neues Komponentendiagramm zu erstellen bzw. ein bereits vorhandenes zu verändern. Dazu gehören Komponenten mit ihren Schnittstellen und Zuständen. Mehr Informationen dazu in der Dokumentation des Komponenteneditor-Plugins. Universität Paderborn, Softwaretechnikpraktikum SS 2006 3

Abbildung 1: Use-Case-Diagramm mit den übergreifenden Produktfunktionen Der Entwickler kann dieses Komponentendiagramm im Verteilungseditor bearbeiten und anschließend im Diagnosewerkzeug testen. Beschreibung zu 003: Verteilung bearbeiten Der Entwickler kann in der integrierten Entwurfsumgebung den Verteilungseditor verwenden, um ein neues Verteilungsdiagramm zu erstellen bzw. ein bereits vorhandenes zu verändern. Dazu werden beispielsweise Komponenten in Knoten zusammengefaßt, die wiederum über Busse miteinander verbunden werden. Mehr Informationen dazu in der Dokumentation des Verteilungseditor-Plugins. Der Entwickler kann dieses Verteilungsdiagramm im Diagnosewerkzeug testen. Bei Bedarf kann er wieder in den Komponenteneditor zurückkehren, um das Komponentendiagramm zu verändern. Beschreibung zu 004: Diagnose durchführen Der Entwickler kann in der integrierten Entwurfsumgebung das Diagnosewerkzeug verwenden, um ein vorhandenes Verteilungsdiagramm zu testen. Dazu stehen mehrere Beobachtungs- und Simulationsmöglichkeiten zur Verfügung. Man kann einen oder mehrere Schritte simulieren oder die Simulation ausführen, bis ein gewisser Zustand eintritt oder alle Komponenten ihre Endzustände erreicht haben. Mehr Informationen dazu in der Dokumentation des Diagnosewerkzeug-Plugins. Bei Bedarf kann der Entwickler wieder in den Komponenteneditor oder Verteilungseditor zurückkehren und das Komponentendiagramm bzw. Verteilungsdiagramm verändern. Universität Paderborn, Softwaretechnikpraktikum SS 2006 4

4 Produktdaten Die integrierte Entwurfsumgebung arbeitet auf drei Modellen bzw. Dateitypen. Eine cbm-datei (ComponentBehaviorModel) enthält Daten des Komponenteneditors, die ndm-datei (NetworkDeploymentModel) Informationen für den Verteilungseditor und in einer sdm-datei (SimulationDiagnosisModel) werden Informationen des Diagnosewerkzeugs abgelegt. 5 Produktcharakteristiken 5.1 Systemumgebung 5.1.1 Hardwareumgebung Wir empfehlen aus unserer Erfahrung mit Eclipse als Mindestplattform einen Pentium- III-kompatiblen Prozessor oder PowerPC G4 mit 1 Gigahertz Taktfrequenz, 1 Gigabyte Arbeitsspeicher, 1 Gigabyte freiem Festplattenspeicher, einer Bildschirmauflösung von 1280 960 Pixeln sowie Tastatur und Maus (oder äquivalente Eingabegeräte). Diese Anforderungen können sich noch ändern, da wir zwei zu integrierende Plugins Komponenten- und Verteilungseditor noch nicht vorliegen haben. 5.1.2 Softwareumgebung Wir setzen als installierte Software voraus: Java Runtime Environment, Version 1.4.2 Eclipse SDK 3.1.2 Graphical Editing Framework (GEF) 3.1.1 Eclipse Modeling Framework (EMF) 2.1.2 Universität Paderborn, Softwaretechnikpraktikum SS 2006 5

5.2 Nicht-funktionale Anforderungen Name: Typ: Beschreibung: Zugeordnete(r) Use Case(s): Name: Typ: Beschreibung: Zugeordnete(r) Use Case(s): Internationalisierung Pflege Die Umgebung lässt sich einfach in deutsche Sprache übersetzen. Alle Übersichtliche Oberfläche Use Die Oberflachen vom Komponenteneditor, Verteilungseditor und Diagnosewerkzeug sind übersichtlich und einfach zu bedienen. Alle Universität Paderborn, Softwaretechnikpraktikum SS 2006 6