Pengembangan Web Dengan Metode Agile Menggunakan Framework PHP Symfony Agile Method Web Development With PHP Symfony Framework
Pengembangan Web Dengan Metode Agile Menggunakan Framework PHP Symfony Agile Method Web Development With PHP Symfony Framework
Abstrak
Permasalahan besar bagi pengembang aplikasi web berbasis php umumnya adalah kecepatan
pengembangan, terbatasnya tools untuk membantu proses development, serta permasalahan pada
maintainability dan readability. Isu – isu tersebut merupakan tujuan utama yang ingin
dipecahkan dengan penerapan agile best practices, yang sejalan dengan agile manifesto yaitu
mengutamakan software yang berjalan dengan baik dan kemampuan untuk mengakomodasi
perubahan atau penambahan fitur di kemudian hari.Untuk menerapkan agile best practices
terdapat sebuah framework php yang dipandang memiliki fitur fitur yang mendukung pemecahan
masalah di atas. Framework tersebut adalah symfony.
Tugas akhir ini akan membahas bagaimana menerapkan agile best practices dengan
menggunakan framework symfony yang diterapkan pada studi kasus aplikasi groovel : online trip
planner.
Abstract
There is some big hot issues within php web developer community like development speed,
limitation of tools provided for supporting the development process, maintainability and
readability issues. That is the main objectives of agile best practices techniques , which is
concurrent with agile manifesto that value more for working software and responding to
change.To implement agile best practices, there is some php framework that offer solution to
eliminate the problems. One of them is symfony framework.
This final assignment will be discussed about how to implement agile best practices using
symfony framework into the development of groovel : online trip planner as the case study.
1. Pendahuluan
1.1 Latar belakang
Secara umum ada dua permasalahan yang dihadapi oleh pengembang software,
yaitu bagaimana meningkatkan nilai bisnis dan memperbaiki masalah yang terjadi
dari metode sebelumnya. Masalah yang terjadi mencakup masalah bisnis
(business smell) dan masalah pada proses pembuatan (process smell) [1].
Business smell dapat didefinisikan bahwa software yang dihasilkan tidak sesuai
dengan permintaan customer, contohnya pengimplementasian fitur baru sangat
sukar untuk dilakukan dan beberapa fitur menjadi mubazir. Sedangkan process
smell adalah masalah yang dihadapi oleh pengembang di dalam proses
pengembangan software. Walaupun process smell tidak telihat oleh customer,
namun secara tidak langsung berpengaruh pada customer, karena masalah pada
proses akan berujung masalah juga pada customer, sebagai contoh dari process
smell ini adalah banyaknya bugs dari aplikasi.
Salah satu solusi dari permasalahan-permasalahan tersebut adalah dengan
jalan mengadopsi agile pattern ke dalam pengembangan software[1]. Agile best
practices seperti refactoring, test first development, test last development, dan
functional test dapat diterapkan untuk menjawab business smell maupun process
smell.
Bagi pengembang aplikasi berbasis web, khususnya php, ternyata tidak mudah
mengadopsi agile best practices ini ke dalam siklus pengembangan web[2].
Reputasi buruk dari php di mana sering terjadi kasus kode yang tidak standar,
penulisan sintaks yang tidak konsisten [6], membuat agile best practices sulit
diterapkan. Sebagai contoh kecil, refactoring akan sulit dilakukan jika kode
programnya tidak standar dan tidak konsisten.
Symfony adalah salah satu framework php, yang memiliki fitur-fitur seperti
kode standar dengan prinsip model view controller, refactoring, unit test, dan
functional test[9]. Dalam implementasinya symfony dikolaborasikan dengan tools
lainnya seperti subversion untuk membantu manajemen kode program, dan
redmine untuk manajemen proyek. Kombinasi antara symfony, subversion dan
redmine ini dapat menjadi pilihan bagi para pengembang aplikasi php untuk
menjawab business smell dan process smell, dengan mengadopsi agile best
practices.
Tugas akhir ini menganalisis penerapan agile development pada sebuah
aplikasi berbasis web dengan memanfaatkan symfony. Dengan harapan dapat
memberikan solusi terhadap permasalahan yang dihadapi oleh pengembang
aplikasi web berbasis PHP.
1.2 Perumusan masalah
Hipotesis Tugas Akhir ini adalah :
• Business smell dan process smell pada pengembangan software dapat
ditangani dengan mengadopsi agile best practices
• Symfony merupakan framework berbasis php yang memiliki fitur untuk
mendukung penerapan agile best practices.
Masalah yang akan diteliti adalah :
40
Daftar Pustaka
[1] Amr Elssamasdisy, “Pattern of Agile Practices Adoption, The
Technical Cluster “, C4Media Inc 2007
[2] Doug Wallace, Isobel Raggett, Joel Aufgang 2002, “Extreme
Programming for Web Projects”
[3] Eddo Rotman, PHP & AGILE DEVELOPMENT
http://devzone.zend.com
di download pada tanggal 20 januari 2008
[4] Endy Muhardin, Konsep dan Penggunaan Subversion, Jakarta,
2007, Artivisi
[5] Francois Zaninotto, symfony: Simplify your professional web
development with symfony
http://www.symfony-project.com
Di download pada tanggal 23 januari 2008
[6] http://en.wikipedia.org/wiki/Model-view-controller
Di download pada tanggal 23 januari 2008
[7] http://www.extremeprogramming.org/
di download pada tanggal 13 maret 2007
[8] http://www.software-arsitek.web.id/2008/06/mengadopsi-agile-
development-secara.html
Di download pada tanggal 1 juni 2008
[9] http://www.symfony-project.org/
di download pada tanggal 13 maret 2007
[10] Stephen H.Kan, Metrics and Models in Software Quality
Engineering, second edition, Addison Wesley 2002
41