Modelleren van CMS based WebApplicaties



Vergelijkbare documenten
Modelleren van CMS based WebApplicaties

Software Processen. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1. Het software proces

Beveiligingsaspecten van webapplicatie ontwikkeling met PHP

Operationeelrisicomodeleren

Enterprise Architecture Compliance. Informatiekunde, Radboud Universiteit Nijmegen. Plan van Aanpak

DATAMODELLERING ARCHIMATE DATA- & APPLICATIEMODELLERING

Test rapportage Waarom eigenlijk?

Specificatie van Strategieën voor Requirements Engineering

Plan van Aanpak - Modelmetrieken. Peter Tenbult

Model Driven Software Development: Geen toekomst maar realiteit. 4 juni 2009, WTC, Amsterdam.

J2EE/.NET en de rol Applicatie Architectuur

BiZZdesign. Bouwen van sterke en wendbare organisaties met behulp van standaarden, methode, technieken en tools. Research & Development

Cursus Analyse voor Web Applicaties 1. Webdesign / Web Programmeren Analyse voor web applicaties SDM methode + Basis UML

UML. From weblog Dennis Snippert

DATAMODELLERING ARCHIMATE DATAMODELLERING

Software Test Plan. Yannick Verschueren

RAD Rapid application development. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.

UNECE/UNESCAP Workshop on. Electronic Trade Documents. Ulaanbaatar, Mongolia, October 2009

End-to-End testen: de laatste horde

DATAMODELLERING DATA MAPPING MODEL

Een Inleiding tot Software Engineering. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1

Software Test Document

Het SEESCOA project; jouw user interface, altijd en overal

Plan van Aanpak. Master Thesis. Risico modellering in het medische domein. Radboud Universiteit Nijmegen. Afstudeernummer: 101 IK.

Aliens?

Tools voor canonieke datamodellering Bert Dingemans

TFS als perfecte tool voor Scrum

Software Test Plan. PEN: Paper Exchange Network Software Engineering groep 1 (se1-1415) Academiejaar

is front-end kennis relevant voor een UX designer

Semantic Grid What it is and how it works

Scrumscrumscrumscrumscrumscrum scrumscrumscrumscrumscrumscrum scrumscrumscrumscrumscrumscrum agileagileagileagileagileagileagileagil

Curriculum Afkortingen Bachelor Informatica Propedeuse Postpropedeuse Start Vervolg Afsluiting 60,0 Gebonden keuze (8,6 EC) Afsluiting

1.1 DE OPDRACHT IN HET KORT

Posthogeschoolvorming rond Enterprise Content Management Business Process Management Service Oriented Architectures

Controle over domotica Plan van aanpak

Opinion Mining. Johan Stortelder s Onderzoeksplan masterscriptie. Mei 2006

Sparse columns in SQL server 2008

Stichting NIOC en de NIOC kennisbank


Model driven Application Delivery

Software Design Document

Curriculum Vitae Ishak Atak. Naam : Ishak Atak Roepnaam : Ishak. Woonplaats : Utrecht Geboorte datum :

Technisch Ontwerp W e b s i t e W O S I

Curriculum Afkortingen Bachelor Informatica Propedeuse Postpropedeuse Start Vervolg Afsluiting 60,0 Gebonden keuze (8,6 EC) Afsluiting

Enterprisearchitectuur

Informatiebeheer: een nieuw tijdperk

NAF Insight: ArchiMate en domeintalen 1 November 2012

Volwassenheid en effectiviteit van enterprise

DFI Models & Processes Herkansingsklas 1 (V207) Nienke Griffioen [REDESIGN RTL GEMIST.NL DFI OPDRACHT]

Het regelen van ondersteuning op open source software voor overheidsorganisaties. Afstudeerpresentatie Daniël Vijge 12 november 2007

Opdrachtformulering (pagina 3 van 7)

AUTOMATE WITH BIZAGI BPMS XPRESS

De praktische kant van de Cloud De Cloud en modellen maken pay per use mogelijk

Master Software Engineering. Inhoud, begeleiding, tentamen dr. Anda Counotte Docent en mentor

VAN USE CASE NAAR TEST CASE ORDINA SMART COMPETENCE CENTER

XAMPP Web Development omgeving opzetten onder Windows.

Socio-technisch systemen. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 2 Slide 1

Titel, samenvatting en biografie

DATAMODELLERING BEGRIPPENBOOM

Technologie en Interactie 3.2: software architectuur

Program overview. Year 2013/2014 Electrical Engineering, Mathematics and Computer Science

Model Driven Development. Kosten, baten, organisatie

Dit voorbeeldproject beschrijft het gebruik van web services (open standaarden) voor de ontsluiting van kernregistraties bij de gemeente Den Haag.

onderzoek ontwerp realisatie implementatie

DATAMODELLERING SIPOC

Canonieke Data Modellering op basis van ArchiMate. Canonieke Data Modellering op basis van Archimate Bert Dingemans

Generiek framework voor administratieve toepassingen in een webgeörienteerde omgeving

Use-Case 2.0. Requirements Kenniscentrum 15 November Eric Lopes Cardozo

Genereren van een webapplicatie op basis van DLA

Software Factories. Toepassing van Domain Specific Languages. achtergrond

Modulebeschrijving voor MOD1

DATAMODELLERING DATA FLOW DIAGRAM

ISO/IEC in een veranderende IT wereld

Posthogeschoolvorming rond Enterprise Content Management Business Process Management Service Oriented Architectures

Unified Modeling Language

Beveiligingsaspecten van webapplicatie ontwikkeling

Plan van Aanpak. Auteur: Roel Konieczny Docent: Stijn Hoppenbrouwers Plaats, datum: Nijmegen, 7 mei 2004 Versie: 1.0

Generiek framework voor administratieve toepassingen in een webgeörienteerde omgeving

Inhoud: Inleiding tot Taak Omschrijving van vacatures 2 Matrix van benodigde 5 Bronvermeldingen 7

Informatiebeheer: een nieuw tijdperk

Onderwijssamenwerking in Business Process Management

ArchiMate voor kennismodellen van NORA en haar dochters. Marc Lankhorst 16 oktober 2013

Creëer je eigen DSL tools met Eclipse De Android Challenge

Methodiek. Versie: 16/05/ :42:35

Bachelor in de Toegepaste informatica

Business Scenario. Voorbeeld Archimate Risico Extensie. versie 0.1. Bert Dingemans

EEN SIMULATIESTUDIE VAN DE SCHEDULE CONTROL INDEX

DATAMODELLERING BASIS UML KLASSEMODEL

Voorlopig onderzoeksplan Bachelorscriptie CleanDoc-

TENCompetence: infrastructuur

Effectief testen in complexe omgeving

B.Sc. Informatica Module 4: Data & Informatie

TENCompetence: naar een integraal persoonlijk competentiemanagement voor een leven lang leren. Jocelyn Manderveld SURF Foundation

ONDERZOEKSPLAN Conceptualisatie in een requirements development proces

Les F-02 UML. 2013, David Lans

Die inputs worden op een gecontroleerde manier aangeboden door (test) stubs. De test driver zorgt voor de uiteindelijke uitvoering ervan.

Transcriptie:

Modelleren van CMS based WebApplicaties Master Thesis, Plan van Aanpak Versie: 1.0 20 maart 2008 M.J.B. (Thijs) Kupers Radboud Universiteit Nijmegen Master Computer Science

Inleiding Dit document beschrijft mijn plan van aanpak in het kader van mijn afstudeeronderzoek binnen de master-opleiding informatica aan de Radboud Universiteit Nijmegen. Mijn onderzoek vindt plaats binnen <GX> in Nijmegen. GX is een web-development bedrijf welke zowel een standaard product als maatwerk biedt. Het standaard product omhelst een Webbased Content Management System, GX WebManager, waarmee op een eenvoudige manier webapplicaties beheerd kunnen worden. Daarnaast verzorgen ze maatwerk om domein specifieke oplossingen te kunnen bieden. Probleemstelling In het verleden is er veel onderzoek gedaan naar ontwerp methodieken voor webapplicaties. Veel van deze methodes zijn afgeleid van al bestaande methodes en technieken. Echter, er is nog weinig onderzocht op het gebied van webengineering waarbij er gebruikt wordt gemaakt van een al bestaand Web-based Content Management System (WCMS) Het meeste onderzoek gaat uit van web engineering van scratch (Weerd, et al. 2006). GX WebEngineering Method (WEM) geeft een specificatie van het engineeringtraject van een CMS gebaseerde webapplicatie (Souer, et al. 2007). Hierbij wordt onderscheid gemaakt tussen een standaard traject en een complex traject. Standaard projecten zijn hoofdzakelijk gebaseerd op standaard functionaliteiten die in het CMS aanwezig zijn. Complexe projecten bevatten zowel nieuwe als een hoop aanpassingen op de standaard functionaliteiten. Het projectmatige gedeelte van WEM is grotendeels beschreven. Uit case studies, blijkt dat de vertaalslag van functionaliteit naar standaard componenten en hun configuratie nog niet goed is uitgewerkt (Weerd, et al. 2006), (Souer, et al. 2007). De stap tussen requirements en Use Cases enerzijds en de geconfigureerde componenten anderzijds is nog te groot. Dit geldt zowel voor de ontwikkelaars als voor de klant. 1 G X

Onderzoeksvraag Na aanleiding van bovengeschetste probleemstelling, zou de volgende onderzoeksvraag gedefinieerd kunnen worden: Hoe zou een modelleertaal eruit moeten zien waarmee je op basis van requirements en use cases modules binnen een CMS kan specificeren? Door een taal te creëren waarin op een abstract niveau de componenten en met name hun werking (inputs, validatie, routering, afhandelingen, etc.) kan worden gespecificeerd, wordt dit gat gedicht. Deze moet wel aansluiten op de requirements en Use Cases zodat de benodigde informatie hieruit afgeleid kan worden. Doordat de specificatie van de modelleertaal formeel vast ligt kunnen aan de hand van gemaakte modellen gedeelten van de WCMS gegenereerd worden (code generation/ automatische componenten selectie en configuratie/ transformatie). De onderzoeksvraag kan als volgt worden opgebroken in deelvragen: Welke eigenschappen moet de modelleertaal hebben? o Wie zijn de gebruikers? Wat zijn hun doelen? o Wat (welke informatie en functionaliteiten van een component) moet er gemodelleerd kunnen worden? Op welke manier is deze beschikbaar / afleidbaar uit requirements en use cases? Vindt deze stap (van requirements en use cases naar geconfigureerde componenten) ook plaats in de ontwikkeling van niet-cms-applicaties? o Geeft deze stap problemen? o Hoe wordt het daar opgelost? Literatuurstudie: Hoe is een modelleertaal gedefinieerd? bekijken van bestaande modelleertalen en hun eigenschappen en deze vervolgens vergelijken met de gewenste modelleertaal o Welke bestaande modelleertalen doen iets gelijksoortigs? o Welke aspecten zijn bruikbaar? Hoe kan er voor worden gezorgd dat een modelleertaal flexibel en uitbreidbaar is? (bv voor nieuwe componenten) 2 G X

Aanverwante Literatuur Een literatuurstudie naar modelleertechnieken in aanverwante disciplines, geeft een overzicht van bestaande methodes. Hieruit kunnen bepaalde aspecten worden afgeleid, die bruikbaar zijn in de te ontwikkelen methode. Zo zijn er verschillende web-modellerings technieken. Hoewel deze uitgaan van het bouwen van een webapplicatie van scratch, kunnen hier toch bruikbare concepten in zitten. Object Oriented Hypermedia Design Model (OOHDM) is een methode waarin een webapplicatie wordt ontworpen met verschillende modellen (Schwabe and Rossi 1998). Dit werd later uitgebreid met een definitie fase voor requirements door middel van User Interaction Diagrams (UIDs) (Vilain, Schwabe and Sieckenius de Souza 2000). De Web Modeling Language (WebML) is een notatie voor het specificeren van websites op conceptueel niveau. Het bestaat uit vier verschillende modellen (Ceri, Fraternali and Bongio 2000). UML-based Web Engineering (UWE) beschrijft een op UML gebaseerde methode voor de ontwikkeling van web applicaties (Koch and Kraus 2002). Een conceptueel modelleer principe gebaseerd op OO wordt beschreven door OOWS (Object Oriented Web Solution) (Pastor, Fons and Pelechano 2003). De architectuur van webapplicaties kan worden gespecificeerd met Web Software Architectuur (WebSA) (Meliá, Gómez and Koch 2005). Daarnaast kan er gekeken worden naar Enterprise Resource Planning (ERP)-systemen. Met een ERP-systeem wordt getracht om alle processen en gegevens binnen een organisatie in één systeem onder te brengen. ERP software is uiterst configureerbaar om aan de verschillende behoeften van organisaties te voldoen. Hierbij worden verschillende componenten op maat gesneden voor de specifieke requirements van een organisatie (Klaus, Rosemann and Gable 2000). Zowel bij de implementatie van een CMS als bij een ERP-systeem, moeten er dus bestaande componenten geconfigureerd worden. ERP-systemen, en het daarbij horende implementatie traject, zijn echter veel uitgebreider dan een CMS systeem; het uitgebreide ontwikkeltraject is niet nodig, maar er kunnen wel interessante concepten in zitten. Het Enterprise Object Model (EOM), beschrijft een methode voor het verzamelen van requirements en deze te vertalen in configuratie settings voor ERP software (Arinze and Anandarajan 2003). De Enterprise Process Modeling Language (EPML) is een proces modelleer taal die gebaseerd is op bestaande procesmodelleertechnieken. Het grafische model wordt via XML geformaliseerd door middel van petri-nets (Dalal, et al. 2004). Dynamic Enterprise Modeling (DEM) werd geïntroduceerd door Baan. Met vier verschillende modelen kunnen gebruikers de organisatie en de proces-flow modeleren. Daarnaast wordt door middel van toolsupport de ontwikkeltijd verkort (Es and Post 1996). 3 G X

Planning De planning geeft een tijdschema weer waarin ik probeer antwoord te geven op de verschillende deelvragen. Weeknr: 12 13 14 15 16 17 17-mrt-08 24-mrt-08 31-mrt-08 7-apr-08 14-apr-08 21-apr-08 Uitzoeken wat er gemodelleerd moet worden Abstraheren tot concepten en domeinmodel Uitzoeken welke info beschikbaar is in requirements/use cases Gebruikersanalyse Bestaande modelleertalen mappen met concepten Uitzoeken hoe een modelleertaal gedefinieerd is Uitzoeken hoe een modelleertaal uitbreidbaar te maken is Scriptie schrijven Weeknr: 18 1 19 20 21 22 23 24 25 26 27 28-apr-08 5-mei-08 12-mei-08 19-mei-08 26-mei-08 2-jun-08 9-jun-08 16-jun-08 23-jun-08 30-jun-08 Definitie wat wordt er gemodelleerd Definitie modelleertaal (grafisch + formeel) Prototypetool maken Testen met gebruikers Scriptie schrijven Door het proces op te delen in korte iteraties, blijft het geheel overzichtelijk en is de voortgang goed te bewaken. Bij eventuele vertraging kan de planning makkelijk worden bijgesteld. Hieronder volgt een verklaring van de verschillende onderdelen. Uitzoeken wat er gemodelleerd moet worden Hierbij wordt precies uitgezocht welke dingen er binnen het CMS van toepassing zijn binnen het onderzoek. Zo heb je bij formulieren te maken met invoervelden, flow en stappen, handlers, routers, validators, personalisatie, rapportages, etc. Deliverable: Lijst en beschrijvingen van alle zaken die van belang zijn. 1 Week 18 telt vanwege Koninginnedag en Hemelvaart maar twee werkdagen 4 G X

Abstraheren tot concepten en domeinmodel Hierbij wordt een domeinmodel samengesteld waarin de verbanden tussen alle zaken duidelijk wordt. Doordat zaken worden geabstraheerd tot concepten, valt dit beter te vergelijken met Deliverable: Domeinmodel en beschrijving objecten. Uitzoeken welke informatie beschikbaar is in requirements/ use cases De requirements en use cases vormen de input voor de modelleertool. Omdat deze hierop aan moet sluiten is het belangrijk te weten tot op welk niveau er informatie beschikbaar is. Deliverable: Lijst van beschikbare informatie. Gebruikersanalyse Het zijn uiteindelijk de gebruikers die met de tool moeten werken. Het is belangrijk dat de tool aansluit bij de belevingswereld en het mental model van de gebruiker. Deze worden beschreven aan de hand van de Goal-Directed Design (GDD) methode (Cooper, Reimann en Cronin 2007). Deliverable: Een lijst van personas, goals en scenario s Bestaande modelleertalen mappen met concepten Hierbij worden verschillende eigenschappen van bestaande modelleertalen vergeleken met de benodigde eigenschappen. Deliverable: Matrix welke weergeeft in hoeverre de gewenste eigenschappen met bestaande modelleertalen overeenkomen. Uitzoeken hoe een modelleertaal gedefinieerd is Wat is een modelleertaal eigenlijk? Hoe wordt deze geformaliseerd? Hoe past deze definitie in XML, zodat er communicatie met een CMS mogelijk is. Deliverable: Beschrijving hoe een modelleertaal is opgebouwd. Uitzoeken hoe een modelleertaal uitbreidbaar te maken is Het is belangrijk dat de te vormen modelleertaal uitbreidbaar is. Hierbij wordt uitgezocht hoe je daar rekening mee kan houden. Deliverable: Beschrijving hoe een modelleertaal uitbreidbaar is. Definitie wat wordt er gemodelleerd Hier wordt bepaald wat er uiteindelijk gemodelleerd gaat worden. Welke concepten? Hoe verhouden de concepten zich tot elkaar? Op welk abstractieniveau (ook afhankelijk van de gebruikersanalyse)? Deliverable: Lijst van te modelleren concepten. Definitie modelleertaal (grafisch + formeel) Hierbij wordt de eigenlijke modelleertaal gedefinieerd. Zowel de grafische opbouw, als de formele definitie, als de mapping naar XML. Deliverable: Definitie van de modelleertaal. 5 G X

Prototypetool maken Hierbij wordt een prototype-implementatie van de modelleertaal gemaakt in een metamodelleertool (Xiao, et al. 2007). Ook de mapping met het CMS wordt gemaakt. Deliverable: Een prototype modelleertool voor de gemaakte modelleertaal. Testen met gebruikers Hierbij wordt getest of de modelleertaal aansluit bij de behoeften van de gebruikers. Eventueel kunnen er nog dingen worden aangepast, of een lijst van aanbevelingen worden gemaakt. De tool wordt getest aan de hand van een aantal cases die overeenkomen met de scenario s van de gebruikers. Deliverable: Testplan en beschrijving van de testresultaten. Scriptie schrijven Gedurende het hele traject worden vorderingen, ideeën en conclusies bijgehouden in een werkdocument wat uiteindelijk de scriptie moet vormen. Deliverable: Afstudeerscriptie. 6 G X

Literatuurlijst Arinze, B., and M. Anandarajan. "A framework for using OO mapping methods to rapidly configure ERP systems." Communications of the ACM 46, no. 2 (2003): 61-65. Ceri, S., P. Fraternali, and A. Bongio. "Web Modeling Language (WebML): a modeling language for designing Web sites." Proceedings of the 9th international World Wide Web Conference on Computer Networks : the international Journal of Computer and Telecommunications Networking, 2000: 137-157. Cooper, A., R. Reimann, and D. Cronin. About Face 3: The Essentials of Interaction Design. New York, NY, USA: Whiley publishing inc., 2007. Dalal, N. P., M. Kamath, W. J. Kolarik, and E. Sivaraman. "Toward an integrated framework for modeling enterprise processes." Communications of the ACM 47, no. 3 (2004): 83-87. Es, R.M. van, and H.A. Post. Dynamic enterprise modeling : a paradigm shift in software implementation. Dordrecht: Kluwer, 1996. Klaus, H., M. Rosemann, and G.G. Gable. "What is ERP?" Information Systems Frontiers 2, no. 2 (2000): 141-162. Koch, N., and A. Kraus. "The expressive Power of UML-based Web Engineering." Proc. of IWWOST02, CYTED, 2002: 105-119. Meliá, S., J. Gómez, and N. Koch. "Improving Web Design Methods with Architecture Modeling." Lecture Notes in Computer Science 3590 (2005): 53-64. Pastor, O., J. Fons, and V. Pelechano. "OOWS: A Method to Develop Web Applications from Web-Oriented Conceptual Models." International Workshop on Web Oriented Software Technology (IWWOST), 2003: 65-70. Schwabe, D., and G. Rossi. Developing hypermedia applications using OOHDM. Paper, Pittsburgh, USA: Workshop on Hypermedia Development, 1998. Souer, J., I. van de Weerd, J. Versendaal, and J. Brinkkemper. "Situational requirements engineering for the development of Content Management System-based web applications." International Journal of Web Engineering and Technology 3, no. 4 (2007): 420-440. Vilain, P., D. Schwabe, and C. Sieckenius de Souza. "A Diagrammatic Tool for Representing User Interaction in UML." Lecture Notes in Computer Science 1939 (2000): 133-147. Weerd, I. van de, S. Brinkkemper, J. Souer, and J. Versendaal. "A Situational Implementation Method for Web-based Content Management System-applications: Method Engineering and Validation in Practice." Software Process Improvement and Practice 11 (2006): 521-538. 7 G X

Xiao, H., M. Zhiyi, S. Weizhong, and L. Ge. "A metamodel for the notation of graphical modeling languages." compsac 1 (2007): 219-224. Meta-informatie Studentgegevens Thijs Kupers (0521450) mjbkupers@student.ru.nl Contactgegevens GX GX creative online development Wijchenseweg 111 6538 SW Nijmegen 024-38 88 261 info@gx.nl Supervisors Jurriaan Souer (GX) jurriaans@gx.nl Patrick van Bommel (Radboud Universiteit) p.vanbommel@cs.ru.nl 8 G X