Selayang Pandang Teknik Informatika ITS More »

Maskot RPL More »

Karya Admin RPL di EXPO NST SCHEMATICS 2014 More »

Ini Dia, Fitur Baru Android 5.1 Lollipop More »

 

Category Archives: Rekayasa Perangkat Lunak

Apa itu Software Engineering?

13112779_1062655887137717_5156141463603855567_o

Delapan Karya RPL Tampil di I-TEX

Pada hari Minggu (19 April 2015), Himpunan Mahasiswa Teknik Computer-Informatika mengadakan I-TEX untuk pertama kalinya. I-TEX yang merupakan singkatan dari Informatic’s Tecnology Expo merupakan sebuah expo yang memamerkan karya-karya mahasiswa Teknik Informatika ITS. Tentu saja, Lab RPL tidak mau kalah untuk unjuk gigi. Ada banyak karya dari Lab RPL yang ingin dipamerkan. Namun sayangnya, karena ada sistem kuota, maka RPL hanya bisa memamerkan delapan karya saja.

Berikut 8 karya tersebut.

1.  YU-KALI (Yuk Kenali Indonesia)

Yukali

Karya Admin RPL di EXPO NST SCHEMATICS 2014

National Seminar Of Technology (NST) merupakan event pembuka dari serangkaian acara SCHEMATICS 2014 yang diadakan oleh Himpunan Mahasiswa Teknik Computer-Informatika ITS. NST kali ini menyajikan Seminar CLOUD COMPUTING dengan tema “Future Lifestyle is Everything Goes Online”. Acara ini sangat meriah, terbukti dengan pendaftar yang menghadiri seminar ini dapat memenuhi semua kursi di Gedung Robotika ITS. Selain seminar, NST juga menyelenggarakan EXPO berupa karya-karya mahasiswa Teknik Informatika. Setiap laboratorium diberikan masing-masing sebuah stand untuk memamerkan karya-karya adminnya. Kali ini RPL juga ikut berpartisipasi dengan menampilkan 3 karya terbaiknya. Karya tersebut adalah karya admin-admin RPL yang pernah diikutkan kompetisi sampai yang pernah menjadi juara nasional di ajang Imagine Cup Indonesia 2014.

2014-10-19 09.46.41

Karya pertama adalah karya Tommy Nurwantoro, koor RPL angkatan 2011, yang memamerkan karya game nya yang sempat diikutkan di ajang MGDW dari Nokia. Game ini mengajak kita untuk mengenal macam-macam bumbu masakan dengan cara menangkap bumbu-bumbu yang melayang di udara.

Data Quality Integration Platform


dqip

 

Saat ini banyak organisasi yang telah menerapkan strategi baru untuk menghadapi kompetisi. Namun mereka sering mengabaikan kualitas data yang mereka miliki. Padahal kualitas dari sebuah data sangat krusial untuk membuat keputusan dan perencanaan. Untuk itu diperlukan sebuah cara untuk menjaga kualitas sebuah data. Salah satu cara menjaga kualitas tersebut adalah menerapkan Data Quality Integration Platform. Berikut langkah-langkah dalam menjaga kualitas data dalam Data Quality Integration Platform:

1. Riwayat Data (Data Profiling)

Untuk membuat sebuah rumah, seorang arsitek membuat cetak biru yang detail. Riwayat data membantu kita untuk mengetahui kondisi data saat ini dan menemukan masalah dalam data, termasuk masalah isi data, struktur, dan hubungan antara kolom dan tabel. Dengan mengetahui kelemahan dan kekuatan data, riwayat memberikan kita titik awal untuk membuat pengembangan yang kokoh

2. Kualitas Data (Data Quality)

Jika riwayat data menyediakan cetak biru dari masalah data, fase kualitas data adalah fase dimulainya proses untuk membuat data yang lebih baik. Dengan kualitas data, kita dapat memperbaiki kesalahan, standarisasi informasi antar tabel, dan validasi informasi yang tidak konsisten dan tidak akurat. Taktik kualitas data yang umum termasuk standarisasi data, standarisasi pola dan verifikasi alamat.

3. Pengintegrasian Data (Data Integration)

Data dengan item yang sama kadang-kadang terdapat di banyak basis data. Hal ini berlaku di semua jenis data. Setelah data distandarisasi dan diperbaiki, kita dapat dengan mudah mengintegrasikan data tersebut antar sumber. Teknologi integrasi data membantu kita untuk mengintegrasikan pelanggan, produk, dan data bisnis yang lain antar multisumber dengan baik.

4. Pengayaan Data (Data Enrichment)

Data enrinchment dibangun berdasarkan kualitas data dan integrasi data dengan informasi tambahan dan memasukkan data eksternal tambahan. Dengan teknologi pengayaan data, data pelanggan dapat dikombinasikan dan disegmentasikan lebih efisien untuk identifikasi peluang khusus. Produk, inventaris, atau data finansial dapat ditingkatkan dengan menambahkan bit tambahan informasi dari sumber eksternal. Dengan pengayaan data, kita dapat membuat data yang lebih berharga.

5. Monitoring Data (Data Monitoring)

Organisasi sering percaya bahwa masalah kualitas data mereka terselesaikan setelah meningkatkan sumber data yang ada. Namun, memelihara data berkualitas baik membutuhkan kewaspadaan terus menerus. Dengan monitoring data, kita dapat membuat dan menjalankan aturan bisnis (business rule) otomatis untuk mengecek tingkat kualitas data dari waktu ke waktu. Aturan ini, tersimpan di sebuah repositori aturan bisnis dan direplikasi ke perusahaan via web service memungkinkan kita untuk menjalankan aturan tata kelola data dan menyesuaikan aturan sehingga lebih konsisten dengan proses operasi kita.

Dengan terobosan menggunakan teknologi, usaha keras yang dibutuhkan untuk mengefisienkan proses manajemen kualitas data menjadi lebih mudah, waktu yang lebih sedikit, dan biaya yang rendah. Ketika mengimplemtasikan program peningkatan kualitas data, sebaiknya kita mencari teknologi yang dapat menjalankan kelima fase di atas dengan interface yang sama. Dengan platform teknologi pengembangan data yang luas, sebuah organisasi dapat menaikkan peran kualitas data ke aktivitas yang berkelanjutan, sehingga menghasilkan keputusan yang lebih baik dan perusahaan yang kompetitif.

Sumber: http://tdwi.org/Articles/2006/10/23/The-FiveStep-Approach-to-More-Valuable-Enterprise-Data.aspx?Page=1

Extreme Programming

Extreme Programming (berikutnya akan disingkat sebagai XP) adalah sebuah pendekatan atau model pengembangan perangkat lunak yang mencoba menyederhanakan berbagai tahapan dalam proses pengembangan tersebut sehingga menjadi lebih adaptif dan fleksibel. XP bukan hanya berfokus pada coding tetapi meliputi seluruh area pengembangan perangkat lunak.
XP mengambil pendekatan ‘ekstrim’ dalam iterative development.

Sejarah XP

Extreme Programming diciptakan oleh Kent Beck selama Ia bekerja di proyek Chrysler Comprehensive Compensation (C3). Beck menjadi pemimpin proyek C3 pada bulan Maret 1996 dengan mulai memperbaiki metodologi pengembangan yang digunakan dalam proyek penggajian 10.000 karyawan Chrysler, yang terdiri dari kira-kira 2000 class dan 30.000 method.  Beck juga menulis sebuah buku tentang metodologi <i>Extreme Programming Explained</i> yang diterbitkan (bulan Oktober 1999. Kemudian Chrysler membatalkan proyek C3 pada bulan Februari 2000, setelah 7 tahun, ketika perusahaan ini diakuisisi oleh Daimler-Benz.

 

 

Aspek Dasar XP

Aspek dasar XP terdiri dari berbagai teknik atau metode yang diterapkan Beck dan Jeffries pada C3 Project. Teknik-teknik tersebut antara lain:

  • Whole Team
    Seluruh kontributor dalam proyek yang menggunakan pendekatan XP duduk bersama sebagai suatu tim. Tim ini terdiri beberapa peran, antara lain programmer, penguji,orang yang mengerti bisnis, analis, manajer, dan lain-lain. Setiap peran yang ada tidak mutlak menjadi peran dari satu orang saja. Tim terbaik dalam XP tidak harus memiliki pakar, hanya kontributor umum dengan keterampilan khusus saja. Semua orang di tim XP memberikan kontribusi dengan cara apapun yang mereka dapat lakukan.
  • Planning game
    Perencanaan dalam XP mengemukakan dua pertanyaan kunci dalam pengembangan perangkat lunak, yaitu  memprediksi apa yang akan dicapai pada waktu tertentu, dan menentukan apa yang harus dilakukan setelah itu. Ada dua langkah kunci dalam perencanaan XP, yang menangani dua pertanyaan tersebut:
    Release Planning yaitu praktek dimana Customer mengutarakan fitur yang diinginkannya ke programer, dan programer memperkirakan tingkat kesulitannya. Dengan estimasi biaya di tangan, dan dengan pengetahuan tentang pentingnya fitur yang diinginkan, Pelanggan meletakkan satu rencana untuk proyek tersebut. Rencana rilis awal yang selalu tepat: baik prioritas maupun perkiraan yang benar-benar solid, dan sampai tim mulai bekerja, kita tidak akan tahu seberapa cepat mereka akan pergi. Bahkan rencana rilis pertama cukup akurat untuk pengambilan keputusan, namun, dan tim XP melakukan revisi terhadap rencana rilis secara teratur.
    Iteration Planning adalah praktek di mana tim diberikan petunjuk atau arahan setiap beberapa minggu sekali. Tim XP membangun perangkat lunak dalam “iterasi” dua minggu, memberikan menjalankan perangkat lunak yang berguna pada setiap akhir iterasi. Selama Iteration Planning, Customer mengutarakan fitur yang diinginkan selama dua minggu ke depan. Para programer memecahnya ke dalam pekerjaan yang lebih kecil, dan memperkirakan biaya yang diperlukan.
  • Customer Tests
    Sebagai bagian dari presentasi masing-masing fitur yang diinginkan, Customer XP mendefinisikan satu atau lebih  tes penerimaan otomatis untuk menunjukkan bahwa fitur tersebut bekerja dengan baik. Tim membangun tes ini dan menggunakannya untuk membuktikan pada kepada Customer bahwa fitur ini telah diimplementasikan dengan benar. Tes secara otomatis ini penting karena dalam XP hanya diberikan waktu yang singkat sehingga tes manual tidak akan digunakan karena memakan waktu yang lama.
  • Small Release
    Pada setiap Iterasi, tim mengerjakan sebuah unit atau bagian dari perangkat lunak, melakukan tes terhadap unit perangkat lunak yang dibangun, kemudian di akhir iterasi perangkat lunak yang dibangun diberikan kepada Customer. Oleh customer, perangkat lunak ini bisa dijadikan bahan evaluasi maupun langsung dirilis kepada end user. Bisa juga tim XP langsung merilis ke end user secara rutin.
  • Simple Design
    Tim XP membangun perangkat lunak dengan desain yang sederhana. Dimulai dengan desain yang sederhana, kemudian melalui pengujian program dan perbaikan desain. Desain yang dibuat harus benar-benar cocok untuk fungsi saat ini dari sistem sehingga tidak ada yang sia-sia dan perangkat lunak siap dikembangkan lagi selanjutnya. Namun, pembuatan desain dalam XP tidak dilakukan hanya sekali. Tahapan desain dalam Extreme Programming yang menghasilkan desain yang bagus dianggap sangat penting, sehingga selama proses development banyak difokuskan ke tahapan desain.
  •  Pair Programming
    Semua perangkat lunak yang dibangun dengan pendekatan XP dibangun oleh dua orang programmer. Keduanya duduk berdampingan di satu komputer yang sama. Seorang programmer akan membuat code dan programmer yang lainnya akan mengoreksinya. Praktik seperti ini mungkin kelihatan tidak efisien. Namun dari segi hasil dari pair programming, desain akan lebih baik, pengujian lebih baik, dan code yang dihasilkan pun akan lebih baik.
  • Test-Driven Development
    XP begitu terobsesi dengan umpan balik, dan dalam pengembangan perangkat lunak, umpan balik yang baik mensyaratkan pengujian yang baik pula. Test-Driven Development bergantung pada pengulangan siklus development yang sangat pendek. Pertama tim XP akan menuliskan automated test case yang mendefinisikan perbaikan yang diinginkan atau fungsi baru. Kemudian dari test case tersebut dihasilkan jumlah minimal code yang harus dituliskan untuk lulus tes tersebut. Setelah itu melakukan refactoring code baru agar memenuhi standar baru.
  • Design Improvement
    XP berfokus pada memberikan nilai bisnis dalam setiap perulangan. Agar dapat mencapai tujuan tersebut selama proyek berlangsung, perangkat lunak harus dirancang dengan baik. XP menggunakan proses perbaikan desain secara terus menerus dengan Refactoring. Proses refactoring berfokus pada penghapusan duplikasi dari code yang telah dibuat. Disamping itu, proses refactoring didukung dengan pengujian yang komprehensif utnuk memastikan bahwa desain yang dibuat berkembang dan tiidak ada yang rusak.
  • Continuous Integration
    Beberapa kali dalam sehari, tim XP akan menggabungkan seluruh salinan pekerjaan tim menjadi satu dalam jaringan utama. Sehingga tim XP harus menjaga tim agar terintegrasi setiap saat.
  • Collective Code Ownership
    Pada proyek XP, setiap pasang programmer dapat meningkatkan code apapun setiap saat. Semua code yang ada dimiliki secara kolektif oleh tim. Manfaatnya setiap code akan mendapat perhatian dari banyak orang, sehingga dapat meningkatkan kualitas code dan mengurangi cacat. Selain itu dapat mengurangi duplikasi code yang sama walaupun dibuat oleh pasangan programmer yang berbeda.
  • Coding Standard
    Setiap anggota tim XP harus mengikuti standar coding yang umum, sehingga semua code dalam sistem seolah-olah tampak dibuat oleh satu orang yang sangat kompeten. Selain itu hal ini sangat mendukung Collective Code Ownership.
  • Metaphor
    Tim XP akan membuat suatu deskripsi umum bagaimana program yang mereka kembangkan bekerja dengan benar.
  • Sustainable Pace
    Tim XP akan bekerjasama dalam jangka waktu lama. Mereka bekerja keras dengan kecepatan tertentu tanpa batas waktu. Tim XP akan bekerja lembur pada hari efektif dan memaksimalkan produktivitas setiap minggunya.  Hal ini perlu diperhatikan dengan baik, karena akan mengurangi produktivitas atau sebaliknya menghasilkan perangkat lunak yang berkualitas.

 

Referensi:

  • http://www.znu.ac.ir/members/afsharchim/T&M/xp.htm
  • Wikipedia
  • IlmuKomputer.com