A Knowledge Management Framework for Agile Software Development Teams : A Critique Paper. Rochsyid Anggara September 2016 Abstrak

dokumen-dokumen yang mirip
Knowledge Management Tools

Pengembangan Sistem Informasi

Pengembangan Sistem Informasi

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB III LANDASAN TEORI

01/10/2010. Pertemuan 1. Process. People. Technology

21/09/2011. Pertemuan 1

DASAR-DASAR PERANCANGAN PERANGKAT LUNAK

KNOWLEDGE MANAGEMENT PENGERTIAN DAN MANFAATNYA PADA ORGANISASI. Oleh :

BAB II TINJAUAN PUSTAKA

Metodologi Pengembangan Sistem Informasi

STMIK AMIKOM YOGYAKARTA

KNOWLEDGE MANAGEMENT. Strategi dan Pengukuran Knowledge Management. Rani Puspita D, M.Kom

STRATEGI & PENGUKURAN MANAJEMEN PENGETAHUAN

Taryana Suryana. M.Kom

DASAR SISTEM DALAM BISNIS

MANAGING RISK IN SOFTWARE PROCESS IMPROVEMENT: AN ACTION RESEARCH APPROACH

Analisis Meningkatkan Kinerja Dosen Menggunakan Knowledge Management System

Sistem Pakar. Tahap-tahap Pengembangan Sistem Pakar. Kelas A & B. Jonh Fredrik Ulysses

KUESIONER ANALISA KEBUTUHAN PENGGUNA PADA SISTEM KNOWLEDGE MANAGEMENT (KM)

Pengantar. Sekilas E-Bisnis. Fungsi E-Bisnis. Komponen-komponen E-Bisnis. Hubungan E-Bisnis dengan E-Commerce

STMIK AMIKOM YOGYAKARTA

Rekayasa Perangkat Lunak. Tujuan

ANALISA & PERANCANGAN SISTEM

Perlunya Teknologi Informasi

KNOWLEDGE MANAGEMENT DALAM ORGANISASI BISNIS. Tugas Mata Kuliah. Teori Organisasi dan Manajemen Pengetahuan. Dr. Ir. Arif Imam Suroso, MSc(CS) Oleh:

Software Development Life Cycle (SDLC)

Developing an Enterprise Architecture Management Plan

BAB I PENDAHULUAN 1.1 Latar Belakang

Sharing vision mempunyai penekanan membangun dan mengasah kemampuan. analisis setiap individu. Oleh karena itu, data dan informasi kondisi perusahaan

BAB I PENDAHULUAN. media pembelajaran itu adalah e-learning. E-learning merupakan suatu teknologi informasi

Kelompok Keilmuan Rekayasa Perangkat Lunak oleh Ayi Purbasari, ST., MT. If-unpas Sabtu, 9 Februari 2013

Bahan Ajar Rekayasa Perangkat Lunak Agile Software Development Disiapkan oleh Umi Proboyekti

BAB II LANDASAN TEORI. Bab ini akan menjelaskan tentang landasan teori yang menjadi dasar dalam pelaksanaan kegiatan tugas akhir.

BAB 1 PENDAHULUAN 1.1 Latar Belakang

BAB 2 BERSAING DENGAN MENGGUNAKAN TEKNOLOGI INFORMASI DASAR-DASAR KEUNGGULAN STRATEGIS

17/12/2011. Manajemen Pengetahuan. tidak selalu penting Apa yang penting tidak selalu bisa diukur

Materi II Overview Sistem Informasi. Sistem Informasi Manajemen Dr. Hary Budiarto

REKAYASA PERANGKAT LUNAK. Ramadhan Rakhmat Sani, M.Kom

Bab III Analisis Faktor Knowledge Management

KNOWLEDGE MANAGEMENT. Siklus Knowledge Management. Pertemuan 2

MENGAPA PROYEK PERANGKAT LUNAK GAGAL ( PENERAPAN MANAJEMEN RESIKO DALAM PROYEK PERANGKAT LUNAK )

1 BAB III METODOLOGI PENELITIAN. collaborative filtering ini digambarkan pada gambar 3.1

RANGKUMAN SIM BAB 13 Mengembangkan Sistem Informasi (Building Information Systems)

SISTEM INFORMASI MANAJEMEN

PERANGKAT LUNAK & REKAYASA PERANGKAT LUNAK

Review Rekayasa Perangkat Lunak. Nisa ul Hafidhoh

TINJAUAN JURNAL HUBUNGAN KNOWLEDGE SHARING BEHAVIOR DAN INDIVIDUAL INNOVATION CAPABILITY

BAB I Pendahuluan. Latar Belakang. Kondisi Operasi Pabrik PT Pupuk Kaltim

PENERAPAN KNOWLEDGE MANAGEMENT SYSTEM SEBAGAI SARANA PERTUMBUHAN ORGANISASI PADA PT INTIMAP

BAB 1 PENDAHULUAN 1.1. Latar Belakang Masalah PT. ARINDO PRATAMA (PT. AP) merupakan sebuah perusahaan nasional yang berdiri pada tahun 1993 di

BAB 2 TELAAH PUSTAKA 2.1 Manajemen Kinerja

TOPIK PENELITIAN MAHASISWA PRODI S-1 SISTEM INFORMASI UNIVERSITAS U'BUDIYAH INDONESIA TAHUN AJARAN 2015/2016

Extreme Programming Melakukan Pengembangan Perangkat Lunak dengan Lebih Sederhana

PERANCANGAN SISTEM INFORMASI MANAJEMEN PERPUSTAKAAN MENGGUNAKAN POLA MODEL-VIEW- CONTROLLER (MVC)

Tujuan Perkuliahan. PENGANTAR RPL (Pert. 2 chapter 1 Pressman) Agenda. Definisi Software (Perangkat Lunak) Lunak) 23/09/2010

BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah

BAB 1. PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang

STMIK MDP ANALISIS DAN PERANCANGAN SISTEM INFORMASI CUSTOMER RELATIOSHIP MANAGEMENT PADA CV. ASIA LAB PALEMBANG

BAB V KESIMPULAN. Pada bab ini akan menyatukan hasil temuan dalam penelitian ini. Pada bagian

INFORMATION SYSTEMS AS A REFERENCE DISCIPLINE FOR NEW PRODUCT DEVELOPMENT

BAB 1 PENDAHULUAN 1.1 Latar Belakang

BAB II TINJAUAN PUSTAKA. Pada bab ini diberikan definisi-definisi, istilah-istilah yang digunakan dalam

BAB I BAB 1 PENDAHULUAN

BAB I PENDAHULUAN. penting dalam kehidupan manusia. Voting digunakan mulai dari tingkat

BAB V SIMPULAN, IMPLIKASI, DAN REKOMENDASI

SOFTWARE PROJECT MANAGEMENT

Knowledge Management Solution untuk Divisi Operasional: Studi Kasus PT. XYZ

PENDAHULUAN 1.1 Latar Belakang

Nama : Rendi Setiawan Nim :

SATUAN ACARA PERKULIAHAN

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN I.1 Latar Belakang

SDLC SYSTEM DEVELOPMENT LIFE CYCLE. Materi ke-2. Pengembangan Sistem Informasi 5KA28 // 4KA14

Apakah yang dimaksud Tangguh?

MAKALAH REKAYASA PERANGKAT LUNAK ( SIKLUS HIDUP PERANGKAT LUNAK )

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB II LANDASAN TEORI

BAB I PENDAHULUAN. dengan penggunaan perangkat keras komputer ( hardware), program aplikasi

BAB 1 PENDAHULUAN. 1.1 Latar Belakang. Era globalisasi yang semakin maju saat ini menyebabkan terjadinya

BAB III ANALISIS III.1 Interaksi Sosial sebagai Dasar Knowledge Management

BAB 1 PENDAHULUAN. PT Muara Tour adalah perusahaan yang bergerak di bidang layanan Tours dan Travel

BAB I PENDAHULUAN. hal proses pengolahan data, baik itu data siswa, guru, administrasi sekolah maupun data

Penggunaan Metode Pemrograman Berorientasi Objek Dalam Sistem Informasi Akademik Pada SMP Negeri 1 Pengadegan

RANCANG BANGUN MOBILE GIS (GEOGRAPHIC INFORMATION SYSTEM) PENCARIAN LOKASI ATM BNI DI SEMARANG PADA MEDIA PONSEL BERBASIS ANDROID

Sistem Informasi Geografis Sekolah Berbasis Android

BAB III DECISION SUPPORT SYSTEM

Process Life Cycle Models

BAB II LANDASAN TEORI

BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah

III. METODOLOGI PENGEMBANGAN. Adapun peralatan yang digunakan pada penelitian adalah sebagai berikut:

Transkripsi:

A Knowledge Management Framework for Agile Software Development Teams : A Critique Paper. Rochsyid Anggara September 2016 Abstrak Knowledge Managemant (KM) adalah kunci untuk keberhasilan setiap organisasi perangkat lunak. KM dalam pengembangan perangkat lunak telah menjadi pusat perhatian bagi para peneliti karena potensinya untuk meningkatkan produktivitas. Namun, pengetahuan tidak hanya disimpan di penyimpanan (repository) tetapi juga berbagi dalam ruang kantor. tim pengembangan perangkat lunak Agile menggunakan manfaat dari ruang bersama untuk mendorong penciptaan pengetahuan. Paper yang berjudul A Knowledge Management Framework for agile software Development Teams mencoba untuk mengusulkan framework untuk capturing tacit yang di lakukan oleh praktisi metodologi Agile Sofware Development. meskipun penelitian ini menarik dan menghasilkan temuan baru yang berkontribusi terhadap penelitian KM, terdapat kritik terkait dengan metode penilitian, pemilihan pendekatan, serta penerapan metode Agile dalam frame Knowlege Management yang diusulkan. Keywords: Knowledge Management, pair programming, Agile Software Development, critique 1. Pendahuluan Pengetahuan dianggap sebagai aset kompetitif utama organisasi, yang memungkinkan perusahaan untuk menjadi produktif dan memberikan produk dan layanan yang kompetitif. Tantangan utama KM adalah untuk mentransfer pengetahuan implisit ke pengetahuan eksplisit, serta mentransfer pengetahuan eksplisit dari individu ke kelompok dalam organisasi. pengembang perangkat lunak memiliki pengetahuan yang sangat berharga yang berkaitan dengan pengembangan produk, proses pengembangan perangkat lunak, manajemen proyek dan teknologi. Pekerjaan pengembangan perangkat lunak membutuhkan berbagai bentuk eksplisit serta pengetahuan implisit. Pengetahuan ini bersifat dinamis dan berkembang dengan teknologi, budaya organisasi, dan perubahan kebutuhan praktek pengembangan perangkat lunak organisasi [1]. pengetahuan Software disimpan dalam dokumen, proses, praktek, teknologi, dan artefak proyek. Software ini dikembangkan dengan menggunakan metode tradisional didokumentasikan dengan baik sedangkan metode tangkas mendukung kerja perangkat lunak dokumentasi lebih komprehensif. Dalam metodologi pengembangan perangkat lunak tradisional, pengetahuan eksplisit dan dapat dengan mudah ditangkap sedangkan metodologi tangkas berkaitan

dengan pengetahuan tacit. pengetahuan tacit disimpan dalam pikiran orang-orang dalam bentuk memori, keterampilan, pengalaman, pendidikan, imajinasi dan kreativitas. Oleh karena itu beberapa penelitian telah mengusulkan Framework untuk Knowledge management dalam development perangkat lunak. Hal tersebut telah mendasari pembuatan paper yang berjudul a Knowledge Management Framework for Agile Software Development Team, yang ditulis oleh R.K. Kavitha dan M.S. Irfan Ahmed[2]. Paper ini bertujuan untuk membuat kerangka kerja untuk mengelola pengetahuan yang dihasilkan selama proses Agile Software development. Penelitian ini menggunakan metode penelitian kualitatif. Teknik yang digunakan adalah mengembangakan teori-teori yang ada dari penelitian sebelumnya, penelitian ini mengungkapkan bahwa Knowledge management pada agile software development masih terbatas, karena tidak adanya dokumentasi eksplisit dalam agile Software development yang menyebabkan semua masalah antara lain : peniliti menemukan diri mereka menghabiskan banyak waktu berulang kali menjawab pertanyaan yang sama, anggota project menemukan diri mereka dalam situasi di mana mereka tahu bahwa mereka memiliki masalah tertentu sebelumnya, tapi tidak ingat solusinya. Pengetahuan hilang secepat pengembang mengalami meninggalkan proyek atau perusahaan, komunikasi informal tidak dapat berfungsi, Kurang dukungan untuk usabilitas dan Kurang kontribusi terhadap pengetahuan organisasi. Topik yang angkat oleh penulis dalam paper ini sangat menarik. Penelitian ini menghasilkan temuan baru berupa framework untuk capturing tacit Knowledge. Paper ini memperkenalkan berkerja pada pengembangan framework untuk capture dan distribution knowledge yang dihasilkan selama menggunakan metodologi pengembangan perangkat lunak. Pendekatan ini memfasilitasi proses pembelajaran organisasi tambahan untuk captured dan mempertahankan pengetahuan tentang sokumentasi/informasi yang sebenarnya di butuhkan. Secara umum, penelitian ini memberikan kontribusi dalam menyediakan framework knowledge management untuk Agile software development team dan menyediakan dasar untuk mengembangkan penelitian lebih lanjut dalam memahami seberapa jauh pengetahuan disimpan akan berguna untuk para pengembang dan organisasi. Namun karena penelitian ini pada agile software development team dan tidak diterangkan metode yang mana, maka hasil penelitian ini tidak bisa di terapkan pada berbagai metode agile development. Selain itu metodologi yang digunakan pada penelitian ini hanya pada pengembangan literatur yang ada dan tidak ada experiment dalam penerapannya, oleh karena itu penelitian selanjutnya sebaiknya dilakukan dengan melalui experiment dan validitas framework yang diajukan untuk pemahaman lebih lanjut terhadap pengembangan captured knowledge. Paper ini juga mempunyai kelemahan lain terkait framework yang di ajukan dengan KM aspek.

2. Ringkasan Secara umum, paper ini terdiri atas bagian pendahuluan, Wroking of KM, KM Challenges in Agile Software Development, Related Work, Framework yang diusulkan, kesimpulan dan usulan penelitian dimasa depan. Pada bagian pendahuluan, penulis menjelaskan secara singkat mengenai Knowledge bagi organisasi pengembang perangkat lunak. Manajemen pengetahuan telah menjadi subyek selama beberapa tahun terakhir. literatur dan penelitian tentang topik telah berkembang dan perusahaan dan organisasi telah menyadari bahwa keberhasilan sering ditentukan oleh kemampuan seseorang untuk membuat, menyebarkan, dan mewujudkan pengetahuan dalam produk dan layanan. Kesadaran ini telah menyebabkan meningkatnya minat dalam memeriksa cara-cara di mana pengetahuan dapat secara efektif menciptakan, diidentifikasi, dikodifikasikan, disebarluaskan, dan dipertahankan. Salah satu tantangan terbesar dari organisasi pengetahuan adalah untuk mengekstrak pengetahuan tacit yang dimiliki oleh karyawan pengetahuan mereka, sehingga untuk menerapkan pengetahuan yang benar di tempat yang tepat bila diperlukan dan untuk mendorong inovasi. metodologi perangkat lunak Agile memiliki beberapa praktek inbuilt yang memfasilitasi transmisi pengalaman dan pengetahuan dalam organisasi. Pair programming adalah praktek seperti yang menjanjikan untuk mengatasi beberapa tantangan yang dihadapi oleh Knowledge Management [3]. pada bagian working of KM, penulis menjelaskan tentang knowlege repository. Pengetahuan repositori adalah database yang mengatur dan membuat tersedia untuk semua karyawan, informasi dasar tentang produk, jasa, pelanggan, dan proses bisnis organisasi. repositori berfungsi sebagai Direktori sumber pengetahuan yang dapat digunakan oleh karyawan untuk mencari pengetahuan khusus bila diperlukan Direktori sumber belajar yang dapat digunakan oleh karyawan untuk mencari tahu di mana mereka dapat belajar pengetahuan dan keterampilan baru Kelompok ware yang memfasilitasi komunikasi dan kolaborasi antar karyawan Hal ini ditemukan bahwa hampir 40% dari pengetahuan organisasi disimpan di kepala karyawan. Pengetahuan ini akan berguna dalam banyak cara untuk organisasi dan mendukung usabilitas, belajar, pengambilan keputusan dll hilang ketika orang pindah ke peran yang lebih baru, atau meninggalkan organisasi. Pada bagian ketiga, penulis pada intinya menerangkan tentang masalah dan research questions dan tentang pair programing approach. Tantangan utama KM dalam pengembangan perangkat lunak yang mentransfer pengetahuan implisit ke pengetahuan eksplisit, serta mentransfer pengetahuan eksplisit dari individu ke kelompok dalam

organisasi [4]. pair programing terdiri dari dua programer bekerja sideby-sisi pada satu komputer, berkolaborasi sama desain, algoritma, kode, atau tes. Salah satu programmer adalah driver, mengendalikan perangkat input untuk menghasilkan desain atau kode. Programmer lain adalah navigator, terus-menerus dan secara aktif memeriksa pekerjaan driver. navigator jam tangan untuk cacat, berpikir alternatif, terlihat sumber daya, menganggap implikasi strategis, dan mengajukan pertanyaan-pertanyaan. Melalui kegiatan ini, navigator memberikan kontribusi dengan mengidentifikasi kekurangan taktis dan strategis dalam desain atau kode. Pertanyaan penelitian berikut diuraikan dari isu-isu yang dibahas di atas. 1. Bagaimana manajemen pengetahuan dicapai dalam pengembangan perangkat lunak dengan dokumentasi setidaknya? 2. Sejauh mana praktek tangkas seperti pemrograman pasangan memberikan kontribusi untuk KM efektif? 3. Bagaimana untuk menangkap pengetahuan tacit yang dihasilkan selama komunikasi informal? pada bagian proposed framework, merupakan hasil penelitian dari penulis. paper ini memperkenalkan bekerja pada pengembangan kerangka kerja untuk menangkap dan distribusi pengetahuan yang dihasilkan saat menggunakan metodologi pengembangan perangkat lunak dimana anggota tim baik dapat collocated atau didistribusikan. Pendekatan ini memfasilitasi proses pembelajaran organisasi tambahan untuk menangkap dan mempertahankan pengetahuan tentang apa yang dokumentasi / informasi yang sebenarnya dibutuhkan. Kerangka kerja ini menggambarkan seperangkat alat yang terintegrasi yang menyediakan dukungan untuk menangkap, menyimpan dan menyebarluaskan pengetahuan Kerangka yang diusulkan memungkinkan berbagi pengetahuan informal. Para anggota bekerja biasanya dalam lingkungan kolaboratif dihubungkan oleh internet / intranet. Kerangka kerja ini menyediakan pengembang dengan seperangkat alat yang membantu dalam mengumpulkan pengetahuan. Pengalaman yang dihasilkan terkait dengan coding, debugging, logika, praktek, fakta, bukti konsep dll dimasukkan melalui antarmuka oleh anggota dan dikumpulkan dalam pengalaman perekam. Peta Ide membantu untuk menyimpan informasi terstruktur terkait dengan proyek seperti catatan kerja, untuk melakukan daftar dll Informasi juga dapat diposting di sebuah forum diskusi. Informasi yang dikumpulkan oleh pengalaman recorder, peta ide dan forum dapat terstruktur dan disimpan dalam repositori pengetahuan.

Fig1. Proposed Framework for capturing tacit Knowledge during Agile Software development. Paper ini didasarkan pada asumsi bahwa KM adalah bagian penting dari proyek perangkat lunak. Secara khusus, peneliti bertujuan untuk menguji integrasi KM dan pengembangan perangkat lunak tangkas yang membantu untuk mengatasi kesulitan yang ada saat diperkenalkan dan diterapkan. Pasangan dari KM dan tangkas pengembangan perangkat lunak telah diakui oleh berbagai peneliti. Dalam paper ini penulis telah menyajikan kerangka untuk menangkap pengetahuan tacit dengan mengadopsi metodologi pengembangan perangkat lunak tangkas. studi lebih lanjut yaitu manajemen pengetahuan untuk tim agile software development dalam memahami seberapa jauh pengetahuan disimpan akan berguna untuk para pengembang dan organisasi. 3. KRITIK Topik yang di teliti oleh penulis dalam paper ini sangat menarik karena penulis mencoba untuk mentransfer tacit knowledge kedalam knowledge reporsitory dengan diterapkan pada Agile Software Development team. Hal ini menunjukan bahwa penelitian ini memberikan kontribusi dalam menyediakan framework untuk penelitian selanjutnya dalam bidang pengembangan framework yang dterapkan pada metodology pengembangan Perangkat lunak yang lainnya. Namun selain kelebihan diatas, paper ini juga memiliki beberpa kelemahan yang harus diperhatikan. Penelitian ini merupakan penelitian yang mengatasi masalah pada knowledge management yang diterapkan pada pengembangan perangkat lunak agile tim yang mana sangat berguna sekali bagi perusahaan atau organisasi dalam mendapatkan, membuat, menyebarkan dan menggunakan knowledge organisasi secara efektif. Proses-proses tersebut sangat menggambarkan bagaimana tacit Knowledge bisa di transfer dengan 4 tahap, yaitu Colaboration space, information collected (excperience recorder, Idea map, Forums), FAQ/Lesson Learned, Knowledge Reporsitory. Namun penelitian tersebut tidak menerangkan metodology agile software development yang mana yang bisa digunakan oleh

framework ini karena dalam agile software metodology banyak sekali teknik-teknik yang bisa digunakan, Popular agile methods antara lain Extreme Programming, Feature-Driven Development, Crystal Methods, Scrum, Dynamic Systems Development, and Adaptive Software Development. Dalam hal ini Metodologi pengembangan perangkat lunak agile ini membangkitkan semangat besar di antara praktisi dan peneliti [5]. Selain itu metodologi yang digunakan pada penelitian ini dengan mengembangan literatur yang ada dengan menerangkan framework-framework yang dijelaskan oleh peneliti secara sangat singkat., sehingga penelitian-penelitian sebelumnya menjadi dasar peneliti mengembangan framework Knowledge management untuk agile software development tim yang sangat bermanfaat sekali bagi organisasi di bidang IT, namun penelitian ini dalam penerapan framework KM nya tidak ada experiment atau studi kasus, oleh karena itu penelitian selanjutnya dilakukan melalui experiment dan validitas frameworknya yang diajukan untuk pemahaman lebihlanjut terhadap pengembangan captured tacit knowledge. Paper ini juga menerangkan tentang knowledge management in agile software engineering yang mana sangat bermanfaat sekali bagi perkembangan software engineering kedepan yang mengutamakan aspek Knowledge management, dalam peneiltian ini penulis menggunakan pendekatan pair programing sebagai landasan untuk efektifitas Knowledge management yang hanya menggunakan 2 anggota tim pemogram saja, namun dalam kenyatan prakteknya yang bertujuan untuk mengeksplorasi pengembangan KM Berdasarkan Hazzan dan Dubinsky [6] ada 7 aspek yang digunakan yaitu: whole team, roles, Collaborative workspace, Stand-up meetings, Measures, Customer collaboration dan Pair p rogr am m in g. 4. KESIMPULAN Pada dasarnya paper ini menghasilkan temuan baru yang sangat penting bagi pengembangan capturing tacit Knowledge yang mana penelitian tersebut banyak di minati oleh peneliti-peneliti di bidang Knowledge Management. Knowledge Management Framework ini hanya di lakukan pada tim Agile software development yang sayang sekali tidak bisa di detailkan secara jelas metode agile mana yang bisa diterapkan. Penilitian ini pada dasarnya sangat berguna sekali bagi penelitian untuk kedepannya yaitu seberapa jauh Knowledge disimpan akan berguna untuk para pengembang dan organisasi. Selain itu metodologi yang digunakan pada penelitian ini hanya pada pengembangan literatur yang ada dan tidak ada experiment dalam penerapannya, oleh karena itu penelitian selanjutnya sebaiknya dilakukan dengan melalui experiment dan validitas framework yang diajukan untuk pemahaman lebih lanjut terhadap pengembangan capturing tacit knowledge.

5. REFERENSI [1] A. Aurum, R. Jeffery, C. Wohlin, and M. Handzic, (Ed.), Managing Software Engineering Knowledge, Springer-Verlag, New York, 2003. [2] R. Kavitha and I. Ahmed, A knowledge management framework for agile software development teams, in Process Automation, Control and Computing (PACC), 2011 International Conference on. IEEE, 2011, pp. 1 5. [3] Mustafa Ally, Fiona Darroch, and Mark Toleman, A Framework for Understanding the Factors Influencing Pair Programming Success, XP 2005, Sheffield, UK, pp.18 23 [4] Meira Levy, Orit Hazzan, Knowledge Management in Practice:The Case of Agile Software Development, IEEE software, 2009, pp. 60-65 [5] D. Turk, R. France and B. Rumpe, Assumptions underlying agile development processes, Journal of database management, 16(4), 2005, pp. 62-87. [6] O. Hazzan, and Y. Dubinksy, Agile Software Engineering, Undergraduate Topics in Computer Science (UTiCS) Series, Springer, 2008.