Example: tourism industry

Evaluation of web application frameworks

Chalmers University of Technology University of Gothenburg Department of Computer Science and Engineering G teborg, Sweden, June 2010 Evaluation of web application frameworks Evaluation of web application frameworks with regards to rapid development. Master of Science Thesis in Software Engineering and Technology MARTIN BJ REMO PREDRAG TRNINI The Author grants to Chalmers University of Technology and University of Gothenburg the non-exclusive right to publish the Work electronically and in a non-commercial purpose make it accessible on the Internet. The Author warrants that he/she is the author to the Work, and warrants that the Work does not contain text, pictures or other material that violates copyright law. The Author shall, when transferring the rights of the Work to a third party (for example a publisher or a company), acknowledge the third party about this agreement.

Chalmers University of Technology University of Gothenburg Department of Computer Science and Engineering Göteborg, Sweden, June 2010 Evaluation of web application frameworks

Tags:

  Applications, Evaluation, Framework, Evaluation of web application frameworks

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Transcription of Evaluation of web application frameworks

1 Chalmers University of Technology University of Gothenburg Department of Computer Science and Engineering G teborg, Sweden, June 2010 Evaluation of web application frameworks Evaluation of web application frameworks with regards to rapid development. Master of Science Thesis in Software Engineering and Technology MARTIN BJ REMO PREDRAG TRNINI The Author grants to Chalmers University of Technology and University of Gothenburg the non-exclusive right to publish the Work electronically and in a non-commercial purpose make it accessible on the Internet. The Author warrants that he/she is the author to the Work, and warrants that the Work does not contain text, pictures or other material that violates copyright law. The Author shall, when transferring the rights of the Work to a third party (for example a publisher or a company), acknowledge the third party about this agreement.

2 If the Author has signed a copyright agreement with a third party regarding the Work, the Author warrants hereby that he/she has obtained any necessary permission from this third party to let Chalmers University of Technology and University of Gothenburg store the Work electronically and make it accessible on the Internet. Evaluation of web application frameworks Evaluation of web applications frameworks with regards to rapid development MARTIN BJ REMO PREDRAG TRNINI MARTIN BJ REMO, June 2010. PREDRAG TRNINI , June 2010. Examiner: SVEN-ARNE ANDREASSON Chalmers University of Technology University of Gothenburg Department of Computer Science and Engineering SE-412 96 G teborg Sweden Telephone + 46 (0)31-772 1000 [Cover: Logos of frameworks evaluated in this report, from upper left to right; Ruby on Rails, Wicket, CakePHP, Stripes, Grails, Spring Roo.]

3 ] Department of Computer Science and Engineering G teborg, Sweden July 2010 Abstract This report focuses on evaluating several web application frameworks for use in rapid development. As there is a need for the possibility to deploy new applications in a short period of time there is also a need for a framework , which facilitates those demands. Creating an application from scratch would most likely be too time consuming and not very rapid. Thus the report will look closer at some of the application frameworks (CakePHP, Grails, Ruby on Rails, Stripes, Spring Roo and Wicket) to see what they have to offer and how they do it. The frameworks are evaluated based on six criteria (documentation and learning, convention over configuration, integrated development environment, internationalization (localization), user data input validation and testing) and one promising is chosen to be used to implement a web application .

4 The conclusions of this Evaluation are that there is no superior framework and one should not learn a new programming language just for using a recommended web framework . And also, one should choose framework wisely based on the size of one s application and the scope of the application . Sammanfattning Denna rapport fokuserar p utv rdering av ett antal webbramverk f r anv ndning i snabb utveckling. Eftersom det finns ett behov av att kunna distribuera nya applikationer p kort tid finns det ocks ett behov av ramverk som underl ttar detta krav. Skapa en webbapplikation fr n b rjan skulle sannolikt bli alltf r tidskr vande och inte s rskilt snabb. S ledes kommer rapporten att se n rmare p n gra av webbramverken som finns (CakePHP, Grails, Ruby on Rails, till Stripes, Spring Roo och Wicket) och se vad de har att erbjuda och hur de l ser vissa tidskr vande uppgifter det.

5 Ramverken bed ms utifr n sex kriterier (dokumentation och l rande, konvent ver konfigurationen, integrerad utvecklingsmilj , internationalisering (lokalisering), kontroll och validering av indata fr n anv ndare) och ett lovande ramverk v ljs ut f r att anv ndas f r att skapa en webbapplikation. Slutsatserna i denna utv rdering r att det inte finns ett verl gset ramverk och man b r inte l ra sig ett nytt programmeringsspr k bara f r att anv nda en rekommenderat webbramverk. Dessutom b r man v lja webbramverk noga baserat p storleken av ens webbapplikation och omfattningen av webbapplikationen. Acknowledgements This master s thesis report has been written as the final part of the Master s program Software Engineering and Technology at Chalmers University of Technology, Sweden 2010.

6 The subject was chosen in cooperation with Logica in Gothenburg, where the thesis also has been performed. The writers of this report would like to thank their supervisor at Logica, Jesper Forslund, and at Chalmers, Sven-Arne Andreasson, for their support during this project. Martin Bj remo Predrag Trnini Gothenburg, Sweden June 2010 Table of Contents 1. Introduction .. 1 About Logica .. 1 2. Background .. 2 What is a web framework ? .. 2 framework vs. libraries .. 3 Degrees of activeness web frameworks .. 4 Advantages of using a framework .. 4 Disadvantage of using a framework .. 5 Who should use a framework ? .. 5 Rapid development .. 6 3. Problem .. 7 Purpose .. 7 Scope .. 7 4. Method .. 8 Investigation.

7 8 Evaluation .. 8 Implementation .. 9 5. Evaluation Criteria .. 10 Documentation and Learning .. 10 Convention over Configuration .. 10 Integrated Development Environment .. 11 Internationalization (Localization) .. 11 Validation .. 11 Testing .. 11 Additional Criteria .. 11 6. The frameworks .. 13 CakePHP .. 13 Grails .. 13 Ruby on Rails .. 13 Stripes .. 13 Spring Roo .. 13 Wicket .. 14 Other frameworks .. 14 7. Results .. 15 Documentation and Learning .. 15 CakePHP .. 15 Grails .. 15 Ruby on Rails .. 15 Spring Roo .. 15 Stripes .. 16 Wicket .. 16 Convention over Configuration .. 16 CakePHP .. 16 Grails .. 16 Ruby on Rails .. 17 Spring Roo .. 17 Stripes .. 17 Wicket .. 17 Integrated Development Environment .. 17 CakePHP.

8 18 Grails .. 18 Ruby on Rails .. 19 Spring Roo .. 19 Stripes .. 19 Wicket .. 19 Validation .. 20 CakePHP .. 20 Grails .. 20 Ruby on Rails .. 21 Spring Roo .. 22 Stripes .. 22 Wicket .. 23 Internationalization (Localization) .. 23 CakePHP .. 24 Grails .. 24 Ruby on Rails .. 24 Spring Roo .. 25 Stripes .. 25 Wicket .. 25 Testing .. 25 CakePHP .. 25 Grails .. 26 Ruby on Rails .. 26 Spring Roo .. 26 Stripes .. 26 Wicket .. 26 8. Lessons Learned .. 27 General .. 27 Grails .. 27 9. Conclusion .. 28 10. References .. 29 APPENDIX I .. 1 Pomodoro Technique .. 1 Design .. 1 Domain Model .. 2 Features .. 2 Glossary API application Programming Interface ASP Active Server Pages CGI Common Gateway Interface CRUD Create Read Update Delete I18n - Internationalization IDE Integrated Development Environment Gem Ruby package manager GUI Graphical User Interface PHP PHP: Hypertext Preprocessor MVC Model-View-Control WYSIWYG What You See Is What You Get 1 1.

9 Introduction Currently there are a lot of different web frameworks available, ranging over several different programming languages, although they are most commonly built on PHP and Java. They all advertise themselves as the best framework with a lot of possibilities, but when it comes down to practice this might not be the case. This is why there is a need to evaluate these frameworks to find out which ones actually support the criteria one would want from an application and development environment. As the size of the frameworks can vary a lot the focus of the Evaluation are medium to large sized frameworks , which does not include fully fledged enterprise frameworks . About Logica Logica is a business and technology service company, employing 39 000 people across 36 countries.

10 With 5 500 employees in Sweden and about 500 Goteborg Logica is one of the major IT-companies in Sweden. Logica deliver business consulting, systems integration and outsourcing across all industries and business functions. Core values for Logica is open, innovative and committed to create effective, sustainable business ecosystems. 2 2. Background The World Wide Web (often known as the web) was created in 1990 (1) and in the beginning the web was very static. The user could not interact much with the content, and to update a piece of text (or something else as well) in a published material on the web, the author had to edit the page locally and upload it to the server. To get rid of this manual work the Common Gateway Interface (CGI) standard was created for interfacing external applications with web servers.


Related search queries