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
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
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.
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.
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
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.
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.
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.
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.
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
??
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.
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.
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
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.
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
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.
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.