Çevik Bir Metodolojide İnovasyona Nasıl [Kapalı]


21

Gereksinimlerin yeterince anlaşılmadığı ortamlarda çevik metodolojilerin iyi olduğu veya önemli yeniliklerin yer aldığı bir şeydir . Ancak, tamamen yenilikçilik gerektiren yerlerde uygulanmalı mı? Evet ise nasıl?

Eğer düşündüğünüz şey sektörde bilinmiyorsa veya imkansız olduğu düşünüldüğünde, kullanıcı hikayelerini ve ilgili görevleri düşünmek zor olabilir. Örneğin, Albert Einstein'ın (ya da rapor ettiği varsayımsal bir işveren), genel görelilik teorisini destanlara, sprintlere ve görevlere ayırarak geliştirmesi için faydalı olacak mıydı? Eğer cevap "evet" ise, çevik bir yaklaşımın Einstein'ın devrimci bir kavrayışa ulaşma şekliyle en iyi şekilde çalışmasına yardımcı olmak için hangi özel konaklamaların dahil edilmesi gerekiyordu?

Belirli bir yazılım örneği vermek için, yılın 2008 olduğunu ve COMET veya " uzun süredir oylama " türü yetenekler sağlamak için WCF kullanmak istediğinizi düşünün . "Önceki çalışma" konusundaki tüm araştırmalarınız hiçbir şey ortaya çıkarmaz ve hatta bir MSDN blog yazarını bile okumayacağınızı söylersiniz.

Yine, bu girişimin yaratıcılığını (veya cesaretini?) Karşılamak için kullanıcı öykülerine ve görevlerine hangi düzenlemeler veya "lezzet" getirilebilir? Yoksa çabanın bu kadar yenilikçi olduğuna (2008'de), yönlendirilmemiş bir düşünce kuruluşu çalışması olarak bırakılmasının en iyi sonuç olduğuna mı karar vermeliyiz?

İki haftalık sprintler altında çalışan yenilikçi, kesinlikle çıkmaz bir görevi bıraktığı ve sprint tanımlandığında öngörülemeyen yeni keşfedilen bir görev üzerinde çalışmaya başladığında kesinlikle düşürülmek istemez. Benzer şekilde, sürat koşusu sona erdiğinde ve hiçbir çalışma kodu veya çalışma yaklaşımı teslim edilmediğinde, yenilikçi, yönetim tarafından vurulmamalıdır. Bu şartlarda bile çabayı "başarı" olarak nitelendirmenin bir yolu olmalı. Belki de bu tür "çıkmaz" peşinde koşan bir veya üç sprintte, yenilikçi nihayet çalışan bir şeye çarpabilir.

Çevik, yönetimin, inovatif aksiliklere rağmen her süratin "iyi" olduğunu nasıl biliyor? Bu, yanma grafiğinin saçma görünmemesi için nasıl yönetilir?


8
@Liath: İnovasyonun genellikle iki haftada bir, yani sprintin sonunda bir şey göstermek zorunda kalmadan fikirleri denemek için zamana ihtiyacı vardır. Kısa dönemli geri bildirimler genellikle “bir şeyi göster, ne olursa olsun göster” konusuna odaklanır (çünkü müşteri memnun değilse, gelecekteki bir sprint içinde her zaman düzeltmek mümkündür). yapmalı". "Hazır olduğunda göster" yerine "göstermek zorunda olduğunda hazırla."
Giorgio

4
Bence bu sorudan çıkarılan bir soru soruluyor: "Zaman araştırmasının yazılım araştırmasında ya da çok yenilikçi projelerde değeri var mı?", "Zamandan faydalanmayan yenilikçi / yüksek riskli projeler var mı?" -boks"? (Bunu geçici bir Google aramadan okuyordum : agile.conscires.com/2010/03/30/agile-for-research-projects )
rwong


1
Xavier Amatriain'e atfedilen bu link ayrıca, araştırma projelerinde Çevik metodolojiyi uygulamak için eksiksiz bir paket ("süreç") sunuyor. Bildiğimiz gibi Scrum'dan farklı, ancak Çevik değerleri ve uygulamaları benimsemede çok ileri gidiyor.
rwong

2
Yazılım geliştirmede yenilik, metodolojiden bağımsız olarak kolay değildir, çünkü insanlara çoğu insanın üzerinde hemfikir olduğu şeylere sadık kalmaları öğretilir (iyi sebeplerle sanırım). Bunun nedeni, yazılım mühendisliğinin, fikirlerin kendi uygunluklarına göre değil kendi değerlerine göre değerlendirildiği diğer mühendislik disiplinlerine kıyasla çok bilimsel olmamasıdır.
Mike Dunlavey

Yanıtlar:


8

İnovasyonun, Agile'de zaten iyi olan bir takımdaki daha küçük ölçekli yaratıcı gelişmelere atıfta bulunduğu başlıklı soru.

En iyi cevap "Altın Kart Günleri" ile ilgili bu yazıda özetlenmiştir .

Özet (ayrıca, yazarın niyetini yansıtmayabilecek kendi yorumumla birlikte yazılmıştır) :

  • Geliştiriciler üzerinde çalışmak istedikleri, işle ilgili ilginç (entelektüel olarak uyarıcı) esnek hedefler belirleyebilirler.
  • Bu uzatma hedefleri, ekip tarafından onaylandıktan sonra (ürün sahibi dahil), "altın kartlar" olur.
  • Takımın bu "altın kartlar" üzerine çalışmak için bir gün ayırması önerilir.
    • Genellikle bu Cuma günleri olur, bu yüzden "Altın Kart Günü" olur.
  • Scrum ile ilgili olarak, Gold Card'lar diğer tüm backlog öğeleri gibi planlanmış ve takip edilmiştir; takımın sonuçlarını göstermesi gerekecek.

"Altın kartlar" uygulamasına ilişkin başka hususlar da var (bu makalede yok):

  • Do tek bir ekip üyesi tüm eğlence atalım. Her takım üyesinin bir süre "altın kart günü" alarak yaratıcı zaman geçirmesi teşvik edilmelidir.
  • Aynı çizgi boyunca, bir "altın kart" ı bir takım çalışması (yalnız bir görevin aksine) yapmaya çalışın ve bu görevi sosyalleşme (ekip oluşturma) anı olarak kullanın.

İnovasyonun, işe yarar bir çözüm bulamama riski taşıyan araştırmalara (aylarca yıl süren ürkütücü çalışmalar) atıfta bulunduğu önemli soru.

Bu önceki soru, bir araştırma ortamında hangi aşırı programlama tekniklerini kullanmaya uygundur? bu sorunun temelini kapsıyor.

(Feragatname: Seçili olmasa da, bu sorunun cevaplarından birini yazdım.)

Özet, yazılım araştırma çalışmalarının hızlı bir şekilde gerçekleştirilebileceği; katılımcılarının yeni bilgilere dayanarak öncelikli olmalarını gerektirir (keşfedilen / öğrenilen fikirleri özümseyerek ve yenilerini sentezleyerek). “Yavaş” gibi görünmesini sağlar, çünkü “başarının meyvelerini ve sadece başarılı olmuşsa göstermeyi yavaşlatır”.


Proje Yönetimi Beta - Bu soru bir proje yöneticisi bir araştırma ekibine dahil olmanın artıları ve eksileri nelerdir? - aynı toprakları da kapsar.


Ruhen, evet.

Mouviciel'in cevabında da belirtildiği gibi , yazılım araştırması ruhu Çevik Manifesto'nun ruhuna uygundur. Bundan sonra tartışacağım, yüksek riskli araştırmanın bir organizasyon ya da yönetim metodolojisi olarak Çevik’e uygun olup olamayacağı (“Uygulamada Çevik”).


Uygulamada, birkaç soruyu cevaplamanız gerekir.
Bu liste ayrıntılı değil...

Çevik Metodolojinin nasıl ortaya çıktığını biraz takip etmeliyiz.

Çevik Metodoloji genellikle projenin sponsoru olduğunda kullanılır. Ayrıca, sponsorun projeyi finanse etme isteği sınırlıdır; Projeye bir süre finansman sağladıktan sonra düzenli olarak kullanıma sunulan (potansiyel olarak sevk edilebilir) kalitede bir yazılım görmeyi beklemektedir.

Bu sorudaki araştırma çalışması, "potansiyel olarak çözülemeyen çabalara" işaret eder. Başka bir deyişle, bu tür bir çalışmanın doğası, ilgili kişilerin tüm niyetlerine ve titizliklerine rağmen, sonuçta başarısız olma riskini içerir.

Bu bir ScrumButt tarzı kontrol listesi değil.
Bu daha çok "Que Sera, Sera" dan daha iyi olup olmadığını tahmin eden ön kontrol kontrol listesidir.


1. Şeffaflık ön tarafta. Projenin sponsoruna projenin risk doğası hakkında doğru söyleniyor mu?


2. Sponsorun istekliliği. Destekleyici riskten haberdar mı ve finansmana devam etmeye istekli mi?

Destekleyicinin, tipik iş projelerinden veya tipik Yazılım / IT / Çevik projelerden daha yüksek bir risk kabul etmesi gerekir. Her sponsor bu kriterlere uymuyor. Uygun değilse, bir profesyonelin projeden vazgeçmesi iyi olur.


3. Proje boyunca şeffaflık. Sponsor düzenli olarak projenin gerçek durumundan haberdar ediliyor mu?

Bu, durum güncellemeleri arasında zaman atlamasını yanlış kullanarak projedeki gerileme veya belirsizlik sorunlarını gizleme girişimlerini engellemektir.


4. Sponsorun aktif katılımı. Destekleyici nitty-gritty detaylarını, iniş çıkışlarını, her girişimin vaatlerini ve sınırlarını bilmekle ilgileniyor mu?

Yazılım araştırması ile ilgili sorun, birçok yanlış yol açabileceğidir - hem yanlış pozitifler (bir yaklaşımın işe yarayacağına, ancak başarılı olamayacağına inanmak) hem de yanlış negatifler (bir şeyin mümkün olmadığını iddia etmek, sadece başkaları tarafından onaylanmamak) olabilir. .

Çevik projeler ekibin (sponsorlar ve paydaşlar dahil) hesaplanmış riskler almasını sağlar. "Hesaplanan", risk alanların tamamen bilgilendirildiği anlamına gelir. Eğer sponsor projenin nitrit-kumlu detaylarını öğrenmeye istekli değilse, sponsor kendi başına riski hesaplamak (değerlendirmek) için tam bilgiye sahip olmayacaktır.

Bir sponsor finansal riske girmeye istekli olsa bile, karar alma risklerini de almak istemiyorsa (ve kendi tercihlerine göre sonuçları kabul etmeyi istemiyorsa), o zaman da sponsor bu tür yüksek riskli araştırma projeleri için uygun değildir.


5. Araştırma ekibi, sunum slaytlarının aksine, çalışan yazılım biçimindeki ilerlemelerini gösterebilir mi (gösterebilir)?

Bu soru, sonucun yazılım çalıştırması beklenen araştırma projeleri için uygundur. Sunum slaytları CS teorilerini açıklamak için faydalı olabilir, ancak yazılım uygulamasındaki (veya eksikliğinin tamamında) aksaklıkları gizlemek için de kötüye kullanılabilir. Bir yazılım demosu, bu tür suiistimalleri engellemek için tasarlanmıştır.


6. Destekleyici projede herhangi bir zamanda fonu durdurmaya karar verse bile, araştırma ekibi kısmen değerli bir yazılım ürünü sunabilir mi?

Bu soru sadece durum bazında ilgilidir. Bazı araştırma projeleri artımlıdır; birden fazla kilometre taşı ve teslim edilebilirleri olabilir. Bir araştırma ekibinin, "ilk önce en düşük asılı meyveler" veya "uygulanabilirliği göstermek için en düşük maliyet yaklaşımı" nı tercih etme yaklaşımlarına öncelik vermesini gerektirir.

Bazı araştırma projeleri artımlı değildir: tek, çok özel bir teknolojik atılım sağlamak. Bu bir hit veya bayan. Bu tür projeler için, tek artımlı sonuçlar araştırma çalışmaları ve prototipler ve belki de akademik yayınlardır. Bu "tüketilemez" artımlı teslimatlar yine de bazı sponsorlar için - yani üniversiteler, araştırma fonları ajansları ve akademik iyi niyet oluşturmayı ümit eden büyük şirketler için değerlidir.

Bununla birlikte, bu özelliklere sahip araştırma projeleri, aşağıda daha ayrıntılı olarak tartışıldığı gibi "Kovboy kodlaması" yaklaşımını da destekleyebilir. Bunlar uygun bir şekilde "kesmek" olarak adlandırılır ve akademi'de gerçekleşir.

Çoğu akademik araştırmanın zaman ölçeğinden dolayı, akademik tarz araştırma fonu genellikle bir veya daha fazla yıl taahhüdü ile sağlanır; tıbbi araştırma fonu (akademik ve ticari) daha uzun süreler için taahhüt edilebilir. Öte yandan, ticari olarak finanse edilen tipik araştırmalar önceden bildirilmeksizin sonlandırılabilir veya kaynaklarının (insan gücü) diğer projelere tamamen atanması sağlanabilir.


7. Araştırma ekibi silo - çapraz işlevsellik ölçüsünü nasıl ölçmektedir?

Bazı araştırma ekibi türleri oldukça sessizdir. Genellikle, bu "çok disiplinli" projelerde olur - her disiplinden tam olarak bir üye katılır. Sonuç olarak, hiçbir üye başka bir üyenin görevini üstlenemez, hatta çok küçük olanları bile değil; çünkü onların bilgi ve becerileri birbiriyle örtüşmez. Zorluk, iletişim ve görev tanımlarını da kapsayacaktır.

Son derece sessiz ekipler günlük stand-up toplantısı gibi bazı Scrum ritüellerinden faydalanmaya devam edecek, ancak “ritüel” den ayrı olarak fazla bir etkileşim olmayabilir. Ekibin konuşması ve güven kazanması için son derece sosyalleşen çevik bir koç gerekir.


8. Çevik bir antrenör varsa, antrenör kısa yineleme döngüleri, zaman boksu ve zaman tahminleri veriyor mu?

Bu çevik uygulamaların her biri, belirli araştırma projeleri için zorluklar ortaya çıkarmaktadır. Bununla birlikte, bazı usta yetenekli araştırma gruplarının bu uygulamaları ileri araştırmalara uygulayabildikleri bildirildi . Bu uzman ekiplerde çevik koçluğun nasıl gerçekleştiğine dair bir ayrıntı olmadığı için, bu zorlukların her birinin nasıl üstesinden gelinebileceğini bilemeyebiliriz.


9. Araştırma ekibi, Solo geliştirme tarzını başka bir metodolojiye göre benimsemek için oybirliğiyle oy kullanıyor mu?

Düzenlendi: daha önceki bir sürüm, profesyonellik eksikliğine işaret eden "kovboy kodlaması" cümlesini kullanıyor. Ancak, solo gelişim ve kovboy kodlaması arasında bir fark vardır ve bu kontrol listesi maddesindeki koşullar solo gelişmeyi meşru bir seçenek haline getirebilir.

Bu soru , büyük bir gelişim yığınına sahip olmayı tercih eden programcıların olduğunu göstermektedir. Araştırma ekibi esas olarak bu tür programcılardan oluşuyorsa, ekip üyelerinin beceri setinin yeri doldurulamazsa (önceki beceri silosuna atıfta bulunularak), ekip üyelerine karşılığında ne istediklerini vermeleri gerekebilir. yetenekleri ve emekleri için.

Kişisel gelişim ve kovboy kodlaması arasındaki temel fark, kişisel gelişimde, Joel Testinde listelenen pratikleri benimsemektir : 12 sürüm daha iyi bir hale getirilir , örneğin sürüm kontrolü kullanımı, otomasyon oluşturma ve yeni özellikler eklemeden önce hataları düzeltme gibi .

Bazı koşullar yalnız gelişmeyi gerçekleştiren her bir üyeyi, bazı koşullar ise kovboy kodlamasını destekleyecektir.

Kovboy kodlaması, eğer nihai hedef "bir noktaya değinmek" ise, bir şeyin teknolojik olarak mümkün olduğunu göstererek tercih edilir. Bir sonraki DEF CON ® 'da yapılacak iyi bir sunum dışında, teslimat - kalite gibi şartlar yoktur .


Son soru Koşullar Çevik bir ekibin çığır açan araştırmalar yapmasına izin vermiyorsa, o zaman yenilikçi teknolojiden nasıl yararlanırlar?

Her zamanki işler. Diğer şirketlerin (veya akademisyenlerin, bireylerin veya bilgisayar korsanlarının , başlangıçların vb.) Önce bu zor sorunu çözmesine ve ardından teknolojiyi onlardan satın almasına / lisanslamasına izin verin. Yazılım endüstrisi, on yıllardır bu ilkeler üzerinde çalışmaktadır.

Erken çalışma prototiplerini Çevik metodolojide göstermenin vurgulanması, bir ekibi önce mevcut çözümleri aramaya zorlar, bu iyi bir şey çünkü ekibi bazı gereksiz çalışmalardan kurtarabilir.


6

Agile Manifesto sayfasına geri dön :

  1. Bireyler ve süreçler ve araçlar üzerindeki etkileşimler
  2. Kapsamlı dokümantasyon üzerinde çalışan yazılım
  3. Sözleşme müzakere konusunda müşteri işbirliği
  4. Bir planı takip etmeyi değiştirmeye cevap vermek

Bu değerlerdeki hiçbir şey inovasyonu yasaklamaz. Aslında, inovasyon Çevik ile Şelaleden daha iyi bir yuvaya sahiptir.

Yine de, Agile'nin olağan uygulamalarının, son tarihler (bir sprintin zaman aralığı bir bitiş tarihidir) veya maliyet gibi inovasyonu sınırlayan bir yazılım projesinde bazı kısıtlamalar koyması olabilir. Ancak bu Agile ile ilgili bir sorun değil, mevcut iş örgütleriyle ilgili bir sorun.


3
+ Bence sende var. Bence problem, insanlara nasıl yapacaklarını söyleyen kitaplarla ilgili. (Bir şeyler uydurmadan yazmanın çok zor olduğunu öğrendim.) Ekibimiz "Çevik" i izliyor ve bunun anlamı sonsuz toplantılar. Bir üye basitçe "Beni sayın. Sadece son modaydı. Bana ihtiyacınız yoksa, sorun değil" dedi.
Mike Dunlavey,

@MikeDunlavey - Sizin tarzınız hoşuma gidiyor: Ekibimiz "Çevik" ifadesini aşağıdaki gibi rezonansa sokuyor : Bir plan izleyerek üzerinde değişiklik yapma cevabını veriyor .
mouviciel

1
@mouviciel: Cevabınıza katılıyorum ama o zaman çevik değerler hakkında gerçekte neyin yeni olduğunu anlamıyorum: Çevik kelimeyi bile duymadan çok önce, tüm projelerimde 1, 2, 4 numaralı noktalarda takip ediyordum. Birlikte çalıştığım kişilerin aynısı yapıyordu. Buna sağduyu diyoruz. Öyleyse "çevik" terimi sadece "sürecinizin kölesi olma ve sağduyu kullanma" kelimesi için yeni bir kelime mi? Öte yandan, işime getirdiğim tek gerçek çeviklik daha fazla toplantı ve takip edilecek daha fazla kural.
Giorgio

@ Giorgio - Evet, böyle görüyorum. Çalıştığım en iyi şelale projeleri, ekip liderinin geliştiriciler arasında sağduyuyu tercih ettiği ve müşteriye güzel bir "V-model / ISO9001 / Büyük Belgeler" hikayesi anlattığı zamandı. Çevik değerlerde yeni olan, Manifesto'nun yazarları tarafından sağlanan kimlik bilgilerinde yatmaktadır.
mouviciel

Çevik aslında yazılım geliştirme konusunda bir manifestoydu; geniş çeşitlilikte iş yapmak için büyütülmüş (veya mutasyona uğramış) olmuştur. Toplantılar, siyaset ve kişisel tarz nedeniyle birebir iletişimden daha az etkili olmasına rağmen, yüz yüze iletişim şeklidir.
rwong

6

Öyle sanmıyorum. Çevik çikolata filleri yemekle ilgilidir - büyük bir görev almak ve yalnızca teslim edilemeyen, aynı zamanda düzenli olarak teslim edilebilen yönetilebilir parçalara bölmekle ilgilidir.

Araştırma türü projeler buna uymuyor - projeniz her iki haftada bir (veya daha uzun süre gösterilebilecek) küçük parçalara bölünemezse - hiçbir yerde Agile, sprintinizin sürmesi gereken zamanın 2 hafta olduğunu söylüyor. üzerinde çalıştı 6 hafta sprint vardı)

Yine de denemezdim. Sizin için çalışacağını düşündüğünüz çevik araçların parçalarını alır ve çalışmayanları görmezden gelirim. Çok sayıda insan, Agile'nin "aldatıcı öğreticinin yapmanız gereken ve hiçbir takdir yetkisine izin verilmeyen her şeyi yapması gerektiğini" anlamına geldiğini düşünüyor, bu yaklaşım çok çevik değil.


1
Büyük görevleri küçük parçalara bölmek çevik bir şey değil. Eski Mezopotamya ve Mısır'da mühendislik başından beri kullanılmaktadır ve Waterfall projelerinde yaygın olarak kullanılmaktadır. Çevik projelerde kullanılıyorsa, Çevik yapısından dolayı değil, yüzlerce yıllık başarılı başarılardan miras kalan bir zihniyet yüzünden.
mouviciel

@mouviciel: Doğru, ama çevik, sorunları tek bir koşuya sığması gereken parçalara bölmeye zorluyor. Eğer yapmazlarsa (araştırma projelerinde sık sık olduğu gibi), sprintlerinizi daha uzun süre yapmazsanız, batırılırsınız. Karmaşık bir araştırma problemi üzerinde çalışırken, yeterince küçük parçalara ayrılmasının ne kadar süreceğini tahmin edemezsiniz: küçük parçalara sahip olmak, sorunu zaten temelde çözdüğünüz anlamına gelir.
Giorgio

@ rwong: Scrum dışında mümkün olduğunca erken geri bildirim ve kısa gelişim döngüleri gerektirmeyen çevik işlemler var mı?
Giorgio

4
“Çok fazla insan Agile'nin demek istediğini” “aldatıcı öğreticinin yapmanız gereken ve hiçbir takdir yetkisine izin verilmeyen her şeyi yapmalısınız”, bu yaklaşım çok çevik değil ”dedi. şelale: İhtiyacımız olan parçaları alıyorduk ve ihtiyaçlarımıza uydurduk. Sonra çevik koçluk geldi ve kitabın üzerinde çalışmak zorunda kaldık: çevikliğimizin çoğunu kaybettik. ;-)
Giorgio

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.