16
16.08.22 Lei Liu: Software- Tankstelle 1 Schaffung einer internetbasierten Softwaretankstelle zur Herstellung der technischen Voraussetzungen für die Teilnahme am DIANE-Ad-hoc-Netz Student : Lei Liu http://www.ipd.uni-karlsruhe.de/DIANE Universität Karlsruhe Institut für Programmstrukturen und Datenorganisation Betreuer: Philipp Obreiter, Michael Klein

Student : Lei Liu

  • Upload
    amos

  • View
    20

  • Download
    0

Embed Size (px)

DESCRIPTION

Schaffung einer internetbasierten Softwaretankstelle zur Herstellung der technischen Voraussetzungen für die Teilnahme am DIANE-Ad-hoc-Netz. Student : Lei Liu. Betreuer: Philipp Obreiter, Michael Klein. Universität Karlsruhe Institut für Programmstrukturen und Datenorganisation. - PowerPoint PPT Presentation

Citation preview

Page 1: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 1

Schaffung einer internetbasierten Softwaretankstelle zur Herstellung der

technischen Voraussetzungen für die Teilnahme am DIANE-Ad-hoc-Netz

Student : Lei Liu

http://www.ipd.uni-karlsruhe.de/DIANE

Universität KarlsruheInstitut für Programmstrukturen und Datenorganisation

Betreuer: Philipp Obreiter, Michael Klein

Page 2: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 2

Agenda

• Überblick

• Anforderungen

• System Architektur

• Technologie Auswahl & Implementierung

• DEMO

• Zusammenfassung

Über.

Anfo.

S. A.

T. A.

Demo.

Zusa.

Page 3: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 3

Überblick – DIANE-Projekt

• DIANE-Projekt– Dienste in Ad-Hoc-Netzen– Zielgruppe: Studenten mit mobilen Geräten, vor allem

PDAs mit Wireless LAN Karten

• Bisheriger Entwicklungszustand– Entwicklungsumgebung:

• Jeder entwickelt an seinem eigenen Rechner

• Fertige Softwarekomponenten in CVS Server eincheken

• CVS Server schreibt Log und schickt Meldung durch E-Mails

– Was fehlt noch?• Organisieren von Softwarekomponenten

• Auslieferung von Software an Anwender

Über.

Anfo.

S. A.

T. A.

Demo.

Zusa.

Page 4: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 4

Überblick – Szenario

• Lebenszyklus von Software

• Verschiedene Rollen

• Vereinfachtes Szenario

Über.

Anfo.

S. A.

T. A.

Demo.

Zusa.

Planung Definition Entwurf Implement. Einführung Wartung

AnwenderAdministrator

Software Update

Software Deployment

Software Update

Software Entwicklung

EntwicklerEntwickler Administrator Anwender

Software DeploymentSoftware Entwicklung Software in Dienst Software in Dienst

Page 5: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 5

Überblick – Probleme

• Probleme in einem mobilen Umfeld– Mobile Geräte besitzen nur beschränkte Ressourcen

(Rechenleistung, Memory, GUI…)– Mobile Geräte sind nicht immer online– Benutzer von mobilen Geräten sein nicht immer erfahren– Häufige Aktualisierung von Softwarekomponenten bedeutet

auch viel Arbeit für den Administrator

Über.

Anfo.

S. A.

T. A.

Demo.

Zusa.

Page 6: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 6

Anforderungen für Software-Tankstelle

• Für den Entwickler– leichte Auslieferung von neuen Softwarekomponenten an den

Administrator– automatisches Erkennen und Behandeln von neuer Software

(-Version)

• Für den Administrator– Leichte Verwaltung von verschiedene Versionen– Organisieren von Softwarekomponenten durch Konfigurationsdatei– Leichte Auslieferung von neuer Software an den Anwender– Software Prozess übernimmt diese Aufgabe

• Für den Anwender– Leichtes Installieren von neuer Software

• Für Dummy: installieren nach Vorschlag• Für Poweruser: Softwarekomponente selber auswählen

– Eine Klientenapplikation mit zwei Installationsmodes

Über.

Anfo.

S. A.

T. A.

Demo.

Zusa.

Page 7: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 7

Architektur – Globale Architektur

Über.

Anfo.

S. A.

T. A.

Demo.

Zusa.

InternetInternet

Mobiles Gerät

WLAN Karte

AccessPoint

Entwickler

Anwender Administrator

CVS ServerCVS Server

CVS Log.

CVS KlientCVS Klient

DIANEKlientApp.

Entwickler: automatisches Erkennen und Behandeln von neuer SoftwareAdministrator: Organisieren von Softwarekomponenten durch Konfig. DateiAdministrator: Software Prozess übernimmt die Auslieferung an AnwenderAnwender: Eine Klientapplikation mit zwei Installationsmodes

Auschecken

DIANEComponent

Service

DIANEComponent

ServiceSoftwareRepos.

SoftwareRepos.

Überwachen

Komp. Konf.

Page 8: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 8

Architektur – Software-Tankstelle

Über.

Anfo.

S. A.

T. A.

Demo.

Zusa.

Software Deployment

Software Update

Software Entwicklung Software in Dienst

SoftwareRepository

DIANEComponent

Service

Eincheckenvon neuer Software(-Version)

DIANEKlient-

applikation

Add Get

Komponenten-Filter

Response

Request

Komp. Konf.

Page 9: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 9

Technologie – Entwicklungs- und Laufzeitumgebungen

• Entwicklungsumgebungen• Laufzeitumgebungen auf PDAs

– Personal Java– .NET Compact Framework

Über.

Anfo.

S. A.

T. A.

Demo.

Zusa.

Hardware (HP Jornada, Compaq iPAQ)

Operating System (WindowsCE)Operating System (WindowsCE)

.NET Compact Framework

Common Language Runtime

Class Library

Java Virtual Machine

Java Application

Java ClassFiles

PersonalJava Native Application

Managed WinCE/Pocket PCApplication

Managed WinCE/Pocket PCApplication

Java Application

DIANE Initiator

??

Page 10: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 10

Technologie – Technologies

• Java oder Windows Applikation für den Klient?– Beide bringen „write once, run everywhere“– Was uns Java bringen würde?

• Zuverlässigkeit• Viele vorhandene Erfahrungen mit Java → leichter Einstieg• Langsames Starten von Java Applikationen

– Was uns .NET Compact Framework bringen würde?• Bessere Unterstützung für Web-Services• Einfache Zugriff auf System Ressourcen• Intergriert in Visual Studio .NET → leichte Debugmöglichkeiten

• Entscheidung: Klient als Windows Applikation auf der Basis von .NET Compact Framework

• DIANE Component Service als Web-Service

Über.

Anfo.

S. A.

T. A.

Demo.

Zusa.

Page 11: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 11

Implementierung – Übersicht

Über.

Anfo.

S. A.

T. A.

Demo.

Zusa.Software

Repository

DIANEComponent

Service

Eincheckenvon neuer Software(-Version)

DIANEKlient

Applikation

Add Get

Komponenten-Filter

Response

Request

Komp. Konf.

Page 12: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 12

Implementierung – Aktuallisierung einer Softwarekomponente

Über.

Anfo.

S. A.

T. A.

Demo.

Zusa.

Init.WatcherProzess

WatcherProzess

Parsen Event und Holen den Namen der Komponente

KomponenteRegistiert?

abbrechen

KomponentenAuschecken

Fügt Komponenten zuSoft. Repository hinzu

True

False

EmpfangenUpdate Event

Page 13: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 13

Implementierung – Softwarekomponente Konfigurationsdatei

Profile

Module

Component

«call»

+made up of0..1

+belongs to1..*

+made up of0..1

+belongs to1..*

Profile A Profile B

Module A Module B Module C

Component A.1

Component A.2.1

Component A.3.1

Component A.2.2

Component A.3.2

Component C.1

Component C.2

Component C.3

belongs to

belongs to

called by

called by

Component:Basic Entity

Profile:CompositionofModules

Module:CompositionofComponents

UML Tree View

Über.

Anfo.

S. A.

T. A.

Demo.

Zusa.

Page 14: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 14

Implementierung – Component Service

Über.

Anfo.

S. A.

T. A.

Demo.

Zusa.

Holen den Namendes Profils

Gültiger Name? Abbrechen

Hole alle notwendigeKomponente

Vorbereiten für Datenübertragung

True

False

EmpfangenKlientenanfrageDIANE

ComponetService

Antwort an Klient Senden

ExceptionAuswerfen

Init. DIANEComponent

Service

Page 15: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 15

DEMO – notwendige Daten fürs Testen

• Start-URL und Installationsdateien für die Klient- applikationen unter– http://192.168.15.2/DIANE/start.aspx

• Hilfe zur Verwendung von DIANE Administration Tools unter:– Bei PDA unter Start > Hilfe, um Hilfe Programm zu starten– Unter Menü Ansicht > Gesamte installierte Hilfe „DIANE

Project“ auswählen

• Um Klientenapplikationen zu starten– Bei PDA unter Start > Programme, und dann aufs Symbol

„DIANE ADMIN“ klicken.

Über.

Anfo.

S. A.

T. A.

Demo.

Zusa.

Page 16: Student : Lei Liu

21.04.23 Lei Liu: Software-Tankstelle 16

Zusammenfassung

• Was haben wir gemacht im Vortrag?– Ist-Zustand von der Entwicklungsumgebung– Anforderungen an Software-Tankstelle zusammengestellt– Globale Architektur aufgebaut an Hand von Anforderungen– Technologie ausgewählt– Implementieren

• Vielen Dank für Ihre Aufmerksamkeit!• Fragen?

Über.

Anfo.

S. A.

T. A.

Demo.

Zusa.