Tugas Perancangan Sistem Informasi

Embed Size (px)

Citation preview

TUGAS Perancangan Sistem Informasi

DISUSUN OLEH Nama Nim : Iyus Dedi Putra : 20093124720650041

UNIVERSITAS MPU TANTULAR JAKARTA 2011/2012

1

Pendahuluan Perkembangan teknologi informasi yang pesat membawa pengaruh yang sangat berarti pada kehidupan manusia dewasa ini. Teknologi informasi memiliki berbagai unsur yang membangunnya menjadi kesatuan yang kokoh. Salah satu unsur teknologi informasi adalah perangkat lunak. Perangkat lunak merupakan kumpulan objek yang membentuk konfigurasi yang dapat berupa program, dokumen, atau data. Perangkat lunak adalah sesuatu yang dikembangkan, bukan dibuat secara pabrikan seperti perangkat keras. Pengembangan perangkat lunak memerlukan langkah-langkah yang tepat, efektif dan efisien untuk menjamin terpenuhinya kebutuhan user. Untuk itulah berkembang berbagai metodologi pengembangan perangkat lunak. Sebelum era 2000-an kita mengenal metodologi waterfall, spiral model, Rapid Application Development, dan masih banyak beberapa lainnya. Semua metodologi tersebut merupakan metodologi yang formal, dalam arti seluruhnya berjalan mengikuti aturan-aturan baku yang telah ditetapkan. Pada era 2000-an mulai berkembang metodologi baru yang sangat fleksibel, yaitu Agile Methods. Agile Methods dikembangkan karena pada metodologi tradisional terdapat banyak hal yang membuat proses pengembangan tidak dapat berhasil dengan baik sesuai tuntutan user. Saat ini metodologi ini sudah cukup banyak berkembang, di antaranya adalah : eXtreme Programming (XP) Scrum Methodology Crystal Family Dynamic Systems Development Method (DSDM) Adaptive Software Development (ASD) Feature Driven Development (FDD)

2

Pembahasan Pengenalan Extreme Programming Software development merupakan salah satu bentuk engineering yang berkembang sejak diciptakannya komputer. Jika dibandingkan dengan engineering lain yang ada, seperti arsitektur, machine engineering, maka disiplin ilmu ini tergolong muda. Dalam perkembangannya kita melihat berbagai hal sudah dihasilkan. Awalnya manusia berinteraksi dengan komputer dengan menggunakan bahasa mesin yang direpresentasikan dengan nilai-nilai biner. Kemudian muncul bahasa rakitan yg menggantikan penggunaan nilai-nilai biner tersebut dengan simbolsimbol opcodes. Berikutnya lahirlah berbagai bahasa pemrograman tingkat tinggi yg membuat pemrograman semakin mudah dengan struktur yang dekat dengan bahasa manusia. Sejak saat itu produktivitas pembuatan software juga meningkat. Software rumit semacam sistem operasi juga semakin modern. Di luar keberhasilan-keberhasilan tersebut tak terhitung pula jumlah pengembangan software yang mengalami kegagalan. Sering kita dengar project A dihentikan karena over budget, project B berhasil sampai padaproduction tetapi dengan defect rate sangat tinggi. Metodologi pengembangan software memang sudah ada pada project-project tersebut, tetapi mengapa kegagalan masih saja menjadi satu hal yg sangat mengancam? Sepertinya keberhasilan diambil dari sebuah kotak undian dengan kesempatan acak, terkadang berhasil, terkadang gagal. Extreme Programming (dikenal juga dengan XP) muncul menawarkan sebuah disiplin dalam pengembangan software. Klaim dari penggagasnya adalah disiplin ini akan menghapus kesan bahwa keberhasilan software development hanya dapat dicapai dengan keberuntungan. Nilai dasar yang terkandung di dalamnya adalah: Komunikasi (Communication), Kesederhanaan (Simplicity), Umpan balik (Feedback), Keberanian (Courage). Ya nilai-nilai ini memang bukan suatu hal yg baru, tetapi lewat pengalaman dari serangkaianproject penggagas bahwa hal-hal inilah yang dapat menekan resiko kegagalan suatu project. Dalam hal ini XP hanya mencoba untuk mengumpulkannya dan memberinya sebuah nama. Komunikasi menjadi hal yang sangat menentukan dalam sebuah tim pengembangan software. Kegagalan komunikasi antar pihak-pihak yang berkepentingan dalam pengembangan software pastinya akan menimbulkan masalah-masalah yg tidak diinginkan seperti: proses bisnis yang dibuat tidak sesuai, anggota tim menghadapi masalah yg tidak bisa diselesaikan, atasan mendapatkan laporan kejutan sehari sebelum deadline, dsb. Pihak-pihak yang berkepentingan (selanjutnya disebut Role) dalam hal ini mencakup:programmer, customer, coach, tracker, tester, consultant, big boss (penjelasan rinci tentang masing-masingrole dapat dibaca di buku Extreme Programming Explained).

3

Kesederhanaan mengacu pada desain sistem yang akan dibuat. Berlawanan dengan disiplin software development lainnya, XP menganjurkan desain yang berevolusi sepanjang proses pengembangan. Seringkaliprogrammer berpikir terlalu kompleks dalam menyelesaikan suatu permasalahan. Pada saat yang lain mereka berpikir bagaimana supaya sistem menjadi fleksibel untuk masa depan. Dalam mengambil keputusan demikian biasanya hanya berdasar pada spekulasi saja, di mana pada akhirnya perkiraan tersebut meleset, sistem tidak pernah diuntungkan dengan desain fleksibel yang super kompleks tersebut. Satu prinsip yang berkaitan dengan ini adalah You arent gonna need it,di mana sangat dianjurkan agar dalam membangun sesuatu terlebih dahulu kita memastikan bahwa hal ini memang dibutuhkan. Umpan balik diperlukan untuk mengetahui kemajuan dari proses dan kualitas dari aplikasi yang dibangun. Informasi ini harus dikumpulkan setiap interval waktu yang singkat secara konsisten. Ini dimaksudkan agar hal-hal yang menjadi masalah dalam proses pengembangan dapat diketahui sedini mungkin dan customerdapat membuat keputusan berdasarkan informasi tersebut. Keberanian. Ini merupakan nilai yang menjadi katalisator bagi ketiga nilai sebelumnya. Keberanian diperlukan untuk mengatakan bahwa target deadline yang diinginkan customer tidak mungkin tercapai, untuk mengambil keputusan saat code yang sudah dibuat ternyata harus dibuang karena kesalahan informasi.Nilai-nilai di atas menjadi bagian inti dari Extreme Programming. Tetapi untuk mencapainya perlu ada strategi konkrit yang siap untuk diaplikasikan. Strategi tersebut akan dibahas di lain waktu.

eXtreme Programming (XP) merupakan agile methods yang paling populer saat ini. XP digunakan untuk mengatasi masalah requirements yang tidak jelas dan sering berubah-ubah (vague and volatile requirements). XP berjalan berdasarkan 4 values. Keempat values tersebut adalah communication, simplicity, feedback, dan courage. XP menjadi begitu populer sejak diperkenalkan oleh Kent Beck menjadi sebuah metodologi untuk pengembangan perangkat lunak. XP dimunculkan untuk menangani perubahan-perubahan yang biasanya sering terjadi pada saat pengembangan berlangsung bahkan pada saat proses pengembangan sudah hampir berakhir. Selain itu XP juga dimunculkan untuk mengatasi berbagai requirements yang tidak jelasdari user. Sebagai sebuah metodologi untuk mengembangkan peragkat lunak XP tentu memiliki siklus hidup. Siklus hidup pada XP ini terdapat lima fase yaitu [1] : 1. Exploration Phase 2. Planning Phase

3. Iteration to Release Phase

4

4. Productionizing Phase 5. Maintenance Phase 6. Death Phase

Gambar 1. Siklus hidup eXtreme Programming Selain itu XP memiliki 12 practice yang sangat mencirikan ke-ekstremannya. Meskipun para developer mungkin memiliki practices yang berbeda namun secara mendasar XP memiliki 12 practices utama yaitu: Planning Game 7 Pair Programming Small Releases 8 Collective Ownership Metaphor 9 Continuous Integration Simple Design 10 40-hour week Testing 11 On-site Customer Refactoring 12 Coding Standard Planning game merupakan practice yang digunakan untuk melakukan perencanaan dan melakukan prioritas terhadap fitur-fitur yang dituliskan pada index card oleh customer. Small releases, rilis yang dihasilkan untuk setiap iterasi sangat pendek dan dengan umpan balik terhadap perubahan dari customer juga sangat cepat. Metaphor adalah semacam simple guidance bagi proses pengembangan dari fase paling awal hingga terakhir. Simple design merupakan rancangan yang sederhana untuk di-deliver pada setiap iterasi. Testing yang dilakukan adalah setiap saat bahkan terdapat testing diawal. Refactoring adalah proses untuk memperbaiki code selain untuk menghindari berbagai redundansi yang mungkin terjadi. Pair programming menjadi practice yang tidak terdapat pada agie methods yang lain. Pair programming adalah proses pengembangan

5

dengan memprogram di satu mesin komputer yang dilakukan oleh dua orang programmer. Collective ownership adalah keadaan di mana semua anggota tim harus dapat menanggulangi semua hal yang berkaitan dengan proses pengembangan. Continuous integration bahwa proses pengembangan setiap hari bahkan setiap saat terdapat perubahan harus segera diintegrasikan. 40-hour week adalah jumlah jam kerja selama satu minggu. Hal ini sebenarnya tidak mutlak 40 jam, namun intinya adalah bahwa proses pengembangan tidak mengenal lembur, semua harus diselesaikan pada saat jam kerja. Semua masalah dan pekerjaan harus dioptimalkan pada waktu jam kerja tersebut. On-site customer, merupakan salah satu keunggulan bagi metodologi ini karena XP memerlukan satu orang dari pihak bisnis yang akan dibawa dalam proses pengembangan dari awal sampai berakhir. Hal ini akan cepat dalam mengatasi berbagai requirements yang mungkin akan berubah atau bertambah, namun akan mengurangi produktivitas pada pihak bisnis. Coding Standard adalah men-standarkan proses coding bagi programmer terutama karena hal ini berkaitan dengan practice pair programming. Kelebihan Pengembangan Perangkat Lunak Menggunakan Extreme Programming Permasalahan utama yang sering muncul dalam sebuah proyek pengembangan perangkat lunak adalah perubahan requirement yang begitu cepat. Hal ini terjadi sebagai akibat perubahanperubahan yang muncul baik pada aspek bisnis maupun teknologi yang berlangsung lebih cepat daripada proses pengembangan perangkat lunak itu sendiri. Extreme Programming (XP) adalah sebuah pendekatan pengembangan perangkat lunak yang mencoba meningkatkan efisiensi dan fleksibilitas dari sebuah proyek pengembangan perangkat lunak dengan mengkombinasikan berbagai ide sederhana. Bayangkan diri anda seorang project leader pada sebuah proyek pengembangan perangkat lunak. Setelah berbulan-bulan mengembangkan perangkat lunak dan proyek hampir selesai tibatiba saja di perusahaan klien anda terjadi perubahan kebijakan yang berimplikasi pada perangkat lunak anda. Betapa frustrasinya anda dan tim karena anda tidak bisa menolak perubahanperubahan yang diajukan klien tersebut karena kontrak anda mengakomodasi adanya perubahanperubahan tersebut. Hal tersebut seringkali terjadi disebabkan lamanya proses pengembangan perangkat lunak. Proses pengembangan perangkat lunak yang kompleks dapat menghabiskan waktu berbulan-bulan bahkan bertahun-tahun sebelum perangkat lunak dapat digunakan. Padahal seringkali dalam waktu tersebut terjadi perubahan besar pada situasi bisnis maupun teknologi yang bisa membuat perangkat lunak menjadi tidak relevan lagi. Extreme Programming (berikutnya akan disingkat sebagai XP) adalah sebuah pendekatan atau model pengembangan perangkat lunak yang mencoba menyederhanakan berbagai tahapan

6

dalam proses pengembangan tersebut sehingga menjadi lebih adaptif dan fleksibel. Walaupun menggunakan kata programming, XP bukan hanya berfokus pada coding tetapi meliputi seluruh area pengembangan perangkat lunak. Sejarah XP Proyek pengembangan perangkat lunak yang dianggap sebagai yang pertama kali menerapkan XP adalah C3 (Chrysler Comprehensive Compensation) Project dari Chrysler. Proyek ini adalah proyek penggajian 10.000 karyawan Chrysler, terdiri dari kira-kira 2000 class dan 30.000 method. Proyek yang dimulai pertengahan dekade 90-an ini terancam gagal karena rumitnya sistem yang dibangun dan kegagalan pada saat testing. Chrysler kemudian menyewa Kent Beck, seorang pakar software engineering yang di kemudian hari dikenal sebagai pencetus awal dari XP, untuk menyelamatkan proyek tersebut. Beck bersama rekannya Ron Jeffries dengan kewenangan yang diberikan oleh Chrysler melakukan berbagai perubahan di C3 Project untuk membuatnya lebih efisien, adaptif, dan fleksibel. Hal yang paling penting bagi mereka adalah harus mampu memenuhi permintaan utama dari Chrysler, untuk melakukan launching perangkat lunak tersebut dalam waktu tidak lebih dari dua tahun sejak saat Beck dikontrak. Beck dan Jeffries pada akhirnya berhasil menyelesaikan target Chrysler dengan menerapkan berbagai metode dalam proses pengembangan perangkat lunak tersebut. Kumpulan metode inilah yang kemudian dikenal sebagai model atau pendekatan XP dalam pengembangan perangkat lunak. Begitu sederhananya metode-metode tersebut sehingga bagi orang yang belum menerapkan, XP terlihat sebagai kumpulan ide lama yang terlalu sederhana dan tidak akan memberikan efek apapun pada sebuah proyek pengembangan perangkat lunak. Kent Beck sendiri mengakui dan menegaskan bahwa XP tidak selalu cocok untuk setiap proyek pengembangan perangkat lunak. Kelebihan XP adalah sesuai untuk digunakan pada proyek yang memiliki dynamic requirements. Proyek semacam ini memerlukan adaptasi cepat dalam mengatasi perubahan-perubahan yang terjadi selama proses pengembangan perangkat lunak. XP juga cocok untuk proyek dengan jumlah anggota tim tidak terlalu banyak (sekitar 10-20 orang) dan berada pada lokasi yang sama. Nilai Dasar Extreme Programming Berikut adalah nilai-nilai mendasar yang menjadi roh dari XP pada setiap tahapan proses pengembangan perangkat lunak: 1. Communication XP mengfokuskan pada hubungan komunikasi yang baik antar anggota tim. Para anggota tim harus membangun saling pengertian, mereka juga wajib saling berbagi

7

pengetahuan dan keterampilan dalam mengembangkan perangkat lunak. Ego dari para programer yang biasaanya cukup tinggi harus ditekan dan mereka harus membuka diri untuk bekerjasama dengan programer lain dalam menuliskan kode program. 2. Courage Para anggota tim dan penanggungjawab pengembangan perangkat lunak harus selalu memiliki keyakinan dan integritas dalam melakukan tugasnya. Integritas ini harus selalu dijaga bahkan dalam kondisi adanya tekanan dari situasi sekitar (misalnya oleh klien atau pemilik perusahaan). Untuk dapat melakukan sesuatu dengan penuh integritas terlebih dahulu para anggota tim harus terlebih dahulu memiliki rasa saling percaya. Rasa saling percaya inilah yang coba dibangun dan ditanamkan oleh XP pada berbagai aspeknya. 3. Simplicity Lakukan semua dengan sederhana. Hal tersebut adalah salah satu nilai dasar dari XP. Gunakan method yang pendek dan simpel, jangan terlalu rumit dalam membuat desain, hilangkan fitur yang tidak ada gunanya, dan berbagai proses penyederhanaan lain akan selalu menjadi nilai utama dari setiap aspek XP. 4. Feedback Berikan selalu feedback kepada sesama anggota tim maupun pihak-pihak lain yang terlibat dalam pengembangan perangkat lunak. Utarakan selalu pikiran anda dan diskusikan kesalahan-kesalahan yang muncul selama proses pengembangan. Dengarkan selalu pendapat rekan yang lain, dengan adanya feedback inilah seringkali kita menyadari bagian mana yang salah atau bisa ditingkatkan lagi dari perangkat lunak yang dikembangkan. 5. Quality Work Semua nilai di atas berujung pada sebuah kondisi di mana kita melakukan pekerjaan dengan berkualitas. Dengan proses yang berkualitas maka implikasinya akan muncul pula perangkat lunak yang berkualitas sebagai hasil akhirnya. Aspek Dasar Extreme Programming Aspek dasar XP terdiri dari berbagai teknik atau metode yang diterapkan Beck dan Jeffries pada C3 Project. Teknik-teknik tersebut dapat diamati pada gambar berikut ini:

8

9

1.

The Planning Game Pendekatan XP dalam perencanaan sangat mirip dengan metode yang diterapkan pada RAD (Rapid Application Development). Proses pendek dan cepat, mengutamakan aspek teknik, memisahkan unsur bisnis dengan unsur teknis dan pertemuan intensif antara klien dengan developer. Pada XP proses ini menggunakan terminologi game karena Beck menyarankan untuk menggunakan teknik score card dalam menentukan requirements. Semakin sulit aspek teknis yang dibutuhkan semakin tinggi pula skor pada kartu rencana tersebut.

2.

Small Releases Setiap release dilakukan dalam lingkup sekecil mungkin pada XP. Setiap developer menyelesaikan sebuah unit atau bagian dari perangkat lunak maka hasil tersebut harus segera dipresentasikan dan didiskusikan dengan klien. Jika memungkinkan untuk menerapkan unit tersebut pada perusahaan, hal itu juga dapat dilakukan sekaligus sebagai tes awal dari penerapan keseluruhan sistem. Kendati demikian hal ini tidak selalu perlu dilakukan karena harus dihitung terlebih dahulu sumberdaya yang dibutuhkan. Apakah lebih menguntungkan langsung melakukan tes terhadap unit tersebut atau melakukan tes setelah unit tersebut terintegrasi secara sempurna pada sistem.

3.

Metaphor Metaphor pada dasarnya sama dengan arsitektur perangkat lunak. Keduanya menggambarkan visi yang luas terhadap tujuan dari pengembangan perangkat lunak. Beck sendiri seperti para penandatangan Agile Manifesto lainnya bercita-cita menyederhanakan proses pengembangan perangkat lunak yang saat ini sudah dianggap terlalu rumit. Arsitektur yang saat ini banyak berisi diagram dan kode semacam UML dianggap terlalu rumit untuk dimengerti, terutama oleh klien. Metaphor, walaupun mirip dengan arsitektur lebih bersifat naratif dan deskriptif. Dengan demikian diharapkan komunikasi antara klien dengan developer akan berlangsung lebih baik dan lancar dengan penggunaan metaphor.

4.

Simple Design Sebagai salah seorang penandatangan Agile Manifesto, Beck adalah seorang yang tidak

10

menyukai desain yang rumit dalam sebuah pengembangan perangkat lunak. Tidak heran jika dia memasukkan Simple Design sebagai salah satu unsur XP. Pada XP desain dibuat dalam lingkup kecil dan sederhana. Tidak perlu melakukan antisipasi terhadap berbagai perubahan di kemudian hari. Dengan desain yang simpel apabila terjadi perubahan maka membuat desain baru untuk mengatasi perubahan tersebut dapat dengan mudah dilakukan dan resiko kegagalan desain dapat diperkecil. 5. Refactoring Refactoring adalah salah satu aspek paling khas dari XP. Refactoring seperti didefinisikan oleh Martin Fowler adalah Melakukan perubahan pada kode program dari perangkat lunak dengan tujuan meningkatkan kualitas dari struktur program tersebut tanpa mengubah cara program tersebut bekerja. Refactoring sendiri sangat sesuai untuk menjadi bagian XP karena Refactoring mengusung konsep penyederhanaan dari proses desain maupun struktur baris kode program. Dengan Refactoring tim pengembang dapat melakukan berbagai usaha untuk meningkatkan kualitas program tanpa kembali mengulang-ulang proses desain. Fowler adalah salah satu kolega dekat dari Kent Beck karena itu tidak mengherankan bahwa cara berpikir mereka terhadap proses pengembangan perangkat lunak sangat mirip satu dengan lainnya. 6. Testing XP menganut paradigma berbeda dalam hal tes dengan model pengembangan perangkat lunak lainnya. Jika pada pengembangan perangkat lunak lainnya tes baru dikembangkan setelah perangkat lunak selesai menjalani proses coding maka pada XP tim pengembang harus membuat terlebih dahulu tes yang hendak dijalani oleh perangkat lunak. Berbagai model tes yang mengantisipasi penerapan perangkat lunak pada sistem dikembangkan terlebih dahulu. Saat proses coding selesai dilakukan maka perangkat lunak diuji dengan model tes yang telah dibuat tersebut. Pengetesan akan jauh lebih baik apabila dilakukan pada setiap unit perangkat lunak dalam lingkup sekecil mungkin daripada menunggu sampai seluruh perangkat lunak selesai dibuat. Dengan memahami tahap ini kita dapat melihat bahwa siklus pada XP adalah requirement analysis test code design. Sekilas terlihat hal ini tidak mungkin dilakukan tetapi pada kenyataannya memang gambaran inilah yang paling dapat menjelaskan tentang XP. 7. Pair Programming Pair programming adalah melakukan proses menulis program dengan berpasangan. Dua orang programer saling bekerjasama di komputer yang sama untuk menyelesaikan sebuah unit. Dengan melakukan ini maka keduanya selalu dapat berdiskusi dan saling melakukan koreksi apabila ada kesalahan dalam penulisan program. Aspek ini mungkin akan sulit dijalankan oleh para programer yang memiliki ego tinggi dan sering tidak

11

nyaman untuk berbagi komputer bersama rekannnya. 8. Collective Ownership Tidak ada satupun baris kode program yang hanya dipahami oleh satu orang programer. XP menuntut para programer untuk berbagi pengetahuan untuk tiap baris program bahkan beserta hak untuk mengubahnya. Dengan pemahaman yang sama terhadap keseluruhan program, ketergantungan pada programer tertentu ataupun berbagai hambatan akibat perbedaan gaya menulis program dapat diperkecil. Pada level yang lebih tinggi bahkan dimungkinkan para programer dapat bertukar unit yang dibangunnya. 9. Coding Standards Pair programming dan collective ownership hanya akan dapat berjalan dengan baik apabila para programer memiliki pemahaman yang sama terhadap penulisan kode program. Dengan adanya coding standards yang telah disepakati terlebih dahulu maka pemahaman terhadap program akan menjadi mudah untuk semua programer dalam tim. Hal ini dapat diterapkan sebagai contoh pada penamaan variabel dan penggunaan tipe data yang sama untuk tiap elemen semua record atau array pada program. 10. Continous Integration Melakukan build setiap hari kerja menjadi sebuah model yang disukai oleh berbagai tim pengembang perangkat lunak. Hal ini terutama didorong oleh keberhasilan penerapan sistem ini oleh Microsoft dan telah sering dipublikasikan. Dengan melakukan build sesering mungkin berbagai kesalahan pada program dapat dideteksi dan diperbaiki secepat mungkin. Apabila banyak tim pengembang perangkat lunak meyakini bahwa build sekali sehari adalah minimum maka pada XP hal tersebut adalah maksimum. Pada XP tim disarankan untuk melakukan build sesering mungkin misalnya setiap 4 jam atau bahkan lebih cepat lagi. 11. 40-hours Week Beck berpendapat bekerja 8 jam sehari dan 5 hari seminggu adalah maksimal untuk tiap programer. Lebih dari itu programer akan cenderung membuat berbagai error pada baris-baris kode programnya karena kelelahan. 12. On-Site Customer Sebuah pendekatan klasik, di mana XP menganjurkan bahwa ada anggota dari klien yang terlibat pada proses pengembangan perangkat lunak. Yang lebih penting lagi ia harus ada di tempat pemrogaman dan turut serta dalam proses build dan test yang dilakukan. Apabila ada kesalahan dalam pengembangan diharapkan klien dapat segera memberikan masukan untuk koreksinya.

12

Prinsip Agility pada XP yang mengacu pada Agile Methods Agile Alliance mendefinisikan 12 prinsip untuk mencapai proses yang termasuk dalam agility:

1. Prioritas tertinggi adalah memuaskan pelanggan melalui penyerahan awal dan berkelanjutan perangkatlunak yang bernilai. 2. Menerima perubahan requirements meskipun perubahan tersebut diminta pada akhir pengembangan. 3. Memberikan perangkat lunak yang sedang dikerjakan dengan sering, beberapa minggu atau beberapa bulan, dengan pilihan waktu yang paling singkat. 4. Pihak bisnis dan pengembang harus bekerja sama setiap hari selama pengembangan berjalan. 5. Bangun proyek dengan individu-individu yang bermotivasi tinggi dengan memberikan lingkungan dan dukungan yang diperlukan, dan mempercayai mereka sepenuhnya untuk menyelesaikan pekerjaannya. 6. Metode yang paling efektif dan efisien dalam menyampaikan informasi kepada tim pengembangan adalah dengan komunikasi langsung face-to-face. 7. Perangkat lunak yang dikerjakan merupakan pengukur utama kemajuan. 8. Proses agile memberikan proses pengembangan yang bisa ditopang. Sponsor, pengembang, dan user harus bisa menjaga ke-konstanan langkah yang tidak pasti. 9. Perhatian yang terus menerus terhadap rancangan dan teknik yang baik meningkatkan agility. 10. Kesederhanaan seni untuk meminimalkan jumlah pekerjaan adalah penting. 11. Arsitektur, requirements, dan rancangan terbaik muncul dari tim yang mengatur sendiri. 12. Pada interval reguler tertentu, tim merefleksikan bagaimana menjadi lebih efektif, kemudian menyesuaikannya.

Selain hal tersebut XP memiliki empat values yang mencerminkan kesederhanaan dalam proses pengembangannya seperti disebutkan oleh Kent BeckKeempat values tersebut adalah : Komunikasi (Communication) Kesederhanaan (Simplicity) Umpan Balik (Feedback) Keberanian (Courage)

13