[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/2445196.2445350acmconferencesArticle/Chapter ViewAbstractPublication PagessigcseConference Proceedingsconference-collections
research-article

Analyzing PHP frameworks for use in a project-based software engineering course

Published: 06 March 2013 Publication History

Abstract

Given the popularity of PHP frameworks used in developing web-based applications, a comparative study is conducted to determine which framework is best suited for incorporation into the curriculum of an undergraduate software engineering course that uses project-based learning. The top six PHP frameworks (Zend, Yii, CakePHP, CodeIgniter, PRADO, and Symphony) were initially considered and then narrowed down to two (CakePHP and CodeIgniter) based on their alignment with common functionality in previous class projects, framework complexity for those new to frameworks (learning curve), and developer friendliness (availability of documentation and online resources). An in-depth comparative study is conducted by developing a functionally-equivalent web application using each of the two frameworks as well as plain PHP (no framework). This work was motivated by the difficulties that were encountered in an evolving, content-rich software engineering course and discusses the educational changes that were made to align student learning with sound software engineering principles and current software development practices used in the computing industry.

References

[1]
N. S. G. Piccinini, "Cooperative Project-based Learning in a Web-based Software Engineering Course," Educational Technology & Society, vol. 9, no. 4, pp. 54--62, 2006.
[2]
E. L. C. Stiller, Project-Based Software Engineering: An Object-Oriented Approach, Addison Wesley, 2005.
[3]
Project management software, online collaboration: Basecamp," {Online}. Available: http://basecamp.com/. {Accessed 5 September 2012}.
[4]
GitHub - Social Coding," GitHub, Inc., {Online}. Available: https://github.com/. {Accessed 5 September 2012}.
[5]
PHP:Hypertext Preprocessor," {Online}. Available: http://www.php.net/. {Accessed 5 September 2012}.
[6]
Framework Technology Web Usage Statistics," {Online}. Available: http://trends.builtwith.com/framework. {Accessed 4 September 2012}.
[7]
I. a. K. D. Vosloo, "Server-centric Web frameworks: An overview," ACM Computing Surveys (CSUR), vol. 40, no. 2, 2008.
[8]
Top 5 PHP Frameworks 2012," {Online}. Available: http://www.phpzag.com/top-5-php-frameworks-2012/. {Accessed 4 September 2012}.
[9]
Zend Framework," {Online}. Available: http://framework.zend.com/. {Accessed 5 September 2012}.
[10]
Yii Framework: Best for Web 2.0 Development," {Online}. Available: http://www.yiiframework.com/. {Accessed 5 September 2012}.
[11]
CodeIgniter - Open source PHP web application framework," {Online}. Available: http://codeigniter.com/. {Accessed 5 September 2012}.
[12]
CakePHP: the rapid development php framework. Pages," {Online}. Available: http://cakephp.org/. {Accessed 5 September 2012}.
[13]
Eclipse.org - Indigo Simultaneous Release," {Online}. Available: http://www.eclipse.org/indigo/. {Accessed 4 September 2012}.
[14]
CLOC -- Count Lines of Code," {Online}. Available: http://cloc.sourceforge.net/. {Accessed 4 September 2012}.
[15]
Xdebug - Debugger and Profiler Tool for PHP," {Online}. Available: http://xdebug.org/. {Accessed 4 September 2012}.
[16]
WinCacheGrind | Free Development software downloads at SourceForge.net," {Online}. Available: http://sourceforge.net/projects/wincachegrind/. {Accessed 4 September 2012}.
[17]
Nessus 5 | Tenable Network Security," Tenable Network Security, {Online}. Available: http://www.tenable.com/products/nessus. {Accessed 3 September 2012}.
[18]
sqlmap | Free Development software downloads at SourceForge.net," {Online}. Available: http://sourceforge.net/projects/sqlmap/. {Accessed 30 August 2012}.
[19]
M. Grady, Qualitative and Action Research: A Practitioner Handbook, Bloomington: Phi Delta Kappa Edcuational Foundation, 1998.
[20]
G. A. Bowen, "Document Analysis as a Qualitative Research Method," Qualitative Research Journal, vol. 9, no. 2, pp. 27--40, 2009.
[21]
Xdebug - Debugger and Profiler Tool for PHP," {Online}. Available: http://xdebug.org/. {Accessed 4 September 2012}.

Cited By

View all
  • (2023)Knowledge Transfer in Software Development Teams—Systematic MappingIEEE Revista Iberoamericana de Tecnologias del Aprendizaje10.1109/RITA.2023.325084318:2(152-161)Online publication date: May-2023
  • (2022)Improving Web Application Development Course2022 Fifth National Conference of Saudi Computers Colleges (NCCC)10.1109/NCCC57165.2022.10067861(165-171)Online publication date: 17-Dec-2022
  • (2022)Using Web Frameworks in Server Side Programming CoursesJournal of Computer Information Systems10.1080/08874417.2022.211137863:4(866-876)Online publication date: 22-Aug-2022
  • Show More Cited By

Index Terms

  1. Analyzing PHP frameworks for use in a project-based software engineering course

    Reviews

    Andrew Brooks

    There are many PHP frameworks that can be used to develop web applications. Which one is most suitable for an undergraduate software engineering course__?__ To answer this question, a quantitative and qualitative comparison was undertaken of plain PHP, the CodeIgniter framework, and the CakePHP framework. Complex frameworks with high learning curves did not pass the selection process, nor did those frameworks least mentioned on job search sites. To facilitate the quantitative comparison, a graduate student implemented the same web application using plain PHP and the two selected frameworks. Table 1 shows that fewer lines of code had to be written using CakePHP, while Table 2 shows that the plain PHP web application had much lower execution times for representative tasks. CakePHP was found to be the best choice in terms of security: the web application built with it survived the attempted SQL injection and cross-site scripting attacks. The qualitative analysis, however, revealed that CakePHP did not score as well on several measures, such as learning curve and developer friendliness. CodeIgniter was deemed best for student use by the investigators. Experienced qualitative researchers might find themselves skeptical of the results of the qualitative analysis reported in Table 3. Usually such findings are backed up by quotes from individuals, but they are not in this report. By examining only two frameworks in detail, this study may be of limited value to anyone faced with choosing a framework. Nevertheless, this paper is recommended to anyone who needs to know more about frameworks for web applications. Online Computing Reviews Service

    Access critical reviews of Computing literature here

    Become a reviewer for Computing Reviews.

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    SIGCSE '13: Proceeding of the 44th ACM technical symposium on Computer science education
    March 2013
    818 pages
    ISBN:9781450318686
    DOI:10.1145/2445196
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 06 March 2013

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. PHP frameworks
    2. project-based learning
    3. software design and development
    4. software engineering

    Qualifiers

    • Research-article

    Conference

    SIGCSE '13
    Sponsor:

    Acceptance Rates

    SIGCSE '13 Paper Acceptance Rate 111 of 293 submissions, 38%;
    Overall Acceptance Rate 1,595 of 4,542 submissions, 35%

    Upcoming Conference

    SIGCSE TS 2025
    The 56th ACM Technical Symposium on Computer Science Education
    February 26 - March 1, 2025
    Pittsburgh , PA , USA

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)16
    • Downloads (Last 6 weeks)3
    Reflects downloads up to 13 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)Knowledge Transfer in Software Development Teams—Systematic MappingIEEE Revista Iberoamericana de Tecnologias del Aprendizaje10.1109/RITA.2023.325084318:2(152-161)Online publication date: May-2023
    • (2022)Improving Web Application Development Course2022 Fifth National Conference of Saudi Computers Colleges (NCCC)10.1109/NCCC57165.2022.10067861(165-171)Online publication date: 17-Dec-2022
    • (2022)Using Web Frameworks in Server Side Programming CoursesJournal of Computer Information Systems10.1080/08874417.2022.211137863:4(866-876)Online publication date: 22-Aug-2022
    • (2021)Sustainable Approaches for Accelerated LearningSustainability10.3390/su13211199413:21(11994)Online publication date: 29-Oct-2021
    • (2015)A place for node.js in the computer science curriculumJournal of Computing Sciences in Colleges10.5555/2675327.267534130:3(84-91)Online publication date: 1-Jan-2015
    • (2015)Introduction to the Special Issue on Web DevelopmentACM Transactions on Computing Education10.1145/272475915:1(1-5)Online publication date: 4-Mar-2015
    • (2015)Analyzing best practices on Web development frameworksScience of Computer Programming10.1016/j.scico.2014.12.004102:C(1-19)Online publication date: 1-May-2015

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media