Modul 223
© 2011
coloSign
Modul 223
Multi-User-Applikation
objektorientiert realisieren
mit VB.NET
Gino Colombo
Gewerblich-Industrielle Berufsschule Bern
[email protected]
13.04.2015
1
Modul 223
© 2011
coloSign
Semesterarbeit
Eine kleinere Firma will eine Zeiterfassung programmieren lassen. In der
Konzeptionsphase haben sie sich auf folgendes ERD geeinigt:
13.04.2015
2
Modul 223
© 2011
coloSign
Mein Zeitmanagement
•
•
•
•
Wann ist der Abgabetermin?
Was ist zu tun?
Wie viel Zeit habe ich?
Wer macht was?
13.04.2015
3
Modul 223
© 2011
coloSign
Wie viel Zeit habe ich?
• Arbeitswochen bestimmen
• Anzahl Stunden pro Woche definieren
• Anzahl Projektstunden berechnen
Wochen ∑ 04 05 06 07
08 09 10 11 12 13 14 15 16 17 18
KW
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
Ferien
Proben
Work
29 4 4 2
2 2
3 2 2 2 2 2 2
13.04.2015
4
Modul 223
© 2011
coloSign
Entwicklungsprozesse
• Wasserfall
• Iterativ und Inkrementell
• XP Extreme Programming
13.04.2015
5
coloSign
Modul 223
© 2011
Wasserfall oder Stufenmodell
13.04.2015
6
Modul 223
© 2011
coloSign
Iterativ und inkrementell
13.04.2015
7
Modul 223
© 2011
coloSign
Extreme Programming
13.04.2015
8
Modul 223
© 2011
coloSign
Unser Vorgehen
•
•
•
•
•
•
Extreme Programming
Use Case, Stories
Test Case
Iterationen
Abnahme
Übergabe
13.04.2015
9
Modul 223
© 2011
coloSign
Praktikum 1
•
•
•
•
Zweier Gruppen bilden
Kapazität bestimmen
VB 2005 oder 2008 Express installieren
Diagramm Designer installieren
13.04.2015
10
Modul 223
© 2011
coloSign
Vorbereitung
•
•
•
•
•
•
•
Stories schreiben
Tasks ableiten
Storyboard erstellen
Anzahl Iterationen bestimmen
Story einer Iteration zuordnen
System Design
Nichtfunktionale Anforderungen
13.04.2015
11
Modul 223
© 2011
coloSign
Story
13.04.2015
12
Modul 223
© 2011
coloSign
Story Board
13.04.2015
13
Modul 223
© 2011
coloSign
Praktikum 2
•
•
•
•
•
•
In zweier Gruppen Storys diskutieren
Stories schreiben
Tasks definieren und Aufwand schätzen
Storyboard erstellen
Storys schreiben
Iterationen festlegen
13.04.2015
14
Modul 223
© 2011
coloSign
USE CASE
13.04.2015
15
Modul 223
© 2011
coloSign
Generalisierung
13.04.2015
16
Modul 223
© 2011
coloSign
Generalisierung
13.04.2015
17
Modul 223
© 2011
coloSign
Akteure
13.04.2015
18
Modul 223
© 2011
coloSign
include
13.04.2015
19
Modul 223
© 2011
coloSign
extend
13.04.2015
20
coloSign
13.04.2015
Modul 223
© 2011
21
coloSign
13.04.2015
Modul 223
© 2011
22
coloSign
13.04.2015
Modul 223
© 2011
23
Modul 223
© 2011
coloSign
Anwendungsfälle I
13.04.2015
24
Modul 223
© 2011
coloSign
Was ist xP
•
•
•
•
Kurze Zyklen
Inkrementellen Planungsansatz
Automatische Tests
Vertrauen auf mündliche Kommunikation,
Tests, Quellcode, die Struktur und den
Zweck des Systems zum Ausdruck
bringen
• Vertrauen auf Programmierer mit
gewöhnlichen Fähigkeiten
13.04.2015
25
Modul 223
© 2011
coloSign
Die vier xP Variablen
•
•
•
•
Kosten
Zeit
Qualität
Umfang
• >>> Das Entwicklungsteam, darf den Wert
der vierten Variablen bestimmen! <<<
13.04.2015
26
Modul 223
© 2011
coloSign
Die vier xP Werte
•
•
•
•
Kommunikation
Einfachheit
Feedback
Mut
13.04.2015
27
Modul 223
© 2011
coloSign
Die fünf xP Grundprinzipien
•
•
•
•
•
Unmittelbares Feedback
Einfachheit anstreben
Inkrementelle Veränderung
Veränderung wollen
Qualitätsarbeit
13.04.2015
28
Modul 223
© 2011
coloSign
Schlussfolgerung
•
•
•
•
Programmieren
Testen
Zuhören
Designentwurf
13.04.2015
29
Modul 223
© 2011
coloSign
Verfahren
•
•
•
•
•
•
•
•
•
•
•
•
Planungsspiel
Kurze Releasezyklen
Metapher
Einfaches Design
Testen
Refactoring
Programmieren in Phasen
Gemeinsame Verantwortung
Fortlaufenden Integration
40 Stunden Woche
Kunde vor Ort
Programmierstandards
13.04.2015
30
Modul 223
© 2011
coloSign
Planungsspiel
Kunde vor Ort
40 Stunden Woche
Metapher
Einfaches Design
Refactoring
Kurze
Releasezyklen
Programmieren
in Paaren
Testen
Standards
13.04.2015
Gemeinsame
Verantwortlichkeit
Fortlaufende
Integration
31
Modul 223
© 2011
coloSign
System Design
• Datenbankarchitektur
• Klassenmodell
• GUI Design
13.04.2015
32
Modul 223
© 2011
coloSign
ERM - RDM
Student
(0,m)
belegt
(0,n)
Mtnr
Name
SemGr
Adresse
Vorlesung
Vorlnr
Fach
Semester
Raum
Zeit
Student ( Mtnr, Name, SemGr, Adresse)
Fach ( Vorlnr, Fach, Semester, Raum, Zeit)
Belegung (Mtnr, Vorlnr)
13.04.2015
33
Modul 223
© 2011
coloSign
Klassendiagramm
13.04.2015
34
Modul 223
© 2011
coloSign
Zustandsdiagramm
13.04.2015
35
Modul 223
© 2011
coloSign
Aktivitätsdiagramm
13.04.2015
36
Modul 223
© 2011
coloSign
Sequenzdiagramm
13.04.2015
37
Modul 223
© 2011
coloSign
RDM
13.04.2015
38
Modul 223
© 2011
coloSign
Klassendiagramm
13.04.2015
39
Modul 223
© 2011
coloSign
GUI
•
•
•
•
Modul- Form- Design
Menudesign
Klassendesign
List / Detail View und Dialog
13.04.2015
40
Modul 223
© 2011
coloSign
Form Design
13.04.2015
41
Modul 223
© 2011
coloSign
Menudesign
13.04.2015
42
Modul 223
© 2011
coloSign
Praktikum 3
•
•
•
•
•
•
•
•
Anwendungsfälle ableiten
ERM / RDM
Klassendiagramm
Sequenzdiagramm
Maskenlayout
Moduldesign
Menudesign
Testing
13.04.2015
43
Modul 223
© 2011
coloSign
ADO.NET (Datenprovider)
Connection
Command
DataAdapter
Transaction
Parameter
DataReader
13.04.2015
44
Modul 223
© 2011
coloSign
ADO.NET (Datenkonsument)
DataSet
DataTable
DataRow
DataView
DataRowView
DataColumn
Constraint
DataRelation
13.04.2015
45
Modul 223
© 2011
coloSign
Datenprovider
…DbConnection
Stellt eine Verbindung zur Datenquelle her
…DbCommand
Führt eine SQL Abfrage aus
…DbDataReader
Ermöglicht einen sequentiellen nur LeseZugriff auf die Datenquelle
…DataAdapter
Ermöglicht das füllen eines DateSets mit
dem Ergebnis einer SQL Abfrage
…CommandBuilder Erstellt automatisch Command Objekte
…DbTransaction
13.04.2015
Organisiert die Anwendung von
Transaktionen
46
Modul 223
© 2011
coloSign
Datenkonsument
DataSet
Kernobjekt, kann als Container für alle
untergeordneten Objekte dienen
DataTable
Datentabelle
DataRow
Eine bestimmte Zeile einer Tabelle
DataColumn
Eine bestimmte Spalte einer Tabelle
Constraint
Definiert Einschränkungen innerhalb einer Tabelle
DataRelation
Definiert Beziehungen zwischen den Tabellen
DataView
Sicht auf eine Tabelle, z.B. für Sortierungen und
Suchen
13.04.2015
47
Modul 223
© 2011
coloSign
Daten auslesen
13.04.2015
48
coloSign
13.04.2015
Modul 223
© 2011
49
Modul 223
© 2011
coloSign
OleDbCommand
Dim con as NewOleDBConnection („ConnectString“)
Dim updCmd As New OleDbCOmmand („Update Kunden…“, con)
Dim selCmd As New OleDbCommand („Select Firma From…, con“)
Dim da As New OleDbDataAdapter (selCmd)
Dim ds As New DataSet ()
Conn.Open ()
updCmd.ExecuteNonQuery ()
Da.Fill (ds, „Londoner Kunden“)
con.Close ()
13.04.2015
50
Modul 223
© 2011
coloSign
Direkter Zugriff
13.04.2015
51
Modul 223
© 2011
coloSign
Dataset
• Komplexe Mini Datenbank
• Komplett im Arbeitsspeicher
• Beliebige Datenquelle
– Datenbank
– Objekt
– Webservice
• Keine direkte Verbindung zur DB
• Dim ds As DataSet (name As String)
13.04.2015
52
Modul 223
© 2011
coloSign
Beispiel für Insert ()
13.04.2015
53
Modul 223
© 2011
coloSign
DataTable
• Datenspeicherung erfolgt in Tabellen
• da.Fill (ds, „Artikel“) erzeugt eine Tabelle
• Ebenso:
• Dim dt As DataTables = ds.Tables.Add („Artikel“)
13.04.2015
54
Modul 223
© 2011
coloSign
Praktikum 4
• DataReader
• Insert, Update und Delete
13.04.2015
55
Modul 223
© 2011
coloSign
Semesterarbeit
• Rapport erfassen
• Stammdaten
– Projekte
– Kunden
– Aufgaben
– User
• Benutzerverwaltung
– Profile
– Berechtigungen
13.04.2015
56
Modul 223
© 2011
coloSign
Login
13.04.2015
57
Modul 223
© 2011
coloSign
Username & Profil I
13.04.2015
58
Modul 223
© 2011
coloSign
Username & Profil II
13.04.2015
59
Modul 223
© 2011
coloSign
Berechtigung (1)
13.04.2015
60
Modul 223
© 2011
coloSign
Berechtigung (2)
13.04.2015
61
Modul 223
© 2011
coloSign
Berechtigung (3)
13.04.2015
62
Modul 223
© 2011
coloSign
Main Formular
13.04.2015
63
Modul 223
© 2011
coloSign
Select Rapporte
13.04.2015
64
Modul 223
© 2011
coloSign
Aufruf eines Detail Forms
13.04.2015
65
Modul 223
© 2011
coloSign
Rapport Detail
13.04.2015
66
Modul 223
© 2011
coloSign
Projekt
13.04.2015
67
Modul 223
© 2011
coloSign
Select Projekte
13.04.2015
68
Modul 223
© 2011
coloSign
Projekt Detail
13.04.2015
69
Modul 223
© 2011
coloSign
Update Projekt
13.04.2015
70
Modul 223
© 2011
coloSign
Insert Projekt
13.04.2015
71
Modul 223
© 2011
coloSign
Delete Projekt
13.04.2015
72
coloSign
13.04.2015
Modul 223
© 2011
73
coloSign
13.04.2015
Modul 223
© 2011
74
coloSign
13.04.2015
Modul 223
© 2011
75
coloSign
13.04.2015
Modul 223
© 2011
76
Modul 223
© 2011
coloSign
Testen
13.04.2015
77
Modul 223
© 2011
coloSign
Quellenangabe
Visual Basic 2005
ISBN: 3-8273-2266-9
Visual Basic 2005
ISBN: 3-446-40650-6
Datenbankprogrammierung mit Visual
Basic 2005
ISBN: 3-86063-589-2
13.04.2015
78