im Studiengang Medieninformatik - HTW fritzsch/SF/Diplomarbeit_Helga... · 3.3.1 MVC­Architektur ...…

  • View
    212

  • Download
    0

Embed Size (px)

Transcript

HochschulefrTechnikundWirtschaftDresden(FH)FachbereichInformatik/Mathematik

Diplomarbeit

imStudiengangMedieninformatik

Thema: AnalyseundVergleichvonWebFrameworksimBereichderagilenWebentwicklunganhandeinerBeispielanwendung

Eingereichtvon: HelgaNickel

Eingereichtam: 08.03.2010

Betreuer: Prof.Dr.Ing.ThomasWiedemann,HTWDresden

http://www.hausarbeiten.de/faecher/vorschau/112895.htmlhttp://www.hausarbeiten.de/faecher/vorschau/112895.htmlhttp://www.hausarbeiten.de/faecher/vorschau/112895.htmlhttp://www.hausarbeiten.de/faecher/vorschau/112895.htmlhttp://www.hausarbeiten.de/faecher/vorschau/112895.htmlhttp://www.hausarbeiten.de/faecher/vorschau/112895.htmlhttp://www.hausarbeiten.de/faecher/vorschau/112895.htmlhttp://www.hausarbeiten.de/faecher/vorschau/112895.htmlhttp://www.hausarbeiten.de/faecher/vorschau/112895.html

Inhaltsverzeichnis

Abbildungsverzeichnis.............................................................................................................IVTabellenverzeichnis...................................................................................................................VQuellcode.................................................................................................................................VIAbkrzungsverzeichnis.........................................................................................................VIII

1Einleitung................................................................................................................................11.1Motivation........................................................................................................................11.2Aufgabenstellung.............................................................................................................11.3AufbauderArbeit............................................................................................................2

2KlassischeundagileMethodenderSoftwareentwicklung......................................................32.1AktuellerStandderSoftwareentwicklung.......................................................................32.2KlassischeMethodenderSoftwareentwicklung..............................................................42.3AgileMethodenderSoftwareentwicklung......................................................................6

2.3.1DasagileManifest....................................................................................................62.3.2Prinzipien.................................................................................................................72.3.3MethodenundProzesse...........................................................................................8

2.4KlassischeversusagileMethoden.................................................................................103AgileWebentwicklung..........................................................................................................12

3.1GrundlagenderWebentwicklung..................................................................................123.2AgileWebApplikationFrameworks.............................................................................133.3PrinzipienagilerWebentwicklung.................................................................................14

3.3.1MVCArchitektur...................................................................................................143.3.2KonventionberKonfiguration.............................................................................153.3.3DRYPrinzip..........................................................................................................163.3.4ObjektrelationalesundURLMapping...................................................................173.3.5CreateReadUpdateDeletePrinzip......................................................................173.3.6KISSPrinzip..........................................................................................................183.3.7AjaxUntersttzung................................................................................................183.3.8TestgetriebeneEntwicklung...................................................................................18

3.4AuswahlderWebFrameworks......................................................................................194EingesetzteTechnologien......................................................................................................22

4.1RubyonRails.................................................................................................................224.1.1EinfhrunginRubyonRails..................................................................................224.1.2MVCArchitekturmitRails....................................................................................234.1.3ActiveRecord..........................................................................................................244.1.4ActionController.....................................................................................................254.1.5URLKonfiguration................................................................................................284.1.6ActionView.............................................................................................................28

I

4.2Django............................................................................................................................314.2.1EinfhrunginDjango.............................................................................................314.2.2MTVArchitekturmitDjango................................................................................324.2.3Modell....................................................................................................................334.2.4DieURLKonfiguration.........................................................................................344.2.5AutomatischeAdministrationsoberflche..............................................................344.2.6View.......................................................................................................................354.2.7Template.................................................................................................................36

4.3Grails.............................................................................................................................384.3.1EinfhrunginGrails..............................................................................................384.3.2MVCArchitekturmitGrails..................................................................................394.3.3Modell....................................................................................................................404.3.4Controller...............................................................................................................424.3.5View.......................................................................................................................434.3.6DieURLKonfiguration.........................................................................................44

5DefinitionderEvaluierungskriterien....................................................................................456EntwurfundImplementierung..............................................................................................48

6.1AnforderungenandieBeispielanwendung....................................................................486.2ImplementierungmitRubyonRails.............................................................................52

6.2.1AnwendungsrahmenundVerzeichnisstruktur........................................................526.2.2Modelleanlegen.....................................................................................................536.2.3ImplementierungdesUserInterfaces....................................................................546.2.4SuchfunktionmitAjax...........................................................................................576.2.5RailsAuthentifizierung.........................................................................................59

6.3RealisierungmitDjango................................................................................................606.3.1AnwendungsrahmenundVerzeichnisstruktur........................................................606.3.2Modelleanlegen.....................................................................................................616.3.3AnwendungderAdministrationsoberflche..........................................................626.3.4ImplementierungdesUserInterfaces....................................................................636.3.5SuchfunktionmitAjax...........................................................................................65

6.4RealisierungmitGrails..................................................................................................676.4.1AnwendungsrahmenundVerzeichnisstruktur........................................................676.4.2DomainModelle....................................................................................................696.4.3ImplementierungdesUserInterfaces....................................................................706.4.4SuchfunktionmitAjax...........................................................................................726.4.5GrailsAuthentifizierung........................................................................................74

7Evaluierung...........................................................................................................................767.1FunktionaleKriterien............................................................................................