PEMBUATAN APLIKASI MANAJEMEN PROYEK BERBASIS AGILE SCRUM PADA PT. MINDO SMALL BUSINESS SOLUTION YOGYAKARTA
NASKAH PUBLIKASI
diajukan oleh Andro Majid 11.22.1310
kepada jurusan sistem informasi SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM YOGYAKARTA YOGYAKARTA 2014 i
ii
Agile Scrum Project Management Application Development at PT. Mindo Small Business Solution Yogyakarta
Pembuatan Aplikasi Manajemen Proyek Berbasis Agile Scrum Pada PT. Mindo Small Business Solution Yogyakarta Andro Majid Bambang Sudaryatno Jurusan Sistem Informasi STMIK AMIKOM YOGYAKARTA ABSTRACT in technology world right now information application development has been progressed so fast.Wih this progress in informatic field not just produce software application development,but rather develop a complext modelling. In Development of a sofware has got good analise skill and modeling technique.With that matter an introduction to application development modelling.There are a lot of modeling on the development of a software tool such as SDLC and Agile Modeling. The where of each model has a variety of other kinds of models. In this thesis I will only limit the explanation-based agile project management application scrum.The purpose I make agile scrum based project management in order to improve the performance of the team members that using Project Management based on agile scrum. In the application that I created not only use the software but some software such as Netbeans 7.3 To make the programming scripts, web server is Apache 2, MySQL is a database where data storage and PHP is a programming language that I want to work on. Keywords: Project Management, applications, agile scrum, php
iii
1.
Pendahuluan Dalam dunia teknologi sekarang pengembangan dalam bidang informatika telah
mengalami perkembangan yang sangat pesat. Dengan perkembangan ini, dalam bidang informatika tidak hanya menghasilkan dalam pengembangan program perangkat lunak saja, melainkan pengembangan dalam bidang suatu permodelan yang bersifat komplek. Manajemen merupakan suatu proses terpadu dimana individu-individu sebagai bagian
dari
organisasi
dilibatkan
untuk
melakukan
proses
perencanaan,
pengorganisasian, serta menjalankan dan mengendalikan aktivitas-aktivitas produksi, yang kesemuanya diarahkan pada sasaran yang telah ditetapkan dan berlangsung terus-menerus seiring dengan berjalannya waktu. Sedangkan yang dimaksud dengan proyek adalah suatu usaha yang kompleks, tidak rutin, dibatasi oleh waktu, anggaran, resource dan spesifikasi yang telah dirancang untuk dapat memenuhi kebutuhan konsumen. Dari definisi di atas, dapat disimpulkan bahwa manajemen proyek dapat diartikan sebagai suatu proses kegiatan untuk melakukan perencanaan, pengorganiasian, pengarahan dan pengendalian atas sumber daya organisasi yang dimiliki perusahaan untuk mencapai tujuan tertentu dalam waktu dan sumber daya tertentu pula. Manajemen proyek sangat cocok untuk suatu lingkungan bisnis yang menuntut kemampuan akuntansi, fleksibilitas, inovasi, kecepatan dan perbaikan yang berkelanjutan. PT. Mindo Small Business Solution adalah perusahaan yang bergerak di bidang teknologi informasi. Sebagai perusahaan yang sedang berkembang dan mempunyai sumber daya manusia yang sedikit, PT Mindo Small Business Solution berniat menggunakan
agile
scrum
sebagai
metode
untuk
mengembangkan
website.
Sebelumnya PT. Mindo Small Business Solution menggunakan metode satu orang satu project dalam pengembangan website, namun cara ini dinilai terlalu lama dalam waktu pengerjaan suatu website. Hal ini menyebabkan kerepotan bagi pihak PT. Mindo Small Business Solution karena berdampak pada penguluran waktu, biaya dan tenaga. Agile scrum method merupakan salah satu dari beberapa metode yang digunakan dalam pengembangan software. Agile scrum method adalah jenis pengembangan sistem jangka pendek yang fleksibel. Metode ini cocok digunakan dalam pengembangan software skala kecil. Berdasarkan uraian di atas maka penulis memilih Judul “Pembuatan Aplikasi Manajemen Proyek Berbasis Agile Scrum Pada PT. Mindo Small Business Solution Yogyakarta” dengan harapan mampu memberikan solusi, yaitu memperbaiki kondisi awal dengan kondisi sistem.
1
2. Landasan Teori 2.1.1 Pengertian Sistem Kata sistem berasal dari kata sistem yang berarti susunan atau cara. Pendefinisian sistem dikelompokkan dalam dua pendekatan, yaitu pendefinisian yang menekankan pada prosedurnya dan yang menekankan pada komponen atau elemennya. Menurut Richard F. Neuschel, prosedur adalah suatu urutan tulis menulis, biasanya melibatkan beberapa orang di dalam satu atau lebih departemen, yang diterapkan untuk menjamin penanganan yang seragam dari transaksi-transaksi bisnis yang terjadi. 2.1.2 Pengertian Informasi Informasi sangat penting dalam sebuah organisasi. Data adalah suatu kenyataan yang bermanfaat dan nyata.
menggambarkan suatu kejadian–kejadian dan kesatuan yang
Informasi dapat merubah kemungkinan–kemungkinan hasil yang
diharapkan
dalam pengambilan sebuah keputusan. Jadi dapat disimpulkan bahwa informasi adalah data yang diolah atau diproses sedemikian rupa sehingga mempunyai manfaat bagi penerimanya untuk membantu atau mendukung dalam pengambilan keputusan. 2.2 Pengertian Manajemen Proyek Manajemen
proyek
adalah
penerapan
ilmu
pengetahuan,
keahlian
dan
ketrampilan, cara teknis yang terbaik dan dengan sumber daya yang terbatas untuk mencapai sasaran yang telah ditentukan agar mendapatkan hasil yang optimal dalam hal kinerja, waktu, mutu dan keselamatan kerja. Dalam manajemen proyek, perlunya pengelolaan yang baik dan terarah karena suatu proyek memiliki keterbatasan sehingga tujuan akhir dari suatu proyek bisa tercapai. Yang perlu dikelola dalam area manajemen proyek yaitu biaya, mutu, waktu, kesehatan dan keselamatan kerja, sumberdaya, lingkungan, resiko dan sistem informasi. 2.3 Pengertian Metode Agile Metode agile merupakan salah satu dari beberapa metode yang digunakan dalam pengembangan software. Metode agile adalah jenis pengembangan sistem jangka pendek yang fleksibel. Sehingga metode ini cocok digunakan dalam pengembangan sistem dalam sekala kecil, yang cepat beradaptasi dengan requirement yang berubah-ubah. 2.4 Pengertian Scrum Scrum menguraikan proses untuk mengidentifikasi dan katalogisasi pekerjaan yang perlu dilakukan, memprioritaskan yang bekerja dengan berkomunikasi dengan pelanggan atau wakil pelanggan dan pelaksanaan yang bekerja menggunakan rilis iterative dan memiliki tujuan utama untuk mendapatkan perkiraan berapa lama akan pembangunan.
2
2.5 Jenis Pemrograman Web 2.5.1 Client Side Scripting Client side scripting dikerjakan langsung didalam browser. Client side scripting dikerjakan secara urut dari bagian paling atas scrip sampai bagian paling bawah tanpa ada lompatan, perulangan, dan sebagainya. 2.5.2 Server Side Scripting Server side scripting merupakan dokumen-dokumen yang digunakan dalam membangun suatu aplikasi internet yang
dijalankan pada sisi server dan dikirimkan ke
browser dalam bentuk HTML. Jika yang diinginkan oleh seorang user adalah file yang mengandung perintah server side maka server web akan menjalankan dahulu program tersebut lalu mengirimkannya kembali ke browser dalam bentuk HTML sehingga dapat diterjemahkan oleh browser contoh server side scripting antara lain PHP, JSP dan ASP. 2.6 Konsep Perancangan Database Basis data terdiri atas dua kata, yaitu Basis dan Data. Basis kurang lebih dapat diartikan sebagai markas atau gudang, tempat bersarang/berkumpul. Sedangkan Data adalah representasi fakta dunia nyata yang mewakili suatu objek seperti manusia (pegawai, siswa, pembeli, pelanggan), barang, hewan, peristiwa, konsep, keadaan, dan sebagainya, yang direkam dalam bentuk angka, huruf, symbol, teks, gambar, bunyi, atau kombinasinya. 2.7 Teori Analis Untuk mengidentifikasi masalah, harus dilakukan analisis terhadap kinerja, informasi, ekonomi, keamanan aplikasi, efisiensi dan pelayanan pelanggan. Analisis yang dilakukan seperti ini biasanya dikenal dengan sebutan analisis PIECES (Performance, Information, Economy, Control, Efficiency, Service). 2.8 Flowchart Flowchart adalah penggambaran secara grafik dari langkah-langkah dan urutan-urutan prosedur dari suatu program. Flowchart menolong analis dan programmer untuk memecahkan masalah ke dalam segmen-segmen yang lebih kecil dan menolong dalam menganalisis alternatif-alternatif lain dalam pengoperasian. 2.9 Software Yang Digunakan 2.9.1 Web Server Apache Web server merupakan server Internet yang mampu melayani koneksi transfer data dalam protocol HTTP. Web server merupakan hal yang terpenting dari server di Internet dibandingkan server lainnya seperti E-mail server, FTP server ataupun News server. Hal ini disebabkan web server telah dirancang untuk dapat melayani beragam jenis data, dari text sampai grafis. Kemampuan ini telah menyebabkan berbagai institusi
3
seperti universitas maupun perusahaan dapat menerima kehadirannya dan juga sekaligus menggunakannya sebagai sarana di Internet. 2.9.2 Hypertext Preprocessor (PHP) Menurut dokumen resmi PHP, PHP merupakan singkatan dari PHP Hypertext Preprocessor, Merupakan bahasa berbentuk skrip yang ditempatkan pada sisi server dan di proses oleh server 2.9.3 MYSQL MySQL merupakan sebuah software database yang dikembangkan oleh sebuah perusahaan Swedia bernama MySQL AB, yang pada waktu itu bernama Tcx Data Konsult AB. Pada awalnya,
MySQL AB bernama mQL atau mini SQL sebagai
antarmuka yang digunakan, ternyata menggunakan mSQL banyak mengalami hambatan yaitu sangat lambat dan tidak fleksibel. Oleh karena itu, Michael Widenius berusaha mengembangkan interface tersebut hingga ditemukanlah MySQL. 2.9.4 Netbeans Netbeans merupakan sebuah aplikasi Integrated Development Environment (IDE) yang berbasiskan Java dari Sun Microsystems yang berjalan di atas swing. Swing merupakan sebuah teknologi Java untuk pengembangan aplikasi desktop yang dapat berjalan pada berbagai macam platform seperti windows, linux, Mac OS X dan Solaris. Sebuah IDE merupakan lingkup pemrograman yang di integrasikan ke dalam suatu aplikasi perangkat lunak yang menyediakan Graphic User Interface (GUI), suatu kode editor atau text, suatu compiler dan suatu debugger. 3.
Analisis Dan Perancangan Sistem
3.1
Analisis Yang Dilakukan
3.1.1 Analisis PIECES(Performance, Information, Economy, Control, Efficiency, Service) Untuk mengidentifikasi masalah, harus dilakukan analisis terhadap kinerja, informasi, ekonomi, keamanan aplikasi, efisiensi dan pelayanan pelanggan. Analisis yang dilakukan seperti ini biasanya dikenal dengan sebutan analisis PIECES (Performance, Information, Economy, Control, Efficiency, Service). Dari analisis yang dilakukan dengan metode ini maka akan didapatkan beberapa masalah utama.1 3.2
Analisis Kebutuhan Sistem
3.2.1 Kebutuhan Fungsional Untuk meningkatkan kualaitas informasi yang di sajikan di butuhkan suatu sistem informasi dan promosi yang online 24 jam full sehingga bisa di nikmati oleh semua lapisan masyarakat. Agar informasi tersebut cepat sampai maka dibutuhkan suatu sistem 1
Op.cit. hal. 51.
4
baru yang menerapkan teknologi internet berbasis web yang dapat digunakan sebagai media informasi dan promosi bagi perusahaan. Adapun untuk membangun sistem informasi dan promosi berbasis web ini dibutuhkan menu-menu berupa menu home, info, kontak kami, dan beberapa menu tambahan lainnya. 3.2.2 Kebutuhan Non Fungsional
3.3
a)
Perangkat Keras ( Hardware ).
b)
Perangkat Lunak ( Software ).
c)
Brainware.
Analisis Kelayakan Sistem Analisis kelayakan sistem merupakan proses menganalisa permasalahan yang
telah ditentukan sesuai dengan tujuan akhir yang akan dicapai. Tujuan utama analisis kelayakan
adalah
untuk
menentukan
kemungkinan
apakah
perancangan
dan
pengembangan proyek sebuah sistem website layak diteruskan atau dihentikan. 3.4 Analisis Biaya Dan Manfaat Sebuah sistem informasi dikembangkan, maka perlu dihitung kelayakan ekonominya. Teknik inilah yang disebut dengan analisis biaya / kekurangan. Analisis biaya dan manfaat digunakan untuk menentukan apakah dalam proyek sistem website ini layak atau tidak. 3.4.1 Analisis Payback Period Metode ini dilakukan untuk menghitung jangka waktu yang diperlukan untuk membayar biaya investasi yang telah dikeluarkan. 3.4.2 Analisis Net Present Value NPV merupakan selisih antara pengeluaran dan pemasukan yang telah didiskon dengan menggunakan social opportunity cost of capital sebagai diskon faktor, atau dengan kata lain merupakan arus kas yang diperkirakan pada masa yang akan datang yang didiskonkan pada saat ini.Untuk menghitung NPV diperlukan data tentang perkiraan biaya investasi, biaya operasi, dan pemeliharaan serta perkiraan manfaat/benefit dari proyek yang direncanakan. 3.4.3 Analisis Return Of Investment Metode ini mengukur persentase manfaat yang dihasilkan oleh proyek dibandingkan biaya yang dikeluarkannya. 3.5
Perancangan Sistem Perancangan proses meliputi perancangan
Flowchart Program
perancangan
diagram Use-case, perancangan diagram aktifitas, perancangan diagram Class, perancangan database dan perancangan user interface. 3.5.1 Perancangan Flowchart
5
Flowchart sistem merupakan bagan yang menunjukan arus pekerjaan secara keseluruhan dari sistem. Bagan ini menjelaskan urutan-urutan dari prosedur-prosedur yang ada didalam sistem. Flowchart sistem menunjukan apa yang dikerjakan di sistem dan dapat digambarkan dengan menggunakan simbol-simbol. 3.5.2 Perancangan Diagram Use Case Dari hasil analisis yang telah dilakukan sebelumnya, selanjutnya dibuat pemodelan dari sudut pandang user menggunakan use case diagram. Use case diagram merupakan diagram yang dibuat dengan menggunakan sudut pandang pengguna. 3.5.3 Perancangan DIagram Aktifitas Activity diagram digunakan untuk memodelkan proses yang terjadi pada sistem yang akan menjelaskan aktifitas pada setiap fungsi yang ada. 3.5.4 Perancangan Diagram Sekuensial Diagram berinteraksi,
sekuensial
termasuk
mendeskripsikan
pesan
yang
bagaimana
digunakan
saat
entitas interaksi.
dalam
system
Semua
pesan
dideskripsikan dalam urutan dari eksekusi. Diagram sekuensial berhubungan erat dengan use case diagram, dimana 1 use case akan menjadi 1 diagram sekuensial. 3.5.5 Perancangan Diagram Class Class diagram menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi. Atribut merupakan variabel-variabel yang dimiliki oleh suatu kelas, sedangkan operasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu kelas. 3.5.6 Perancangan Database Basis data (database) merupakan kumpulan dari data yang saling berhubungan satu dengan yang lainnya. Tersimpan di simpanan luar komputer dan digunakan perangkat lunak tertentu untuk memanipulasinya. Database merupakan salah satu komponen yang penting dalam system informasi, karena berfungsi sebagai basis penyedia informasi bagi para pemakai. Penerapan database dalam system informasi disebut dengan database system. Sistem basis data ini adalah suatu sistem informasi yang mengintregrasikan kumpulan dari data yang saling berhubungan satu dengan yang lainnya dan membuatnya tersedia untuk beberapa aplikasi yang bermacam-macam di dalam suatu organisasi. 3.5.7 Perancangan User Interface Setelah struktur perancangan situs web di buat, langkah selanjutnya adalah membuat rancangan atau sketsa setiap halaman website, guna mempermudah dalam pembuatan desain website tersebut.
6
4. Implementasi Dan Pembahasan 4.1 Pembuatan Database Pembuatan database dan tabel merupakan langkah awal yang selalu dilakukan dalam membangun sebuah basis data. Dalam pembuatan database sistem ini, penulis menggunakan phpMyAdmin. 4.2 Pembuatan Program Pada pembuatan program aplikasi ini, penulis akan membatasi cakupan dari pembahasan tersebut dan selebihnya akan dibahas di lampiran. Pada pembahasan ini penulis akan membahas tentang koneksi database MySQL, halaman index dan halaman dashboard.
run();
4.3 Pengetesan Sistem Sesuai dengan rancanga fisik sebagai dokumentasi aplikasi, maka program yang dibuat haruslah sesuai dengan dokumentasi yang telah dibuat. Dalam penerapan kode-kode program yang membangun website ini juga harus diuji agar terhindar dari kesalahan program secara menyeluruh. 4.3.1 Uji Coba White Box Testing
7
Uji coba white box adalah test case yang menggunakan struktur control desain procedural untuk memperoleh test case. Pengujian white box perangkat lunak didasarkan pada pengamatan yang teliti terhadap detail procedural, jalur-jalur logika yang melewati perangkat lunak diuji dengan memberikan test case yang menguji serangkaian kondisi atau loop tertentu. Status program tersebut dapat diuji pada berbagai titik untuk menentukan apakah status yang diharapkan atau dituntut sesuai dengan status actual. (Roger, 1997). 4.3.2 Uji Coba Black Box Testing Black box testing adalah pengujian spesifikasi yaitu menguji suatu fungsi atau modul apakah dapat berjalan sesuai dengan yang diharapkan atau tidak. Pengujian black box berfokus pada persyaratan fungsional perangkat lunak. Dengan demikian pengujian black box memungkinkan perekayasaan perangkat lunak mendapatkan serangkaian kondisi input suatu program. Dalam melakukan pengetesan tersebut, modul yang diuji adalah halaman task. Pengujian pada halaman task ini berhasil dengan baik yaitu menampilkan output data yang diinginkan oleh admin. 4.3.3 Fungsional Testing Untuk fungsional testing pada website ini lebih mengedepankan pada pengetesan sistem.
Pengetesan
sistem
di
sini
untuk
memastikan
apakah
elemen
atau
komponen-komponen dan sistem telah berfungsi sesuai yang diharapkan. Pengetesan perlu dilakukan untuk mencari kelemahan dan kesalahan yang mungkin terjadi pada sistem ini. 4.4
Upload Testing Untuk mengupload file, penulis menggunakan VPS( Virtual Private Server ) yang
merupakan milik penulis sendiri yang dapat dibeli di https://www.digitalocean.com/. Cara mengupload file menggunakan fasilitas yang telah di install oleh penulis menggunakan file manager kloxo. 4.5
Pemilihan Dan Pelatihan Personal Manusia merupakan faktor yang perlu dipertimbangkan dalam sistem informasi.
Jika sistem informasi ingin sukses maka personil-personil yang terlibat harus diberi pengertian dan pengetahuan yang cukup tentang sistem informasi dan posisi serta tugas mereka. 4.6
Pemeliharaan Web Tahap akhir dari proses penerapan sistem adalah tahap pemeliharaan yang terus
dilakukan selama sistem masih berjalan dan tetap dipakai. Kegiatan pemeliharaan ini adalah pemeliharaan sistem perangkat lunak, yaitu dengan memiliki duplikat dari sistem aplikasi tersebut secara keseluruhan. Duplikat dapat dilakukan dengan cara mengkopi
8
file-file tersebut kedalam CD untuk mengantisipasi terhadap kesalahan atau eror pada aplikasi. 4.7 Pembahasan Interface Aplikasi manajemen proyek berbasis agile scrum cukup user friendly untuk diakses dan memiliki desain yang bagus. 5. Penutup 5.1 Kesimpulan Berdasarkan hasil dari pembuatan laporan Tugas Akhir “Pembuatan Aplikasi Manajemen Proyek Berbasis Agile Scrum Pada PT. Mindo Small Business Solution Yogyakarta” dapat ditarik beberapa kesimpulan sebagai berikut. Dengan diterapkan sistem yang baru berupa aplikasi manajemen proyek berbasis agile scrum diharapkan dapat mengatur bagaimana pengerjaan proyek itu dilaksanakan. Aplikasi manajemen proyek berbasis agile scrum dapat menyimpan dokumen - dokumen yang terkait dengan pengerjaan suatu proyek. Tugas - tugas para programmer dan web desainer terdapat di aplikasi manajemen proyek berbasis agile scrum. Aplikasi dibuat ini agar PT Mindo Small Business Solution dapat melakukan pengorganisasian, pengarahan dan pengendalian atas sumber daya yang dimiliki. 5.2 Saran Setelah dilakukan tahapan-tahapan perancangan serta analisa maka web ini di buat agar para pembuat web yang akan datang bisa menerapkan langkah-langkah dalam pembuatan web dengan baik dan terstruktur. Penulis mengajukan saran-saran sebagai berikut ini. Metode yang digunakan harus dapat lebih baik dari sebelumnya dan kata-kata yang dipakai harus sesuai agar dapat mudah dimengerti orang. Para pembuat web seperti ini seharusnya lebih sempurna dibanding pembuat web sebelumnya. Khusunya lebih
meneliti
program-programnya,
software-software
yang
digunakan,
serta
aplikasi-aplikasi yang bagaimana yang sesuai dengan tampilan dan judul dari web tersebut. Untuk mengerjakannya alangkah baiknya dibuat schedule atau rencana rancangan pembuatan web tersebut agar tampilan dan prosesnya terlihat lebih sempurna dari sebelumnya. Selain itu perlu juga diperhatikan keamanan database-nya agar data tidak dapat dilihat atau dirubah oleh sembarang orang. Daftar Pustaka Ir. M. FARID AZIS, M. Kom, 2006, ”Object Oriented Programming Php 5”, Elex
Media,
Jakarta Alexander Makarov, 2012, “Yii 1.1 Application Development Cookbook”, Publishing, Birmingham, UK.
9
Packt
Sholiq, 2009, “Pemodelan Sistem Informasi Berorientasi Objek Dengan UML”, Graha Ilmu, Surabaya Jayan, 2007, “Design Situs Keren Dengan Photoshop dan Dreamweaver”, Maxikom, Palembang Tavri D. Mahyuzir, 1997, “Analisis dan Perancangan Sistem Pengolahan Data”, PT. Elex Media Komputindo, Jakarta http://www.sitepoint.com/scrum-an-agile-projects-best-friend/ (21.33 WIB Senin 15 Juli 2013) http://net.tutsplus.com/tutorials/php/object-oriented-php-for-beginners/ Senin 15 Juli 2013) http://www.scrum.co.id/static/apa-itu-scrum (22.01 WIB Rabu17 Juli 2013)
10
(22.33
WIB