Tuesday, March 24, 2015

Pengembangan perangkat lunak Adaptive (ASD)
Pengembangan perangkat lunak Adaptive (ASD) adalah proses pengembangan perangkat lunak yang tumbuh dari pengembangan aplikasi yang cepat bekerja dengan Jim Highsmith dan Sam Bayer. Ini mewujudkan prinsip bahwa adaptasi terus menerus dari proses untuk pekerjaan di tangan adalah keadaan normal urusan.
Pengembangan perangkat lunak Adaptive menggantikan tradisional terjun siklus dengan serangkaian berulang berspekulasi, berkolaborasi, dan belajar siklus. Siklus dinamis ini memberikan pembelajaran dan adaptasi terhadap keadaan yang muncul dari proyek. Ciri-ciri siklus hidup ASD adalah bahwa itu adalah misi fokus, fitur berbasis, berulang , timeboxed , risiko didorong, dan mengubah toleran.
Kata berspekulasi mengacu pada paradoks perencanaan - itu lebih mungkin untuk menganggap bahwa semua pemangku kepentingan comparably salah untuk aspek-aspek tertentu dari misi proyek, ketika mencoba untuk mendefinisikannya Kolaborasi mengacu pada upaya untuk menyeimbangkan pekerjaan berdasarkan bagian diprediksi. lingkungan (perencanaan dan membimbing mereka) dan beradaptasi dengan campuran sekitarnya pasti dari perubahan yang disebabkan oleh berbagai faktor, seperti teknologi, persyaratan, stakeholder, vendor perangkat lunak. Siklus belajar, menantang semua pemangku kepentingan, didasarkan pada iterasi pendek dengan desain, membangun dan pengujian. Selama iterasi ini pengetahuan dikumpulkan dengan membuat kesalahan kecil berdasarkan asumsi yang salah dan memperbaiki kesalahan-kesalahan, sehingga mengarah ke pengalaman yang lebih besar dan akhirnya penguasaan dalam domain masalah.

Metode pengembangan sistem dinamis (DSDM)

Metode pengembangan sistem dinamis (DSDM) adalah tangkas kerangka proyek pengiriman, terutama digunakan sebagai metode pengembangan perangkat lunak . [1] [2] Pertama kali dirilis pada tahun 1994, DSDM awalnya berusaha untuk memberikan beberapa disiplin untuk pengembangan aplikasi yang cepat metode (RAD). [3] Pada tahun 2007 DSDM menjadi pendekatan umum untuk manajemen proyek dan solusi pengiriman [ klarifikasi diperlukan ] [ rujukan? ]. DSDM adalah berulang dan inkremental pendekatan yang merangkul prinsip-prinsip pembangunan Agile, termasuk keterlibatan pengguna / pelanggan terus-menerus. DSDM perbaikan biaya, mutu dan waktu di awal dan menggunakan Moskow prioritas lingkup ke keharusan, keharusan, coulds dan tidak akan kaya untuk menyesuaikan proyek deliverable untuk memenuhi kendala waktu yang ditetapkan. DSDM adalah salah satu dari sejumlah metode Agile untuk mengembangkan perangkat lunak dan non-IT solusi, dan merupakan bagian dari Agile Alliance.
Pada tahun 2007, DSDM yang namanya 'DSDM Atern'. [4] [5] Nama Atern adalah pemendekan Arctic Tern - burung kolaboratif [ rujukan? ] yang dapat melakukan perjalanan jarak yang sangat jauh dan melambangkan banyak aspek metode yang cara alami bekerja misalnya prioritas dan kolaborasi.
Pada tahun 2014, DSDM menjatuhkan branding 'Atern' dan dikembalikan ke nama aslinya dalam versi terbaru dari metode dalam 'Kerangka DSDM Agile Project' diposisikan sebagai "pembungkus yang ideal untuk kerangka Agile lebih terbatas ... DSDM sering digunakan untuk menyediakan penuh 'proyek' fokus untuk pujian tim difokuskan proses pengembangan produk Scrum itu. ". Pada saat yang sama manual DSDM baru menyadari kebutuhan untuk beroperasi bersama kerangka kerja lainnya untuk pengiriman layanan (esp. ITIL ) PRINCE2 , Mengelola Program Sukses, dan PMI-BOK. [6] Versi sebelumnya (DSDM 4.2) hanya berisi panduan tentang bagaimana menggunakan DSDM dengan Extreme Programming .

Scrum (pengembangan perangkat lunak)
Scrum adalah berulang dan inkremental pengembangan perangkat lunak tangkas metodologi untuk mengelola pengembangan produk. Ini mendefinisikan "fleksibel, holistik strategi pengembangan produk di mana tim pengembangan bekerja sebagai satu unit untuk mencapai tujuan bersama ", menantang asumsi dari" tradisional, berurutan pendekatan "untuk pengembangan produk, dan memungkinkan tim untuk mengatur dirinya sendiri dengan mendorong co fisik kolaborasi -lokasi atau menutup secara online dari seluruh anggota tim, serta komunikasi tatap muka setiap hari di antara semua anggota tim dan disiplin dalam proyek.
Prinsip utama dari Scrum adalah pengakuan bahwa selama proyek pelanggan dapat mengubah pikiran mereka tentang apa yang mereka inginkan dan butuhkan (sering disebut "persyaratan churn"), dan tantangan yang tidak terduga tidak dapat dengan mudah diatasi dengan cara prediktif atau direncanakan tradisional. Dengan demikian, Scrum mengadopsi empiris pendekatan-menerima bahwa masalah tersebut tidak dapat sepenuhnya dipahami atau didefinisikan, bukan fokus pada memaksimalkan kemampuan tim untuk memberikan cepat dan menanggapi kebutuhan yang muncul.

Fitur-driven development (FDD)
Fitur-driven development (FDD) adalah berulang dan bertahap proses pengembangan perangkat lunak . Ini adalah salah satu dari sejumlah ringan atau metode Agile untuk mengembangkan perangkat lunak . FDD memadukan sejumlah industri yang diakui praktek terbaik dalam suatu kesatuan yang utuh. Praktik-praktik ini semua didorong dari fungsi (client-dihargai fitur ) perspektif. Tujuan utamanya adalah untuk memberikan nyata, software bekerja berulang-ulang pada waktu yang tepat. 

Sejarah

FDD awalnya dirancang oleh Jeff De Luca untuk memenuhi kebutuhan spesifik dari 15 bulan, proyek pengembangan perangkat lunak 50-orang pada besar Singapura Bank pada tahun 1997. Jeff De Luca menyampaikan satu set lima proses yang menutupi pengembangan model keseluruhan dan daftar, perencanaan, desain dan bangunan fitur. Proses pertama yang banyak dipengaruhi oleh Peter Coad pendekatan 's untuk objek modeling . Proses kedua menggabungkan ide-ide Peter Coad yang menggunakan daftar fitur untuk mengelola kebutuhan fungsional dan tugas-tugas pembangunan. Proses lain dan campuran proses menjadi suatu kesatuan yang utuh adalah hasil dari pengalaman Jeff De Luca. Sejak keberhasilan penggunaan pada proyek Singapura, ada beberapa implementasi dari FDD.

Deskripsi FDD pertama kali diperkenalkan kepada dunia pada Bab 6 dari buku Java Modeling di Color dengan UML [1] oleh Peter Coad, Eric Lefebvre dan Jeff De Luca pada tahun 1999. Kemudian, di Stephen Palmer [ disambiguasi diperlukan ] dan Mac Felsing 's buku Panduan Praktis untuk Fitur-Driven Development [2] (diterbitkan pada tahun 2002), deskripsi yang lebih umum FDD diberikan, seperti yang dipisahkan dari model Jawa.
Proses asli dan terbaru FDD dapat ditemukan di Jeff De Luca's situs di bawah wilayah'Article'. Ada juga sebuah situs komunitas yang tersedia di mana orang dapat mempelajari lebih lanjut tentang FDD, pertanyaan bisa ditanyakan, dan pengalaman dan proses itu sendiri dibahas.

Ikhtisar
FDD adalah proses pendek iterasi model-driven yang terdiri dari lima kegiatan pokok.
Untuk pelaporan negara akurat dan menjaga track dari proyek pengembangan perangkat lunak, tonggak yang menandai kemajuan yang dibuat pada setiap fitur didefinisikan. Bagian ini memberikan gambaran tingkat tinggi kegiatan. Pada gambar di sebelah kanan, yang model yang meta-proses untuk kegiatan tersebut akan ditampilkan. Selama dua kegiatan berurutan pertama, keseluruhan model bentuk didirikan. Ketiga kegiatan final iterasi untuk setiap fitur. Untuk informasi lebih rinci tentang sub-kegiatan individu kita lihat Tabel 2 (berasal dari deskripsi proses di bagian'Article' dari situs Jeff De Luca's ). Para konsep yang terlibat dalam kegiatan ini dijelaskan pada Tabel 3.

                             
  

Agile Modeling (AM) mendefinisikan koleksi inti dan tambahan prinsip yang bila diterapkan pada sebuah proyek pengembangan perangkat lunak menetapkan panggung untuk koleksi model praktek . Beberapa prinsip telah diadopsi dari eXtreme Programming (XP) dan didokumentasikan dengan baik dalam Extreme Programming Dijelaskan , yang pada gilirannya mengadopsi mereka dari perangkat lunak umum teknik rekayasa. Untuk sebagian besar prinsip-prinsip disajikan dengan fokus pada implikasinya terhadap upaya pemodelan dan sebagai bahan hasil diadopsi dari XP dapat disajikan dalam cahaya yang berbeda. Prinsip-prinsip AM akan disusun dalam dua daftar, prinsip-prinsip inti yang harus Anda lakukan untuk dapat mengklaim bahwa Anda benar-benar mengambil Pembangunan (AMDD) Agile Model Driven pendekatan dan tambahan prinsip yang harus Anda mempertimbangkan menyesuaikan ke dalam proses perangkat lunak untuk memenuhi kebutuhan yang tepat dari lingkungan Anda. Pada bulan Januari 2005 saya menambahkan daftar ketiga, usang prinsip yang saya telah memutuskan untuk menghapus dalam rilis kedua metodologi AMDD untuk menyederhanakannya.
- See more at: http://translate.googleusercontent.com/translate_c?depth=1&hl=id&prev=search&rurl=translate.google.co.id&sl=en&u=http://agilemodeling.com/principles.htm&usg=ALkJrhhm-3MgaS9vx0Xn4AkvBSDxBrR-6A#sthash.YkHNd9mL.dpuf


Agile Modeling (AM)
mendefinisikan koleksi inti dan tambahan prinsip yang bila diterapkan pada sebuah proyek pengembangan perangkat lunak menetapkan panggung untuk koleksi model praktek . Beberapa prinsip telah diadopsi dari eXtreme Programming (XP) dan didokumentasikan dengan baik dalam Extreme Programming Dijelaskan , yang pada gilirannya mengadopsi mereka dari perangkat lunak umum teknik rekayasa. Untuk sebagian besar prinsip-prinsip disajikan dengan fokus pada implikasinya terhadap upaya pemodelan dan sebagai bahan hasil diadopsi dari XP dapat disajikan dalam cahaya yang berbeda.
Prinsip-prinsip AM akan disusun dalam dua daftar, prinsip-prinsip inti yang harus Anda lakukan untuk dapat mengklaim bahwa Anda benar-benar mengambil Pembangunan (AMDD) Agile Model Driven pendekatan dan tambahan prinsip yang harus Anda mempertimbangkan menyesuaikan ke dalam proses perangkat lunak untuk memenuhi kebutuhan yang tepat dari lingkungan Anda. Pada bulan Januari 2005 saya menambahkan daftar ketiga, usang prinsip yang saya telah memutuskan untuk menghapus dalam rilis kedua metodologi AMDD untuk menyederhanakannya

Pengembangan perangkat lunak ramping (LSD)
Pengembangan perangkat lunak ramping (LSD) adalah terjemahan dari lean manufacturing dan lean IT prinsip dan praktek untuk pengembangan perangkat lunak domain. Diadaptasi dari Toyota Production System , [1] subkultur pro-ramping muncul dari dalam Agile masyarakat. Lean paling populer dengan startups yang ingin menembus pasar, atau menguji ide mereka dan melihat apakah itu akan membuat bisnis yang layak.

Agile Modeling (AM) mendefinisikan koleksi inti dan tambahan prinsip yang bila diterapkan pada sebuah proyek pengembangan perangkat lunak menetapkan panggung untuk koleksi model praktek . Beberapa prinsip telah diadopsi dari eXtreme Programming (XP) dan didokumentasikan dengan baik dalam Extreme Programming Dijelaskan , yang pada gilirannya mengadopsi mereka dari perangkat lunak umum teknik rekayasa. Untuk sebagian besar prinsip-prinsip disajikan dengan fokus pada implikasinya terhadap upaya pemodelan dan sebagai bahan hasil diadopsi dari XP dapat disajikan dalam cahaya yang berbeda. Prinsip-prinsip AM akan disusun dalam dua daftar, prinsip-prinsip inti yang harus Anda lakukan untuk dapat mengklaim bahwa Anda benar-benar mengambil Pembangunan (AMDD) Agile Model Driven pendekatan dan tambahan prinsip yang harus Anda mempertimbangkan menyesuaikan ke dalam proses perangkat lunak untuk memenuhi kebutuhan yang tepat dari lingkungan Anda. Pada bulan Januari 2005 saya menambahkan daftar ketiga, usang prinsip yang saya telah memutuskan untuk menghapus dalam rilis kedua metodologi AMDD untuk menyederhanakannya.
- See more at: http://translate.googleusercontent.com/translate_c?depth=1&hl=id&prev=search&rurl=translate.google.co.id&sl=en&u=http://agilemodeling.com/principles.htm&usg=ALkJrhhm-3MgaS9vx0Xn4AkvBSDxBrR-6A#sthash.YkHNd9mL.dpuf

Asal 

Pengembangan perangkat lunak ramping jangka berasal buku dengan nama yang sama, yang ditulis oleh Mary Poppendieck dan Tom Poppendieck. [2] Buku ini menyajikan tradisional prinsip-prinsip lean dalam bentuk yang dimodifikasi, serta satu set 22 alat dan membandingkan alat untuk praktek tangkas. Keterlibatan Poppendiecks 'dalam pengembangan perangkat lunak Agile masyarakat, termasuk pembicaraan di beberapa konferensi Agile [3] telah menghasilkan konsep-konsep tersebut yang lebih luas diterima dalam komunitas Agile.

Agile Unified Process (AUP)

Agile Unified Process (AUP) adalah versi sederhana dari Rational Unified Process (RUP) yang dikembangkan oleh Scott Ambler . [1] Ini menggambarkan sederhana, mudah dimengerti pendekatan untuk mengembangkan perangkat lunak aplikasi bisnis menggunakan teknik gesit dan konsep namun masih tetap setia untuk RUP. AUP menerapkan teknik tangkas termasuk tes-driven development (TDD), Agile Modeling (AM), manajemen perubahan tangkas, dan refactoring basis data untuk meningkatkan produktivitas.

Pada tahun 2011 AUP menyumbang satu persen dari semua Metodologi Agile digunakan. [2] Pada tahun 2012 AUP digantikan oleh Disiplin Agile Pengiriman (DAD). Sejak itu telah berhenti bekerja pada berkembang AUP.

 

Menghilangkan limbah

Filosofi ramping menganggap segala sesuatu tidak menambah nilai kepada pelanggan sebagai limbah ( muda ). Limbah tersebut dapat mencakup:
Untuk menghilangkan pemborosan, salah satu harus bisa mengenalinya. Jika beberapa aktivitas bisa dilewati atau hasilnya dapat dicapai tanpa itu, itu adalah pemborosan. Sebagian dilakukan coding akhirnya ditinggalkan selama proses pembangunan adalah sampah. Proses tambahan dan fitur yang tidak sering digunakan oleh pelanggan limbah. Menunggu lainnya kegiatan, tim, proses adalah sampah. Cacat dan kualitas yang lebih rendah adalah limbah. Manajerial kepala tidak menghasilkan nilai riil adalah sampah.
Sebuah pemetaan value stream teknik digunakan untuk mengidentifikasi limbah. Langkah kedua adalah untuk menunjukkan sumber limbah dan untuk menghilangkannya. Limbah-removal harus dilakukan secara iteratif sampai bahkan proses dan prosedur yang tampaknya penting yang dilikuidasi.

Memperkuat belajar

Pengembangan perangkat lunak adalah proses belajar yang berkesinambungan dengan tantangan tambahan tim pengembangan dan ukuran produk akhir. Pendekatan terbaik untuk meningkatkan lingkungan pengembangan perangkat lunak adalah untuk memperkuat belajar. Akumulasi cacat harus dicegah dengan menjalankan tes segera setelah kode ditulis. Alih-alih menambah dokumentasi atau perencanaan rinci, ide yang berbeda dapat dicoba oleh kode dan bangunan menulis. Proses pengumpulan kebutuhan pengguna dapat disederhanakan dengan menghadirkan layar ke pengguna akhir dan mendapatkan masukan mereka.
Proses pembelajaran yang dipercepat oleh penggunaan siklus iterasi pendek - masing-masing ditambah dengan refactoring dan pengujian integrasi. Meningkatkan umpan balik melalui sesi umpan pendek dengan pelanggan membantu ketika menentukan tahap pembangunan saat ini dan menyesuaikan upaya untuk perbaikan masa depan. Selama sesi singkat kedua perwakilan pelanggan dan tim pengembangan mempelajari lebih lanjut tentang masalah domain dan mencari tahu solusi yang mungkin untuk pengembangan lebih lanjut. Dengan demikian pelanggan lebih memahami kebutuhan mereka, berdasarkan hasil yang ada upaya pembangunan, dan pengembang belajar bagaimana untuk lebih memenuhi kebutuhan tersebut. Ide lain dalam proses komunikasi dan pembelajaran dengan pelanggan diatur berbasis pembangunan - ini berkonsentrasi pada berkomunikasi kendala solusi masa depan dan bukan solusi yang mungkin, sehingga mempromosikan kelahiran solusi melalui dialog dengan pelanggan.

Memutuskan selarut mungkin

Sebagai pengembangan perangkat lunak selalu dikaitkan dengan beberapa ketidakpastian, hasil yang lebih baik harus dicapai dengan pendekatan pilihan berbasis, menunda keputusan sebisa mungkin sampai mereka dapat dibuat berdasarkan fakta dan bukan pada asumsi yang tidak pasti dan prediksi. Semakin kompleks sistem, semakin kapasitas untuk perubahan harus dibangun ke dalamnya, sehingga memungkinkan penundaan komitmen penting dan krusial. Pendekatan berulang mempromosikan prinsip ini - kemampuan untuk beradaptasi dengan perubahan dan memperbaiki kesalahan, yang mungkin sangat mahal jika ditemukan setelah rilis sistem.
Sebuah pengembangan perangkat lunak tangkas pendekatan dapat memindahkan bangunan pilihan sebelumnya bagi pelanggan, sehingga menunda keputusan penting tertentu sampai pelanggan telah menyadari kebutuhan mereka yang lebih baik. Hal ini juga memungkinkan adaptasi kemudian perubahan dan pencegahan keputusan teknologi dibatasi sebelumnya mahal. Ini tidak berarti bahwa tidak ada perencanaan harus terlibat - sebaliknya, kegiatan perencanaan harus terkonsentrasi pada pilihan yang berbeda dan beradaptasi dengan situasi saat ini, serta mengklarifikasi situasi membingungkan dengan membentuk pola tindakan cepat. Mengevaluasi pilihan yang berbeda efektif segera setelah disadari bahwa mereka tidak bebas, tetapi memberikan fleksibilitas yang diperlukan untuk pengambilan keputusan akhir.

Memberikan secepat mungkin

Dalam era evolusi teknologi yang cepat, itu bukan yang terbesar yang bertahan, tapi yang tercepat. Semakin cepat produk akhir disampaikan tanpa cacat besar, umpan balik cepat dapat diterima, dan dimasukkan ke dalam berikutnya iterasi . Semakin pendek iterasi, semakin baik belajar dan komunikasi dalam tim. Dengan kecepatan, keputusan bisa ditunda. Kecepatan menjamin pemenuhan kebutuhan pelanggan saat ini dan bukan apa yang mereka diperlukan kemarin. Hal ini memberikan mereka kesempatan untuk menunda membuat pikiran mereka tentang apa yang mereka butuhkan sampai mereka mendapatkan pengetahuan yang lebih baik. Pelanggan menghargai pengiriman cepat dari kualitas produk.
The just-in-time ideologi produksi dapat diterapkan untuk pengembangan perangkat lunak , mengakui persyaratan dan lingkungan yang spesifik. Hal ini dicapai dengan menghadirkan hasil yang diperlukan dan membiarkan tim mengatur dirinya sendiri dan membagi tugas untuk mencapai hasil yang diperlukan untuk tertentu iterasi . Pada awalnya, pelanggan menyediakan dibutuhkan masukan. Hal ini dapat hanya disajikan dalam kartu kecil atau cerita - pengembang memperkirakan waktu yang diperlukan untuk pelaksanaan masing-masing kartu. Dengan demikian organisasi kerja berubah menjadi sistem self-menarik - setiap pagi selama pertemuan stand-up , masing-masing anggota tim ulasan apa yang telah dilakukan kemarin, apa yang harus dilakukan hari ini dan besok, dan meminta untuk setiap masukan yang diperlukan dari rekan-rekan atau pelanggan. Hal ini memerlukan transparansi proses, yang juga bermanfaat untuk komunikasi tim. Ide kunci lain dalam Sistem Pengembangan Produk Toyota adalah desain set berbasis. Jika sistem rem baru diperlukan untuk mobil, misalnya, tiga tim dapat merancang solusi untuk masalah yang sama. Setiap tim belajar tentang ruang masalah dan desain solusi potensial. Sebagai solusinya dianggap tidak masuk akal, itu dipotong. Pada akhir periode, desain yang masih hidup dibandingkan dan satu yang dipilih, mungkin dengan beberapa modifikasi berdasarkan pada belajar dari orang lain - contoh besar menunda komitmen sampai detik-detik terakhir. Keputusan Software juga bisa mendapatkan keuntungan dari praktek ini untuk meminimalkan risiko yang dibawa oleh desain muka yang besar.

Memberdayakan tim

Telah ada kepercayaan tradisional di sebagian besar bisnis tentang pengambilan keputusan dalam organisasi - manajer memberitahu pekerja bagaimana melakukan pekerjaan mereka sendiri. Dalam "Work-Out teknik", peran yang berubah - manajer diajarkan bagaimana mendengarkan pengembang , sehingga mereka dapat menjelaskan lebih baik tindakan apa yang mungkin diambil, serta memberikan saran untuk perbaikan. Pendekatan ramping nikmat pepatah "menemukan orang-orang yang baik dan membiarkan mereka melakukan pekerjaan mereka sendiri," mendorong kemajuan, menangkap kesalahan, dan menghapus hambatan, tapi tidak mikro-mengelola.
Keyakinan yang salah lainnya adalah pertimbangan orang sebagai sumber daya . Orang mungkin sumber dari sudut pandang lembar data statistik, namun dalam pengembangan perangkat lunak , serta bisnis organisasi, orang membutuhkan sesuatu yang lebih dari sekedar daftar tugas dan jaminan bahwa mereka tidak akan terganggu selama penyelesaian tugas. Orang-orang membutuhkan motivasi dan tujuan yang lebih tinggi untuk bekerja - tujuan dalam realitas terjangkau, dengan jaminan bahwa tim dapat memilih komitmennya sendiri. Para pengembang harus diberikan akses kepada pelanggan; yang pemimpin tim harus memberikan dukungan dan membantu dalam situasi yang sulit, serta memastikan bahwa skeptisisme tidak merusak semangat tim.

Membangun integritas dalam

Pelanggan harus memiliki pengalaman keseluruhan Sistem - ini adalah apa yang disebut integritas dirasakan: bagaimana ia sedang diiklankan, disampaikan, dikerahkan, diakses, bagaimana intuitif penggunaannya adalah, harga dan seberapa baik memecahkan masalah.
Integritas konseptual berarti bahwa komponen yang terpisah sistem bekerja dengan baik bersama-sama secara keseluruhan dengan keseimbangan antara fleksibilitas, rawatan, efisiensi, dan responsif. Hal ini dapat dicapai dengan memahami domain masalah dan menyelesaikannya pada saat yang sama, tidak berurutan. Informasi yang dibutuhkan diterima dalam potongan-potongan batch kecil - tidak dalam satu potongan besar dengan lebih tatap muka komunikasi dan tidak ada dokumentasi tertulis. Arus informasi harus konstan di kedua arah - dari pelanggan untuk pengembang dan belakang, sehingga menghindari jumlah stres besar informasi setelah pembangunan jangka dalam isolasi.
Salah satu cara yang sehat terhadap arsitektur terpisahkan adalah refactoring . Karena lebih banyak fitur yang ditambahkan ke basis kode asli, semakin sulit menjadi untuk menambahkan perbaikan lebih lanjut. Refactoring adalah tentang menjaga kesederhanaan, kejelasan, jumlah minimum fitur dalam kode. Pengulangan dalam kode tanda-tanda untuk desain kode yang buruk dan harus dihindari. Proses pembangunan yang lengkap dan otomatis harus disertai dengan paket lengkap dan otomatis pengembang dan pelanggan tes, memiliki versi yang sama, sinkronisasi dan semantik sebagai keadaan saat Sistem. Pada akhirnya integritas harus diverifikasi dengan pengujian menyeluruh, sehingga memastikan Sistem melakukan apa yang pelanggan mengharapkan untuk. Tes otomatis juga dianggap sebagai bagian dari proses produksi, dan oleh karena itu jika mereka tidak menambah nilai mereka harus dianggap sampah. Pengujian otomatis tidak harus menjadi tujuan, melainkan sarana untuk mencapai tujuan, khususnya pengurangan cacat.

Melihat seluruh

Sistem perangkat lunak saat ini tidak hanya jumlah bagian mereka, tetapi juga produk dari interaksi mereka. Cacat pada piranti lunak cenderung menumpuk selama proses pembangunan - dengan menguraikan tugas besar menjadi tugas yang lebih kecil, dan dengan standarisasi tahap perkembangan yang berbeda, akar penyebab cacat harus ditemukan dan dihilangkan. Semakin besar sistem, semakin banyak organisasi yang terlibat dalam pengembangan dan lebih bagian yang dikembangkan oleh tim yang berbeda, semakin besar pentingnya memiliki hubungan didefinisikan dengan baik antara vendor yang berbeda, untuk menghasilkan suatu sistem dengan komponen lancar berinteraksi. Selama jangka waktu yang lebih pembangunan, jaringan subkontraktor kuat jauh lebih menguntungkan daripada mengoptimalkan keuntungan jangka pendek, yang tidak memungkinkan hubungan menang-menang.
Lean thinking harus dipahami dengan baik oleh semua anggota proyek, sebelum menerapkan dalam beton, situasi kehidupan nyata. "Berpikir besar, bertindak kecil, gagal cepat, belajar dengan cepat" - slogan ini merangkum pentingnya memahami lapangan dan kesesuaian pelaksanaan prinsip-prinsip lean sepanjang proses pengembangan perangkat lunak secara keseluruhan. Hanya ketika semua prinsip-prinsip lean diimplementasikan bersama-sama, dikombinasikan dengan kuat "akal sehat" sehubungan dengan lingkungan kerja, apakah ada dasar untuk sukses dalam pengembangan perangkat lunak .

Agile Modeling (AM) mendefinisikan koleksi inti dan tambahan prinsip yang bila diterapkan pada sebuah proyek pengembangan perangkat lunak menetapkan panggung untuk koleksi model praktek . Beberapa prinsip telah diadopsi dari eXtreme Programming (XP) dan didokumentasikan dengan baik dalam Extreme Programming Dijelaskan , yang pada gilirannya mengadopsi mereka dari perangkat lunak umum teknik rekayasa. Untuk sebagian besar prinsip-prinsip disajikan dengan fokus pada implikasinya terhadap upaya pemodelan dan sebagai bahan hasil diadopsi dari XP dapat disajikan dalam cahaya yang berbeda. Prinsip-prinsip AM akan disusun dalam dua daftar, prinsip-prinsip inti yang harus Anda lakukan untuk dapat mengklaim bahwa Anda benar-benar mengambil Pembangunan (AMDD) Agile Model Driven pendekatan dan tambahan prinsip yang harus Anda mempertimbangkan menyesuaikan ke dalam proses perangkat lunak untuk memenuhi kebutuhan yang tepat dari lingkungan Anda. Pada bulan Januari 2005 saya menambahkan daftar ketiga, usang prinsip yang saya telah memutuskan untuk menghapus dalam rilis kedua metodologi AMDD untuk menyederhanakannya.
- See more at: http://translate.googleusercontent.com/translate_c?depth=1&hl=id&prev=search&rurl=translate.google.co.id&sl=en&u=http://agilemodeling.com/principles.htm&usg=ALkJrhhm-3MgaS9vx0Xn4AkvBSDxBrR-6A#sthash.YkHNd9mL.dpuf
Agile Modeling (AM) mendefinisikan koleksi inti dan tambahan prinsip yang bila diterapkan pada sebuah proyek pengembangan perangkat lunak menetapkan panggung untuk koleksi model praktek . Beberapa prinsip telah diadopsi dari eXtreme Programming (XP) dan didokumentasikan dengan baik dalam Extreme Programming Dijelaskan , yang pada gilirannya mengadopsi mereka dari perangkat lunak umum teknik rekayasa. Untuk sebagian besar prinsip-prinsip disajikan dengan fokus pada implikasinya terhadap upaya pemodelan dan sebagai bahan hasil diadopsi dari XP dapat disajikan dalam cahaya yang berbeda. Prinsip-prinsip AM akan disusun dalam dua daftar, prinsip-prinsip inti yang harus Anda lakukan untuk dapat mengklaim bahwa Anda benar-benar mengambil Pembangunan (AMDD) Agile Model Driven pendekatan dan tambahan prinsip yang harus Anda mempertimbangkan menyesuaikan ke dalam proses perangkat lunak untuk memenuhi kebutuhan yang tepat dari lingkungan Anda. Pada bulan Januari 2005 saya menambahkan daftar ketiga, usang prinsip yang saya telah memutuskan untuk menghapus dalam rilis kedua metodologi AMDD untuk menyederhanakannya.
- See more at: http://translate.googleusercontent.com/translate_c?depth=1&hl=id&prev=search&rurl=translate.google.co.id&sl=en&u=http://agilemodeling.com/principles.htm&usg=ALkJrhhm-3MgaS9vx0Xn4AkvBSDxBrR-6A#sthash.YkHNd9mL.dpuf






















 

0 komentar:

Post a Comment