Dağıtık yazılım geliştirmede iletişim - Communication in distributed software development

Dağıtık Yazılım Geliştirmede İletişim iletişim süreçlerini ve uygulandığında etkilerini değerlendiren bir çalışma alanıdır. yazılım geliştirme küresel olarak dağıtılmış geliştirme süreç. Yazılım geliştirmede iletişim ve koordinasyonun önemi geniş çapta incelenmiştir[1] ve örgütsel iletişim bu sonuçları örgütsel düzeyde inceler. Bu, ekiplerin ve ekip üyelerinin ayrı fiziksel konumlarda çalıştığı bir ortam için de geçerlidir. Dayatılan mesafe, artık yüz yüze bir süreç olmayan iletişimde yeni zorluklar ortaya çıkarır ve aynı zamanda çalışma saatlerinde küçük bir örtüşme ile karşıt zaman dilimlerinde bulunan ekipler gibi diğer kısıtlamalara da maruz kalabilir.

Aynı projedeki unsurları, aynı şirketteki farklı ekiplerden coğrafi olarak ayrı alanlarda çalışmaya zorlayan çeşitli nedenler vardır. dış kaynak kullanımı ve offshoring, iletişimdeki farklı kısıtlamaların ve gerekliliklerin geçerli olduğu. Eklenen iletişim zorlukları, genellikle kombinasyon halinde kullanılan çok çeşitli farklı iletişim yöntemlerinin benimsenmesiyle sonuçlanır. Bir video konferans durumunda olduğu gibi gerçek zamanlı veya asenkron bir şekilde olabilirler. e-posta. Bir video konferans, geliştiricilerin iletişim kurmak için harcadıkları zaman açısından daha verimli olmalarına izin verirken, ekipler farklı saat dilimlerinde çalıştığında bunu başarmak daha zordur, bu durumda bir e-posta veya mesajlaşma hizmeti kullanmak daha yararlı olabilir.

Tarih

Dağıtılmış yazılım geliştirmede iletişimin tarihi, dağıtılmış geliştirmenin tarihsel ortamına bağlıdır. İletişim araçları, dağıtılmış yazılım geliştirme için erken girişimlerde iletişimin temel eksik bileşen olması nedeniyle, dağıtılmış geliştirme sürecinin ilerlemesine yardımcı oldu[kaynak belirtilmeli ]. Yeni araçların yaratılmasında ve dağıtılmış geliştirmenin uygulanabilir bir metodoloji haline getirilmesindeki ana faktörlerden biri, İnternet geliştiriciler ve araştırmacılar için erişilebilir bir platform olarak, bir ekipte hem kod hem de bilgi alışverişini kolaylaştırır.

Dağıtılmış geliştirmenin ilk tezahürlerinden biri, geliştiricilerin bir işletme ve kaynakları tarafından değil, aynı projeye gönüllü olarak katılarak, farklı coğrafi konumlardan farklı ekiplerle sonuçlandığı açık kaynak topluluğudur. Bu projelerde iletişim ve işbirliği araçlarına artan bir ihtiyaç var. özgür ve açık kaynaklı yazılımın geçmişi zaman ilerledikçe projelerin karmaşıklığının ve dahil olan insan sayısının arttığını göstermektedir. Bu artışta daha iyi iletişim ve işbirliği araçları önemli rol oynadı. Başlangıçta mevcut yöntemler çoğunlukla asenkron iletişim biçimleriydi. e-posta ve posta listeleri hatta bilgileri yaymak için periyodik yazılı yayınlara güvenmek. Senkronize iletişim çoğunlukla aşağıdakilerle sınırlı olacaktır: telefon aramalar[kaynak belirtilmeli ].

Bu erken aşamada, bir kurumsal ortamda bu tür dağıtılmış geliştirmenin pek çok hesabı yoktur.[kaynak belirtilmeli ]. Ancak, geçmiş yıllardaki gelişmeler ve araçlar, şirketlerin avantaj elde ettiklerinde bu uygulamaları araştırmaya ve benimsemeye başlamaları için gerekli araçların öncülüğünü yapmıştır. Gibi daha fazla araç Sesli konferans ve Anlık mesajlaşma çoğunlukla başka amaçlar için ortaya çıktı, ancak hızla benimsendi ve dağıtılmış geliştirme fikrini ilerletmeye devam etti. Bu yeni hareket, geliştirme sürecinin etkililiğini ve kalitesini daha da iyileştirmek için Dağıtılmış Yazılım Geliştirmede İletişim olan çalışma alanına ilgi uyandırdı.

Önem

Genel olarak yazılım geliştirme, çok fazla bilgi alışverişi gerektirir[2] ve araştırmalar, bir geliştiricinin zamanının büyük bir yüzdesinin işbirliği / iletişim faaliyetlerine harcandığını göstermektedir.[3] Süre resmi iletişim bir proje durumunun güncellenmesi veya belirli bir iş için kimin sorumlu olduğunun belirlenmesi gibi temel görevler için kullanılır, gayri resmi iletişim geliştirme süreci için de çok önemlidir.[4] Gayri resmi iletişim veya "koridor konuşması", geliştiricilerin çevrelerinde olup bitenlerden, diğer çalışanların neler üzerinde çalıştığından, kimin hangi alanda uzmanlığa sahip olduğunun ve birlikte verimli bir şekilde çalışmalarını ve oluşturmalarını sağlayan diğer birçok temel arka plan bilgisinden haberdar olmalarına yardımcı olur "takım ruhu".[4] Araştırmalar ayrıca bir proje ne kadar belirsizse, bu tür iletişimin o kadar önemli olduğunu göstermektedir.[1]

İçinde Global Yazılım mühendisliği (GSE) ortamı, gayri resmi iletişim yeniden yaratmak zordur. Bu tür bir iletişimin olmaması sürprizlere yol açarak yanlış hizalamaya ve yeniden çalışmaya neden olabilir.[4] Bu nedenle Dağıtılmış Yazılım Geliştirmede İletişim, GSE'yi uygulayan her şirket için önemlidir. Bu çalışma alanı, diğer şeylerin yanı sıra, gayri resmi iletişim GSE ortamında, bu ortama özgü geliştirme hızı kaybı olmadan yazılım geliştirmek için.[5]

Zorluklar

İletişim, sosyo-kültürel, dilbilimsel, bilgi, coğrafi ve zamansal engeller gibi çeşitli engellerle engellenebilir.[6]

Sosyo-kültürel engeller kendilerini iletişim aracı olarak gösterebilir. Aslında, yapılan bir araştırma, ABD ve Japon müşterilerin kendilerine göre farklı tercihleri ​​olduğunu gösteriyor. ABD'deki müşteriler sık ​​sık resmi olmayan telefon ve e-posta iletişimleri yoluyla iletişim kurmayı tercih ederken, Japon müşteriler sözlü iletişimi ve elektronik medyanın daha az sıklıkta ancak resmi kullanımını tercih ediyor.[7]

Dil engelleri tipik olarak, bir konuşmadaki aktörlerden en az biri ana dilini konuşmadığında kendini gösterir. Kendini ana dilinde daha iyi ifade edebilmesi gerektiği gerçeğinin dışında başka engeller de var. Deyimsel ifadeler ve argo zor olan bu tür engellere örneklerdir gayri resmi iletişim.

Göre Allen Eğrisi mühendisler arasındaki iletişim sıklığı aralarındaki mesafe arttıkça üstel bir oranda düşer. Bir şirketteki iş arkadaşlarının olması durumunda, iletişim genellikle iş arkadaşları arasındaki rastgele karşılaşmalarla tetiklenir. İkincisi arasında önemli bir mesafe olduğunda, iletişimleri azalır. Aslında, yerel ve uzak sitelerdeki iş arkadaşları arasındaki iletişim sıklığını karşılaştıran deneysel bir çalışma yapıldı. Sorgulananların çoğu, yerel meslektaşlarının çoğuyla günde en az bir kez, uzaktaki meslektaşlarıyla haftada birden az konuştuklarını söyledi.[5]

Zamansal engeller, coğrafi engellerle yakından ilişkilidir. Zamansal engeller tipik olarak, iki veya daha fazla iş arkadaşının farklı zaman dilimlerinde ve çoğu zaman farklı coğrafi konumlarda olduğu bir senaryoda mevcuttur. Geliştiriciler çoğunlukla çalışma saatleri içinde iletişim kurarlar ve örtüşen çalışma saatleri gerektirmeyen eşzamansız iletişimi kullanabilirlerken, doğal olarak iletişim sürecini geciktirir.[8] Alternatif olarak, gerçek zamanlı iletişim kurmaları gerektiğinde senkronize iletişimi kullanabilirler, ancak bu, çakışan çalışma saatlerini bulmanın karmaşıklığını ortaya çıkarır. Güneşi takip et ikinci sorunu hafifletmek için yazılım şirketlerinin kullandığı yaygın bir yaklaşımdır.

Araştırma

Dağıtık Yazılım Geliştirmede İletişim Araştırması, farklı iletişim yöntemlerinin geliştirme sürecinin ve nihai ürünün başarısı üzerindeki etkilerinin anlaşılmasını geliştirmek için yapılır.

İletişim, bir yazılım geliştirme projesini koordine etmede ve ekip üyeleri arasında bilgi paylaşımında önemli bir süreçtir. Önceki çalışmalar[9][10] Bilginin paylaşılmasının güven oluşturmak ve hatta tüm ekibin performansını iyileştirmek için önemli olduğunu iddia etmek, bu aynı zamanda dağıtılmış bir yazılım geliştirme sürecinde de geçerlidir.

Ayrıca, yukarıdaki bölümde belirtildiği gibi, uygunsuz bir şekilde ele alındığında bir ekip projesini geciktirebilecek ve hatta şirkete maliyet getirebilecek zorluklar da getirebilir. Pek çok çalışma, bu sorunları azaltmanın ve iletişimsizlikten kaçınmanın yollarını bulmaya çalışıyor.[11]

İletişim için kullanılan araçlar bazı çalışmalar kapsamındadır. Bazı farklı araç türlerinin avantajlarını ve dezavantajlarını ve ayrıca geliştiricilerin belirli durumlar için hangi tür araçları kullanmayı sevdiklerini gösterirler.[12][13]

Araştırmacıların küresel olarak dağıtılmış bir kalkınmanın projenin başarısını nasıl etkilediğine olan ilgisi aşağıdaki gibi yayınlarda belirtilmiştir.[11] Yazar, konu hakkında daha fazla ampirik çalışma ihtiyacından bahsetmektedir. Başka bir çalışma[14] Yazarın önerdiği gibi, örneklem büyüklüğünün düşük olmasından kaynaklanabilecek önemli sonuçlar olmadan zaman dilimleri ve dil engelleri arasında daha doğrudan ilişkiler bulmaya çalışmışlardır. Ancak gösterildi[5] dağıtılmış geliştirme ile ortak çalışanlar arasında daha uzun yanıt süreleri arasında gerçekten bir ilişki olduğunu. İletişim sıklığı ile coğrafi mesafeyi ilişkilendiren çalışmalar da vardır. Allen eğrisi.

Şimdiye kadar yapılan araştırmalar, şirketler tarafından kullanılan metodolojilerin ve araçların iyileştirilmesi gerektiğine ve iletişimin bir şirketin başarısında büyük bir faktör olduğuna işaret ediyor.[kaynak belirtilmeli ]

İletişim biçimleri

İletişim Bir işbirliği ortamında, aracıların birbirleriyle nasıl etkileşimde bulunduğuna göre farklı olarak eşzamanlı veya eşzamansız olarak elde edilebilir. Farklı iletişim biçimleri, dağıtılmış bir geliştirme ortamında farklı amaçlara hizmet eden, desteklenen iletişim türüne bağlı olarak benzer iletişim sistemleri ve araçları oluşturur. Bir şirket içinde bile, farklı üyelerin görev ve sorumlulukları, çalışma ortamında kullanılan araçlara kullanımlarına yansır.[15]

Senkron sistemler

İçinde senkron sistemler, katılımcılar eşzamanlı olarak "gerçek zamanlı" bilgi alır ve gönderir ve bir mesajın ardından genellikle kısa bir süre içinde bir yanıt gelir. Bu tür bir iletişim, diğer katılımcının hemen ulaşılabilir olması durumunda anında yanıt verilmesini gerektiren iletişim veya doğrudan bir ortamda daha gayri resmi iletişim için kullanılır. Bir kuruluşta sorulara hızlı bir şekilde cevap vermek, fikirleri tartışmak, dikkat gerektiren önemli gelişmeleri veya başka herhangi bir önemli mesajı iletmek için kullanılabilir.

Asenkron sistemler

Asenkron sistemler gönderenin istediği zaman bilgi gönderebileceği ve alıcının yalnızca uygun olduğunda yanıtlayacağı mesajların gönderilmesi ve alınması için bir mekanizma sağlayın. Bu tür bir iletişim, bir tartışma yapmak veya daha az acil konular hakkında bilgi aktarmak için kullanılabilir, çünkü hemen hiçbir yanıt garanti edilmez. Özellikle dağıtılmış bir geliştirme sürecinde kullanışlıdır çünkü bir proje üzerinde çalışan farklı ekipler çoğu zaman bunu aynı anda yapmazlar ve acil olmayan konular eşzamansız olarak tartışılabilir.

Hibrit sistemler

Bir sistemin, iletişimde daha fazla esneklik sağlamak için aynı ortamda her iki iletişim biçimini sağladığı başka bir olası yaklaşım da vardır. Bu sistemler, değiş tokuş edilen mesajların genellikle asenkron mesajların özelliklerine sahip olduğu Hibrit sistemler olarak adlandırılabilir, ancak sistemler aynı zamanda bu mesajları bir senkronize iletişim biçimi olarak kullanmak için tasarlanır. Asenkron ve senkronize iletişim arasında orta bir zemin sunarlar.

Araçlar

Küresel Olarak Dağıtılmış Yazılım Mühendisliği için iletişim araçları, kullanılan iletişim formuna, kullanıcıya sağlanan arayüze ve diğerlerine göre değişen çeşitli türlerde olabilir. Ayrıca, farklı kategoriler, iletişimi geliştirmek için farklı duyusal bilgiler kullanabilir. Mevcut araçlar şunları içerir: anlık mesajlaşma, e-posta, ses ve video konferans, sanal Ofis ve sanal gerçeklik. Bu bölüm, farklı araç türlerine ve şu anda kullanımda olan bazı popüler örneklere genel bir bakış sağlar, ancak mevcut araçların tam bir koleksiyonu ve listesi değildir. Diğer kaynaklarda daha eksiksiz listeler bulunabilir.[16]

Eşzamansız araçlar

E-posta adresi

E-posta adresi bilgisayarlar, cep telefonları ve diğer elektronik cihazlar gibi dijital cihazları kullanan kişiler arasında dijital mesaj alışverişi yapma yöntemidir. Çoğunun aksine anlık mesajlaşma araçlar, e-postada ne kullanıcıların ne de bilgisayarlarının aynı anda çevrimiçi olması gerekmez. Şirkette e-posta kullanmanın maliyeti değişir, çünkü örneğin şirketin kendi e-posta sunucusu olabilir.

Deneysel araştırmalar, bir yazılım geliştirme ekibindeki tüm ekip üyelerinin bu aracı etkili bir şekilde kullandığını göstermiştir. Aksine anlık mesajlaşma, e-posta mesajlarının daha bağımsız olması ve iletişim bağlamına daha az duyarlı olması amaçlanır ve bu nedenle e-posta mesajları üretmek, geleneksel IM mesajlarından daha fazla zaman gerektirir.[12]

Bazı e-posta sağlayıcıları Gmail, Outlook.com ve ProtonMail.

Senkron araçlar

Sesli ve görüntülü konferans

Ses ve video konferans alımı ve iletimi için teknolojilerdir ses -video insanlar arasında gerçek zamanlı iletişim için farklı konumlardaki kullanıcılar tarafından sinyaller. Bu tür araçlar, yüz yüze toplantılarda mevcut olan zengin etkileşimi kopyalamaya çalışır.[13] Video konferans gibi zengin eşzamanlı iletişim teknolojisi, vücut dilinin ve tonlamanın katılımcılar arasında anlayış veya anlaşma derecesini aktarabildiği oldukça etkileşimli tartışmalar için uygundur.[17]

Video konferans ayrıca ekip üyelerinin kişisel ilişkiler kurmasına olanak tanıdığından, küresel yazılım geliştiricileri arasında güven geliştirmenin iyi bir yoludur.[18]

Araştırmacılar, İngilizce dil becerilerine güvenmeyen ekip üyelerinin e-posta veya anlık mesajlaşma bitmiş ses ve video konferans, metin tabanlı medya bir yanıtı anlamak ve oluşturmak için daha fazla zaman sağladığından.[19] Metin tabanlı medya ne işitsel ne de görsel özellikler kullanmadığından bu bir sorun haline gelir, bu da önemli bilgileri anlama sürecini engelleyebilir ve yanlış anlamalara yol açabilir.

Yakınlaştır, Buluşmaya git ve Çak beşlik bu tür aletlerin örnekleridir.

Sanal Ofisler

Sanal Ofisler, küresel olarak dağıtılmış bir yazılım mühendisliği ortamında ekipler tarafından ihtiyaç duyulan fiziksel bir ofisin kişisel yakınlığını ve işlevselliğini yeniden oluşturur. "Kanallar" veya "mesaj dizileri" yerine, sanal ofislerin sanal bir ofis alanında odaları vardır.

1970'lerin sonlarında Profesör Thomas J. Allen, mühendisler arasındaki mesafenin artmasının aralarındaki iletişim sıklığını katlanarak azalttığını keşfetti.[20] Sanal ofisler, aralarındaki iletişimi artırmak için bu mesafeyi sanal olarak azaltmanın bir yoludur.

Ayrıca, diğer çalışmalar[21] sanal ofislerin iş koordinasyonunu kolaylaştırdığını ve bir ekipteki performansı iyileştirdiğini gösterin.

Bu alt kümeye ait bazı araçlar Sococo'dur, 8x8 ve Skype Kurumsal.

Sanal gerçeklik

Sanal gerçeklik yıllar geçtikçe ilgi artmıştır. 129 milyonluk bir sektörden büyüdü Amerikan Doları 2015'te 1 milyarı aştı Amerikan Doları 2016 yılı sonu itibarıyla sektörün 4,6 milyara ulaşacağı tahmin edilmektedir. Amerikan Doları 2018'in sonunda.[22]

İletişim eylemi sırasında değiş tokuş edilen içerik, yalnızca aktörlerin dahil olduğu durumların yorumlarıdır. İkincisi, sırayla, bağlama bağlıdır. Sanal gerçekliği bir iletişim aracı olarak kullanma motivasyonu, kişinin bağlam algısının mevcut duyusal bilgilerle orantılı olduğu öncülüne dayanır.

Bir sanal gerçeklik iletişim kurgusunda, katılımcılarının her biri duyusal daldırma altındadır. Bu, oyuncunun içinde bulunduğu bağlamın algılanmasını geliştirir ve bu da iletişim deneyiminin kendisini geliştirir.

Konsept yeni olmasa da, teknoloji ancak 2010 itibariyle önemli ölçüde geliştirilmeye başlandı.

AltspaceVR yakın zamanda bir iletişim aracı olarak kullanılan sanal gerçeklik platformunun bir örneğidir. [1]

Hibrit araçlar

Anlık mesajlaşma

Anlık mesajlaşma (IM), bir "sohbet odası" durumunda iki veya daha fazla taraf arasında mesajların aktarılmasına izin verir. Senkronize veya asenkron olabilir ve daha az müdahaleci iletişim türü olarak kabul edilir.[23] Araştırmalar, geliştiricilerin bu tür araçları meslektaşlarına veya üstlerine hızlı sorular sormak için kullanmayı sevdiklerini gösteriyor.[12]

Naber, Facebook haberci ve HipChat bu tür bir araç için örneklerdir.

Yazılım süreçlerindeki uygulamalar

Çevik

Karıştırma Çevik Yazılım Geliştirme ve Dağıtılmış Yazılım Geliştirme, ekip iletişimine birçok zorluk getirir.[24] Bir yandan, Çevik Yazılım Geliştirme gayri resmi iletişim için bir artış talep ediyor ve resmi iletişimden yoksun dokümantasyon.[25] Öte yandan Dağıtılmış Yazılım Geliştirme, iletişimi başlatmayı zorlaştırır, yanlış anlamalara yol açabilir ve daha önce açıklandığı gibi iletişim maliyetini (zaman, para vb.) Artırır. #Zorluklar iletişim sıklığının azalmasına neden olabilir.[5][26] Bu, çalışma alanını, Dağıtık Çevik Yazılım Geliştirme. Temel ilkelerinden biri, sürekli iletişim gerektiren bireyler ve etkileşimleri arasındaki ilişkileri vurgulamaktadır.[27]

Aşırı Programlama

Aşırı programlama (XP), tüm geliştiricilerin aynı yerde bulunduğu bir ortam için tasarlanmıştır,[28] Bu, Dağıtılmış Yazılım Geliştirme için geçerli değildir. Dahası, XP büyük ölçüde paydaşlar ve geliştiriciler arasındaki sürekli iletişime bağlıdır ve bu da iletişimi XP'nin beş temel değerinden biri yapar.[29] Sonuç olarak, dağıtılmış ortamda iletişim bir XP geliştirme ortamı için son derece önemlidir.[30] ve bu metodolojiyi dağıtılmış bir ortamda uygularken dikkate alınmalıdır.

Referanslar

  1. ^ a b Kraut, Robert E .; Streeter Lynn A. (1995-03-01). "Yazılım geliştirmede koordinasyon". ACM'nin iletişimi. 38 (3): 69–81. doi:10.1145/203330.203345.
  2. ^ Perry, D. E .; Staudenmayer, N. A .; Votta, L. G. (Temmuz 1994). "İnsanlar, kuruluşlar ve süreç iyileştirme". IEEE Yazılımı. 11 (4): 36–45. doi:10.1109/52.300082. ISSN  0740-7459.
  3. ^ Robillard, Pierre N; Robillard, Martin P (2000-09-15). "Yazılım mühendisliğinde ortak çalışma türleri". Sistemler ve Yazılım Dergisi. 53 (3): 219–224. doi:10.1016 / S0164-1212 (00) 00013-3.
  4. ^ a b c Herbsleb, J. D .; Moitra, D. (Mart 2001). "Küresel yazılım geliştirme". IEEE Yazılımı. 18 (2): 16–20. doi:10.1109/52.914732. ISSN  0740-7459.
  5. ^ a b c d Herbsleb, J. D .; Mockus, A. (Haziran 2003). "Küresel olarak dağıtılmış yazılım geliştirmede hız ve iletişimin ampirik bir çalışması". Yazılım Mühendisliğinde IEEE İşlemleri. 29 (6): 481–494. CiteSeerX  10.1.1.110.4806. doi:10.1109 / tse.2003.1205177. ISSN  0098-5589.
  6. ^ Mühendisler., Elektrik ve Elektronik Enstitüsü; Toplum., IEEE Bilgisayar (2010). ICGSE 2010: Beşinci Uluslararası Küresel Yazılım Mühendisliği Konferansı: bildiri: 23-26 Ağustos 2010, Princeton, New Jersey, ABD. IEEE Bilgisayar Topluluğu. ISBN  9780769541228. OCLC  709739809.
  7. ^ Krishna, S .; Sahay, Sundeep; Walsham, Geoff (Nisan 2004). "Küresel Yazılım Dış Kaynak Kullanımında Kültürler Arası Sorunları Yönetme". Commun. ACM. 47 (4): 62–66. doi:10.1145/975817.975818. ISSN  0001-0782.
  8. ^ Šmite, Darja (2006-01-01). "Letonya'nın en büyük şirketlerinden birindeki küresel yazılım geliştirme projeleri: coğrafi dağıtım bir sorun mu?". Yazılım Süreci: İyileştirme ve Uygulama. 11 (1): 61–76. doi:10.1002 / spip.252. ISSN  1099-1670.
  9. ^ Hendriks, Paul (1999-06-01). "Bilgiyi neden paylaşalım? BİT'in bilgi paylaşımı motivasyonu üzerindeki etkisi". Bilgi ve Süreç Yönetimi. 6 (2): 91–100. doi:10.1002 / (SICI) 1099-1441 (199906) 6: 2 <91 :: AID-KPM54> 3.0.CO; 2-M.
  10. ^ Goodman, Paul S .; Darr, Eric D. (1998). "Bilgisayar Destekli Sistemler ve Topluluklar: Dağıtılmış Ortamlarda Örgütsel Öğrenme Mekanizmaları". MIS Üç Aylık. 22 (4): 417–440. doi:10.2307/249550. JSTOR  249550.
  11. ^ a b Mockus, A .; Herbsleb, J. (2001). Küresel yazılım geliştirmenin zorlukları. Bildiriler Yedinci Uluslararası Yazılım Ölçütleri Sempozyumu. s. 182–184. doi:10.1109 / METRIC.2001.915526. ISBN  978-0-7695-1043-9.
  12. ^ a b c Niinimaki, T. (Ağustos 2011). Dağıtılmış Çevik Yazılım Geliştirme Projesinde Yüz Yüze, E-posta ve Anlık Mesajlaşma. 2011 IEEE Altıncı Uluslararası Küresel Yazılım Mühendisliği Çalıştayı Konferansı. sayfa 78–84. doi:10.1109 / icgse-w.2011.15. ISBN  978-1-4577-1839-7.
  13. ^ a b Niinimaki, T .; Piri, A .; Lassenius, C. (Temmuz 2009). Küresel Yazılım Geliştirme Projelerinde Ses ve Metin Tabanlı İletişim Medya Tercihini Etkileyen Faktörler. 2009 Dördüncü IEEE Uluslararası Küresel Yazılım Mühendisliği Konferansı. s. 153–162. doi:10.1109 / icgse.2009.23. ISBN  978-0-7695-3710-8.
  14. ^ Yu, Liguo; Ramaswamy, Srini; Mishra, Alok; Mishra, Deepti (2011-10-17). Küresel Yazılım Geliştirmede İletişim: GTK + OSS Deposunu Kullanan Ampirik Bir Çalışma. Anlamlı İnternet Sistemlerine Geçişte: OTM 2011 Atölyeleri. Bilgisayar Bilimlerinde Ders Notları. 7046. s. 218–227. doi:10.1007/978-3-642-25126-9_32. ISBN  978-3-642-25125-2.
  15. ^ Sundaravej, T .; Mirchandani, D .; Lederer, A. (Ocak 2015). Takım Çalışmasında Eşzamanlı İşbirliği Teknolojisi Kullanımı. 2015 48. Hawaii Uluslararası Sistem Bilimleri Konferansı. s. 216–225. doi:10.1109 / hicss.2015.35. ISBN  978-1-4799-7367-5.
  16. ^ "Boşluğa Dikkat Edin". drennings.github.io. Alındı 2017-06-15.
  17. ^ Dafoulas, G. A .; Swigger, K .; Brazile, R .; Alpaslan, F. N .; Cabrera, V. L .; Serce, F. C. (Ocak 2009). Küresel Ekipler: Günümüz Yazılım Geliştirme Endüstrisi için Fütüristik İşbirliğine Dayalı Çalışma Modelleri. 2009 42. Hawaii Uluslararası Sistem Bilimleri Konferansı. s. 1–10. doi:10.1109 / hicss.2009.231. ISBN  978-0-7695-3450-3.
  18. ^ Bhat, J. M .; Gupta, M .; Murthy, S.N. (Eylül 2006). "Mühendislik Zorluklarının Üstesinden Gelme Gereksinimleri: Offshore Outsourcing'den Alınan Dersler". IEEE Yazılımı. 23 (5): 38–44. doi:10.1109 / ms.2006.137. ISSN  0740-7459.
  19. ^ Noll, John; Beecham, Sarah; Richardson, Ita (Eylül 2011). "Küresel Yazılım Geliştirme ve İşbirliği: Engeller ve Çözümler". ACM Inroads. 1 (3): 66–78. doi:10.1145/1835428.1835445. hdl:10344/656. ISSN  2153-2184.
  20. ^ Allen, Thomas J. (1984). Teknoloji Akışını Yönetmek: Teknoloji Transferi ve Teknolojik Bilginin Ar-Ge Organizasyonu İçinde Yayılması. Cambridge, Massachusetts: MIT Press. ISBN  9780262510271.
  21. ^ van Gameren, Ben; van Solingen, Rini; Dullemond Kevin (2013). 2013 IEEE 8. Uluslararası Küresel Yazılım Mühendisliği Konferansı. s. 206–215. doi:10.1109 / ICGSE.2013.34. ISBN  978-0-7695-5057-2.
  22. ^ "VR pazarının mevcut durumu hakkında rapor" (PDF).
  23. ^ Thissen, M. Rita; Sayfa, Jean M .; Bharathi, Madhavi C .; Austin, Toyia L. (2007). Dağıtık Yazılım Geliştirme Ekipleri için İletişim Araçları. Bilgisayar Personeli Araştırması 2007 ACM SIGMIS CPR Konferansı Bildirileri: The Global Information Technology Workforce. SIGMIS CPR '07. New York, NY, ABD: ACM. s. 28–35. doi:10.1145/1235000.1235007. ISBN  9781595936417.
  24. ^ Ramesh, Balasubramaniam; Cao, Lan; Mohan, Kannan; Xu, Peng (Ekim 2006). "Dağıtılmış Yazılım Geliştirme Çevik Olabilir mi?". Commun. ACM. 49 (10): 41–46. CiteSeerX  10.1.1.477.201. doi:10.1145/1164394.1164418. ISSN  0001-0782.
  25. ^ Highsmith, J .; Cockburn, A. (Eylül 2001). "Çevik yazılım geliştirme: yenilik işi". Bilgisayar. 34 (9): 120–127. doi:10.1109/2.947100. ISSN  0018-9162.
  26. ^ Ebert, C .; Neve, P. De (Mart 2001). "Küresel yazılım geliştirmede hayatta kalmak". IEEE Yazılımı. 18 (2): 62–69. doi:10.1109/52.914748. ISSN  0740-7459.
  27. ^ Alistair., Cockburn (2007). Çevik yazılım geliştirme: ortak oyun. Addison-Wesley. ISBN  9780321482754. OCLC  70867033.
  28. ^ 1967-, Anderson, Ann; Chet., Hendrickson (2001). Aşırı programlama yüklendi. Addison-Wesley. ISBN  978-0201708424. OCLC  44518151.CS1 bakimi: sayısal isimler: yazarlar listesi (bağlantı)
  29. ^ Beck, Kent (2000). Ekstrem Programlama Açıklaması: Değişimi Kucaklayın. Addison-Wesley Profesyonel. ISBN  9780201616415.
  30. ^ Layman, Lucas; Williams, Laurie; Damian, Daniela; Bures, Hynek (Eylül 2006). "Küresel bir yazılım geliştirme ekibinde Extreme Programlama için temel iletişim uygulamaları". Bilgi ve Yazılım Teknolojisi. Özel Sayı Bölümü: Dağıtılmış Yazılım Geliştirme. 48 (9): 781–794. CiteSeerX  10.1.1.463.7225. doi:10.1016 / j.infsof.2006.01.004.

Dış bağlantılar