0 Artikel
0,00 EUR

Agile Entwicklung von Web 2.0

Applikationen mit Ruby on Rails

Agile Entwicklung von Web 2.0


von: Rico Schulz
Format: E-Book
Sofort verfügbar

29,90 EUR
inkl. ges. MwSt. 19.00% versandkostenfrei

 

Produktinfos

Erschienen: 2007
131 Seiten
verfasst als Diplomarbeit

Menge:



Produktbeschreibung

Das Framework Ruby on Rails dient der Entwicklung von datenbank-basierten Webapplikationen. Es soll durch innovative Funktionalitä?ten die Webentwicklung effizienter gestalten. Im weiteren Verlauf wird geprü?ft, ob sich Ruby on Rails fü?r die Entwicklung von Web 2.0 Applikationen eignen kö?nnte. Desweiteren wird das Konzept der agilen Softwareentwicklung beschrieben. Es wird dabei in kurzer Form auf die traditionellen Vorgehensweisen der Softwareentwicklung eingegangen. Spä?ter wird das Agile Manifest und der populä?rste agile Vertreter "?Extreme Programming ;g ausfü?hrlich dargestellt. Dies soll vorbereitend fü?r die abschließ?ende Evaluation des Potentials von Ruby on Rails fü?r die agile Softwareentwicklung wirken.

1 Einleitung 1

1.1 Motivation und Ziel der Arbeit .

2 1. Aufbau der Arbeit

2 2 Begriffserklä?rungen und Definitionen.... 4

2.1 Web 2.0 4

2.2 Framework, Programmbibliothek. 4

2.3 Objektorientierung.... 5

2.4 Agile Softwareentwicklung. 6

2. Ruby on Rails. 7

3 Web 2.0.... 8

3.1 Einleitung .. 8

3.2 O ;fReillys Prinzipien des Web 2.0. 9

3.2.1 Einleitung... 9

3.2.2 Das Web als Plattform. 10

3.2.3 Die Nutzung kollektiver Intelligenz .. 13

3.2.4 Die Daten als nä?chstes "?Intel Inside ;g.... 16

3.2.5 Abschaffung des Software-Lebenszyklus . 17

3.2.6 Lightweight Programming Models (LPMs) 18

3.2.7 Software ü?ber die Grenzen einzelner Gerä?te hinaus .... 19

3.2.8 Benutzerfü?hrung (Rich User Experiences) 20

3.2.9 Zusammenfassung und Beschreibung der zentralen Kennzeichnung des Web 2.0

3.3 Die Gefahren des Web 2.0 ... 24

3.3.1 Die Daten. 24

3.3.2 Cyber-Stalking ... 25

3.3.3 Barrierefreiheit ... 25

3.3.4 Hackerangriffe ... 25

3. Andere Gefahren .... 26

4 Ruby on Rails . 28

4.1 Einleitung 28

4.2 Die Prinzipien.... 29

4.2.1 Model-View-Controller (MVC) 29

4.2.2 Konvention ü?ber Konfiguration ... 34

4.2.3 DRY (don ;ft repeat yourself) ... 36

4.3 Ordnerstruktur und Rails-Umgebungen.... 36

4.3.1 Ordnerstruktur ... 36

4.3.2 Rails-Umgebungen. 37

4.4 Rails erweitern .. 38

4.4.1 RubyGem. 38

4.4.2 Rails-Plugins. 39

4.5 Generatoren. 39

4.5.1 Scaffold-Generator . 39

4.5.2 Weitere Generatoren ... 40

4.6 Versions- und Migrationskontrollen 41

4.6.1 Migrationskontrolle . 41

4.6.2 Versionskontrolle .... 42

4.7 Internationalisierung.... 42

4.8 Webservices 43

4.9 E-Mail . 43

4.10 Tests .. 43

4.10.1 Test-Datenbank.. 44

4.10.2 Verzeichnisstruktur.. 44

4.10.3 Unit-Tests . 44

4.10.4 Funktionale Tests.... 44

4.10.5 Integration-Tests 44

4.10.6 Test-Fixtures . 45

4.10.7 Mocks .. 45

4.10.8 Brakepointing 45

4.11 Rails-Helper . 45

4.11.1 HTML-Tag 46

4.11.2 Pagination 46

4.11.3 Formatierung. 47

4.11.4 Debug, Benchmark, Cache.... 47

4.11.5 RIA . 47

4.11.6 SQL-Helper ... 48

4.11.7 Validierung .... 48

4.11.8 Callback.... 49

4.12 Skalierbarkeit .... 50

4.13 Sicherheit 51

4.13.1 Barrierefreiheit.... 51

4.13.2 Hackerangriffe.... 52

4.14 Rails-Anwendungen in der Praxis... 54

4.15 Rails und Web 2.0.. 54

4.15.1 Einleitung.. 54

4.15.2 Das Web als Plattform nutzen 55

4.15.3 Die Nutzung kollektiver Intelligenz ... 55

4.15.4 Die Daten als nä?chstes "?Intel Inside ;g .... 56

4.15.5 Abschaffung des Software-Lebenszyklus .. 56

4.15.6 Lightweight Programming Models (LPM) ... 57

4.15.7 Software ü?ber die Grenzen einzelner Gerä?te hinaus 57

4.15.8 Benutzerfü?hrung (Rich User Experiences) 57

4. Zusammenfassung.. 58

5 Agile Softwareentwicklung .... 59

5.1 Begriffsklä?rung.. 59

5.1.1 Software-Entwicklung .. 59

5.1.2 System 59

5.1.3 Modell . 60

5.1.4 Agil. 60

5.1.5 Methode... 60

5.2 Einleitung 60

5.3 Traditionelle Softwareentwicklung .. 61

5.3.1 Wasserfall-Modell ... 63

5.3.2 V-Modell... 64

5.3.3 Zusammenfassung. 65

5.4 Das agile Manifest . 65

5.4.1 Einleitung. 65

5.4.2 Werte .. 66

5.4.3 Prinzipien. 67

5.4.4 Agile Praktiken... 70

5.4.5 Agile Methodiken .... 71

5.5 Extreme Programming (XP).. 73

5.5.1 Einleitung. 73

5.5.2 Werte .. 74

5.5.3 Grundprinzipien . 75

5.5.4 Rollen.. 76

5.5.5 Prozess.... 78

5.5.6 Praktiken.. 81

5.5.7 Anwendbarkeit ... 84

5. Zusammenfassung. 85

6 Vorgehensweise und Methodik .. 86

6.1 Einleitung und Wahl der Evaluationsmethode.... 86

6.2 Vorbereitung der Evaluation . 86

6.2.1 Einleitung. 86

6.2.2 Leichtgewichtigkeit/Einfachheit .. 86

6.2.3 Feedback. 87

6.2.4 inkrementell/iterative Entwicklung ... 88

6.2.5 Auf Ä?nderungen ausgelegter Softwareentwicklungsprozess .. 89

6.2.6 Eignung von Ruby on Rails fü?r die agile Softwareentwicklung .... 90

6. Ü?berlegungen zu Leistungsstandards . 91

7 Durchfü?hrung und Prä?sentation der Ergebnisse.... 92

7.1 Einleitung 92

7.2 Dokumentation der Untersuchungsdurchfü?hrung und Prä?sentation der Ergebnisse

7.2.1 Leichtgewichtigkeit des Frameworks.... 92

7.2.2 Gute Lesbarkeit des Programmcodes.. 93

7.2.3 Bereitstellung von Funktionalitä?ten zur Erstellung leichtgewichtiger Technologien.... 94

7.2.4 Bereitstellung von Funktionalitä?ten zur Erstellung leichtgewichtiger Dokumentationen .. 94

7.2.5 Unabhä?ngige Test-Umgebung fü?r Programmtests .. 95

7.2.6 Automatisierte Unit-Tests . 95

7.2.7 Bereitstellung von sonstigen Funktionalitä?ten zur zü?gigen Feedbackgewinnung

7.2.8 Bereitstellung von Funktionalitä?ten zur zü?gigen Prototyp-Entwicklung.. 96

7.2.9 Bereitstellung von Funktionalitä?ten zur inkrementell/iterativen Softwareentwicklung .. 97

7.2.10 Objektorientierte Softwareentwicklung.. 98

7.2.11 Zentrale Konfigurationsmö?glichkeiten des Frameworks 98

7.2.12 Bereitstellung von Funktionalitä?ten zur Erweiterbarkeit des Frameworks 99

7.2.13 Bereitstellung von Funktionalitä?ten zur einfachen Ä?nderbarkeit von Software

7. Eignung fü?r die agile Softwareentwicklung ... 100

8 Diskussion .... 101

8.1 Einleitung ... 101

8.2 Bewertung der Ergebnisse und Ableitung von Schlussfolgerungen.... 101

8.2.1 Leichtgewichtigkeit/Einfachheit 103

8.2.2 Feedback.... 103

8.2.3 Inkrementell/iterative Entwicklung . 103

8.2.4 Auf Ä?nderungen ausgelegter Softwareentwicklungsprozess 103

8. Eignung fü?r die agile Softwareentwicklung... 104

9 Zusammenfassung. 105

10 Ausblick.... 106


Weitere interessante Artikel

E-Commerce/ E-Business für deutsche Unternehmen im internationalen Handel
E-Commerce/ E-Business für deutsche Unternehmen im internationalen Handel 19,90 EUR
inkl. ges. MwSt. 19.00%
Details
 
e-commerce in modernen Medienunternehmen
e-commerce in modernen Medienunternehmen 19,90 EUR
inkl. ges. MwSt. 19.00%
Details
Content Management Systeme aus medienökonomischer Sicht
Content Management Systeme aus medienökonomischer Sicht 29,90 EUR
inkl. ges. MwSt. 19.00%
Details
 
Online Kids in Österreich
Online Kids in Österreich 29,90 EUR
inkl. ges. MwSt. 19.00%
Details
Potenziale von Web 2.0-Technologien in der B2B-Kommunikation des deutschen Fachinformationsmarkts
Potenziale von Web 2.0-Technologien in der B2B-Kommunikation des deutschen Fachinformationsmarkts 39,90 EUR
inkl. ges. MwSt. 19.00%
Details
 
Internet im Ruhestand? Nutzungsmuster und Nutzungsmotive
Internet im Ruhestand? Nutzungsmuster und Nutzungsmotive 29,90 EUR
inkl. ges. MwSt. 19.00%
Details