Selasa, 09 Agustus 2022

StackOverflow and GitHub: Associations Between Software Development and Crowdsourced Knowledge

Apa itu StackOverflow dan GitHub? Apa hubungan antara pengembangan perangkat lunak dan pengetahuan kolaboratif? StackOverflow adalah komunitas Tanya Jawab pemrograman online populer yang memungkinkan peserta mengakses pengetahuan dan pengalaman rekan-rekan mereka dengan cepat, yang sangat berguna bagi programmer. Terlepas dari popularitas StackOverflow, perannya dalam siklus kerja pengembang sumber terbuka masih belum diketahui? Di satu sisi, partisipasi menawarkan potensi untuk memperluas pengetahuan masing-masing pengembang, sehingga meningkatkan dan mempercepat proses pembangunan. Di sisi lain, berpartisipasi dalam StackOverflow akan mengganggu ritme kerja normal pengembang dan memperlambat proses pengembangan. Dalam artikel ini, kami memeriksa interaksi antara aktivitas Stack Overflow dan proses pengembangan sebagaimana tercermin dalam perubahan kode yang dibuat di GitHub, repositori kode sosial terbesar. Penelitian kami menunjukkan bahwa pengguna aktif GitHub mengajukan lebih sedikit pertanyaan dan memberikan lebih banyak jawaban dibandingkan pengguna lain. Selain itu, kami mengamati bahwa penulis pertanyaan StackOverflow yang aktif memiliki distribusi pekerjaan yang lebih tidak merata dibandingkan pengembang yang tidak mengajukan pertanyaan. Terakhir, kami menunjukkan bahwa meskipun terjadi pemadaman, tingkat aktivitas StackOverflow masih berkorelasi dengan aktivitas perubahan kode di GitHub.

Mengapa kita perlu memahami bahwa pengembang membuat dan memelihara perangkat lunak dengan membantu orang lain? Mereka menggunakan kembali komponen dan perpustakaan dan mencari informasi di Internet untuk membantu mereka menyelesaikan tugas mereka [2]. Untuk mendapatkan bantuan dengan kode mereka, pengembang sering kali beralih ke komunitas tanya jawab (Q&A) pemrograman, khususnya StackOverflow1 (SO) [3]. Apa itu? Untuk mendorong peserta berkontribusi lebih banyak, StackOverflow menggunakan gamifikasi[4]? Voting mencerminkan reputasi individu dan dapat dilihat sebagai ukuran pengalaman perekrut potensial [5], dan pengguna diketahui lebih termotivasi. Dorong mereka untuk berkontribusi [4]. Dengan mengajukan pertanyaan di StackOverflow, pengembang bisa mendapatkan bantuan dan saran dari rekan kerja, seperti cuplikan kode mereka sendiri atau fitur teknis yang tidak terdokumentasi [6]. Dengan menjawab pertanyaan orang lain, pengembang dapat berbagi pengetahuan dan pengalaman, membantu dan mendidik orang lain, atau bersaing untuk mendapatkan posisi lebih tinggi dalam game. 1http?//stackoverflow.com Analogi StackOverflow sebagai lembaga pendidikan yang efektif telah terbukti. Selain manfaat langsung, dampak pendidikan secara keseluruhan adalah mempercepat atau mendorong kemajuan sosial.

Mengapa kita perlu memahami bahwa StackOverflow memiliki dampak yang sama terhadap komunitas pengembangan perangkat lunak? Hubungan antara produktivitas pengembang dan penggunaan StackOverflow tidak jelas. Di satu sisi, StackOverflow dikenal menyediakan solusi teknis yang baik [6] dan menerapkannya dengan cepat [3], sehingga integrasi yang lebih erat antara situs Tanya Jawab dan IDE modern kini direkomendasikan [7]. Di sisi lain, penggunaan Stack Overflow sebagai proxy jaringan sosial dapat menyebabkan gangguan yang berdampak pada kinerja pengembang [1], terutama jika mempertimbangkan gamifikasi. Dalam artikel ini, kita mengeksplorasi interaksi antara bertanya dan menjawab pertanyaan di StackOverflow dan membuat perubahan pada repositori GitHub2 sumber terbuka. GitHub bisa dibilang merupakan situs web pengkodean sosial terbesar [9], menampung lebih dari 3 juta proyek perangkat lunak dan dikelola oleh lebih dari 1 juta pengembang terdaftar. Apakah terdapat tumpang tindih antara kedua platform ini dalam ekosistem berbagi pengetahuan? Pengembang GitHub dapat beralih ke StackOverflow untuk mendapatkan bantuan memecahkan tantangan teknis mereka. Demikian pula, mereka dapat berpartisipasi dalam StackOverflow untuk memenuhi kebutuhan pengetahuan orang lain yang mungkin tidak berpengalaman seperti mereka. Dengan mengidentifikasi pengguna GitHub yang aktif di Stack Overflow dan memeriksa aktivitas mereka di kedua platform, kami dapat memahami apakah ada hubungan antara keterlibatan mereka di StackOverflow dan produktivitas mereka di GitHub. Apa itu? Objektif? Apakah partisipasi dalam StackOverflow terkait dengan produktivitas pengembang GitHub? Menurut Adams dkk.

Mengapa kita perlu mengetahui bahwa kita hanya menganalisis satu aspek yang mewakili produktivitas pengembang? Jumlah komitmen yang dibuat oleh pengembang dalam jangka waktu tertentu. Tentu saja, jangka waktu dan kualitas komitmen dapat berbeda-beda, sehingga jumlah komitmen tidak cukup untuk mengukur keseluruhan kontribusi pengembang terhadap proyek atau bahkan untuk menghitung konsumsi energi dalam prosesnya. Namun, ini adalah representasi atau pilihan aktivitas khas yang dilakukan pengembang saat mengerjakan proyek. 2http?//github.com Karena hubungan yang kompleks lebih mudah dipahami dari berbagai perspektif dan resolusi, kami memeriksa hubungan antara StackOverflow dan GitHub pada tiga tingkat berbeda. Pada tingkat makro, kami menganalisis aktivitas waktu agregat (total) (pertanyaan, jawaban, dan komitmen) di kedua platform oleh pengembang yang aktif di kedua platform. Pada tingkat ini, kami berharap dapat mengidentifikasi perbedaan dalam partisipasi kontributor GitHub di StackOverflow dan memahami apakah kelompok pengembang tertentu mendapat manfaat lebih banyak dari partisipasi dalam SO dibandingkan kelompok pengembang lainnya. Faktanya, pengguna GitHub mencakup programmer pemula dan profesional [11]. Meskipun perilaku mencari makan diketahui umum terjadi antara pemula dan ahli [2], kebiasaan makan mereka berbeda [12], yang mungkin memiliki efek berbeda pada kinerja mereka.

Mengapa kita perlu memahami: Demikian pula, peran yang berbeda dapat diidentifikasi berdasarkan kuantitas dan kualitas pertanyaan, jawaban, dan komentar dari peserta StackOverflow [13]. Namun, kedua platform hanya menggunakan informasi tentang aktivitas kontributor dalam setiap platform untuk mengidentifikasi peran. Kami ingin memahami bagaimana kelompok pengembang ini terhubung di seluruh platform dan sejauh mana aktivitas (keterampilan) di satu platform dapat digunakan sebagai pengganti aktivitas (keterampilan) di platform lain. Hubungan ini penting, misalnya, ketika menilai keandalan isyarat sosial untuk kemajuan karir [5]. Pertanyaan 1? (Tingkat makro) Bagaimana semua aktivitas pengembang di kedua platform terkait? Misalnya, apakah mitra GitHub lebih proaktif ketika menghadapi masalah sistem operasi? Apakah responden aktif lebih terlibat? Pada tingkat menengah, kami mencoba menangkap distribusi unit kerja dari waktu ke waktu dan membandingkannya dengan keterlibatan komunitas di StackOverflow. Kami tertarik untuk memahami bagaimana pengembang mengatur waktu mereka berdasarkan jumlah aktivitas Tanya Jawab. Apakah kelompok pengembang yang berbeda memiliki produktivitas yang berbeda (misalnya, penanggap OS yang aktif mungkin lebih berpengalaman tetapi cara kerjanya berbeda dibandingkan penanggap OS yang kurang aktif)? Semburan aktivitas yang intens dan periode tidak aktif yang lama menunjukkan perhatian yang terfokus pada waktu-waktu tertentu, sedangkan distribusi interval waktu antar aktivitas yang lebih merata menunjukkan kecepatan kerja yang lebih konsisten tetapi kurangnya perhatian pada waktu-waktu tertentu. Ini dibagi menjadi dua platform. Diketahui bahwa ritme kerja pengembang mempengaruhi kualitas perangkat lunak [14].

Mengapa kita perlu mengenal diri kita sendiri secara mendalam untuk menjawab pertanyaan penelitian berikut? Apakah pola penerapan (pekerjaan) pengembang paling aktif di SO (Medium) di GitHub berbeda dengan pola penerapan pengembang paling tidak aktif di StackOverflow? Terakhir, pada tingkat mikro, kami menghubungkan komitmen GitHub dengan pertanyaan dan jawaban StackOverflow dari waktu ke waktu. Kami ingin melihat apakah aktivitas di kedua platform menunjukkan tanda-tanda koordinasi, yaitu apakah laju pertanyaan yang diajukan atau dijawab di SO berkorelasi dengan laju aktivitas penerapan di GitHub. Tolong beritahu saya secara spesifik? PI3? (Tingkat mikro) Apakah terdapat interaksi atau koordinasi fungsional antara kegiatan partisipasi dan kegiatan informasi? Artinya, apakah mereka akan lebih sering muncul ketika waktu tanya jawab semakin dekat? Bagaimana jika tidak? Sisa dokumen ini disusun sebagai berikut. Setelah membahas pekerjaan terkait di Bagian 2, kami membahas cara memperoleh dan menyiapkan data di Bagian 3. Kami membedakan antara tampilan makro (misalnya, apakah pengguna GitHub reguler juga merupakan pengguna StackOverflow?) dan tampilan perantara (misalnya, bagaimana aktivitas StackOverflow memengaruhi produktivitas pengembang). ? ) dan mempublikasikan microviews (misalnya Stack Overflow - dapatkah Anda menemukan peristiwa yang terjadi bersamaan dengan GitHub?)))? ) dan dibahas pada Bagian IV, V dan VI. Terakhir, di Bagian VII, kami merangkum kontribusi kami dan menguraikan arah penelitian di masa depan. 2. Apa yang dimaksud dengan pekerjaan terkait? Banyaknya informasi yang dibagikan pengembang melalui media sosial mengubah cara mereka berkolaborasi, berkomunikasi, dan belajar [1], [5], [11] dan pada akhirnya cara mereka mengembangkan perangkat lunak untuk pengembangan Create.

StackOverflow dikenal mencakup berbagai topik rekayasa perangkat lunak dan menarik banyak pengembang perangkat lunak. Popularitas Stack Overflow di kalangan pengembang perangkat lunak juga meningkatkan minat komunitas riset [15]. Namun, dampak StackOverflow terhadap produktivitas masih belum jelas. Di satu sisi, beberapa orang percaya bahwa berpartisipasi dalam StackOverflow dapat mengganggu dan mempengaruhi kinerja pengembang [1]. Faktanya, Bacelli dkk. [7] dan Cordeiro dkk. [8] berpendapat bahwa kurangnya integrasi antara situs Q&A dan IDE modern memaksa pengembang untuk memutus arus dan mengubah konteks setiap kali mereka perlu mengerjakan sesuatu, sehingga menunda aktivitas mereka. Xuan dkk.

Mengapa kita perlu mengetahui bahwa aktivitas komunikasi sosial (seperti menanyakan atau menjawab pertanyaan StackOverflow) menunda aktivitas pemrograman karena bersaing untuk mendapatkan sumber daya waktu pengembang? Faktanya, “banyaknya informasi menyebabkan kurangnya perhatian dan kebutuhan untuk mendistribusikan informasi secara efektif di antara banyak sumber informasi yang tersedia” [17]. Di sisi lain, berpartisipasi dalam StackOverflow dapat mempercepat aktivitas pengembangan dengan memberikan solusi cepat terhadap tantangan teknis, sehingga menghemat waktu berharga pengembang. Apa itu Mamykina dkk? [3] menunjukkan bahwa sebagian besar pertanyaan StackOverflow dijawab rata-rata dalam 11 menit. Panin dkk. [6] berpendapat bahwa StackOverflow adalah sumber yang lebih baik untuk dokumentasi API, sementara Brandt et al. [2] mengusulkan agar pengembang dapat mengandalkan informasi dan cuplikan kode sumber di Web untuk menyebarkan pengetahuan mereka secara lebih efektif dan dengan demikian mencurahkan lebih banyak energi untuk tugas-tugas tingkat yang lebih tinggi.

Alasan Selain itu, berpartisipasi dalam StackOverflow dan mengembangkan perangkat lunak di repositori GitHub publik juga dapat dianggap sebagai aktivitas sosial. StackOverflow mengevaluasi kontribusi peserta berdasarkan poin reputasi dan lencana, memberi mereka akses ke fitur baru dan kontrol lebih besar terhadap kontribusi orang lain. Dengan cara ini, StackOverflow mendorong semua pengguna di persimpangan GitHub dan StackOverflow untuk berpartisipasi aktif dalam StackOverflow dengan mengajukan atau menjawab pertanyaan secara bersamaan. Oleh karena itu kami meminta pengguna untuk tetap aktif di kedua platform. Oleh karena itu, kami menyaring pengguna yang tidak memposting, mengajukan pertanyaan, atau menjawab pertanyaan antara Juli 2011 dan April 2012. Hal ini semakin mengurangi ukuran kumpulan data persimpangan menjadi 46.967 pengguna. (atau 11,8% dari kumpulan data GitHub). Empat. Tampilan Makro Untuk memeriksa bagaimana penerapan GitHub mencerminkan aktivitas StackOverflow, pertama-tama kami membuat tampilan makro dan memeriksa distribusi jumlah peristiwa dari setiap jenis (C untuk penerapan, Q untuk pertanyaan, dan A untuk jawaban). Untuk setiap pasangan jenis peristiwa yang diurutkan (misalnya (C, Q)), kami mengurutkan data berdasarkan satu dimensi (misalnya C), mengelompokkan berdasarkan dimensi lain (misalnya Q), dan membandingkan distribusi yang dihasilkan.

Mengapa kita perlu mengetahui manfaat melakukan eksperimen yang membagi kelompok menjadi kuartil dan desil? Namun, kami hanya melaporkan hasil kuartil karena membaginya dengan desil menghasilkan hasil yang serupa. Pendekatan “pisahkan dan bandingkan” ini lebih unggul daripada metode statistik tradisional untuk membandingkan korelasi, seperti koefisien korelasi dan model regresi, karena pendekatan ini hanya dapat mendeteksi hubungan yang monoton (misalnya, “Sejumlah besar komitmen sama dengan sejumlah besar komitmen”). . ). “Lebih banyak pertanyaan dan lebih sedikit konfirmasi berarti lebih sedikit pertanyaan” atau “Lebih banyak konfirmasi berarti lebih sedikit jawaban dan sebaliknya”). Metode pemisahan dan perbandingan () bila digunakan dengan prosedur uji statistik yang sesuai. (Lihat di bawah) Hubungan yang tidak monoton juga dapat diidentifikasi (misalnya, “Angka komitmen yang lebih tinggi dan lebih rendah dikaitkan dengan lebih banyak masalah, permintaan tidak terlalu tinggi atau terlalu rendah, sehingga permintaan tidak rendah”). Uji hubungan antara setiap pasangan kelompok. Langkah pertama biasanya dilakukan dengan ANOVA atau mitra nonparametriknya (ANOVA Kruskal-Wallis berdasarkan peringkat satu faktor), dan langkah kedua dilakukan dengan ANOVA berdasarkan uji Wilcoxon-Mann-Whitney. Sayangnya, hipotesis nol dapat ditolak di semua pengujian tanpa menolak semua subhipotesis dan sebaliknya [23].

Mengapa kita perlu mengetahui bahwa studi simulasi menunjukkan bahwa uji Wilcoxon-Mann-Whitney tidak kuat terhadap varians populasi yang tidak setara, terutama ketika ukuran sampel tidak sama? Jadi apakah pendekatan satu tahap lebih baik? Pendekatan ini harus menghasilkan interval kepercayaan yang secara konsisten menghasilkan keputusan pengujian yang sama di beberapa perbandingan. Untuk tujuan ini, kami menerapkan metode pengujian kontras ganda yang baru-baru ini diusulkan Te [25], menggunakan tingkat kesalahan tradisional sebesar 5%. T_ mewakili varians populasi, yang kuat terhadap ketimpangan dan dapat diterapkan pada berbagai jenis pengujian, termasuk perbandingan semua pasangan distribusi, yang disebut uji Tukey. Untuk perbandingan Tukey, kami merangkum hasil T menggunakan T-chart [22]. Dalam grafik asiklik berarah seperti itu, node berhubungan dengan kelompok berbeda yang dibandingkan, dan tepi berhubungan dengan hasil perbandingan berpasangan. A memiliki keunggulan dibandingkan B jika A cenderung memiliki nilai lebih tinggi daripada B untuk metrik tertentu (yaitu Te melaporkan p <0,05 untuk perbandingan AB). Karena T~ menghormati transitivitas, kita menghilangkan sisi langsung B antara A dan B jika jalur dari A ke B melewati setidaknya satu titik lain pada grafik T.

Mengapa kita perlu memahami contoh pada Gambar 2: T-Chart yang merangkum hasil proses T yang diterapkan pada empat himpunan nilai A, B, C, dan D? Nilai D cenderung lebih tinggi dibandingkan nilai B dan C, namun lebih rendah dibandingkan TO. A cenderung memiliki nilai lebih tinggi dibandingkan semua kelompok lainnya (D Direct, B dan C Pass-Through). B. Ternyata orang hebat juga pandai bertanya? ? Setelah mengurutkan data berdasarkan dimensi C dalam urutan menurun, kami membagi dimensi Q menjadi kuartil dan membandingkan kelompok yang dihasilkan secara berpasangan. Hasilnya (Gambar 3a) menunjukkan bahwa 25% peserta yang paling aktif (Q1) menanyakan lebih sedikit pertanyaan tentang StackOverflow dibandingkan kuartil lainnya, namun terdapat sedikit perbedaan dalam aktivitas Q antara Q2, Q3, dan Q4, yang menunjukkan aktivitas yang lebih tinggi. Apakah peserta GitHub adalah pengembang berpengalaman yang tidak memerlukan banyak saran teknis? Mereka berkontribusi banyak pada StackOverflow tanpa banyak bantuan. Host GitHub aktif menanyakan lebih sedikit pertanyaan tentang StackOverflow dibandingkan host lainnya. Apakah orang yang berkinerja tinggi juga merupakan orang yang memberikan respons yang tinggi? ? Setelah mengurutkan data dalam urutan menurun berdasarkan dimensi C, kami membagi dimensi A menjadi kuartil dan membandingkan kelompok yang dihasilkan secara berpasangan. Hasilnya (Gambar 3b) menunjukkan urutan yang sempurna? Peserta yang paling aktif memberikan lebih banyak jawaban (misalnya pengembang menjawab lebih banyak pertanyaan di Q2 dibandingkan Q3 atau Q4, namun lebih sedikit dibandingkan Q1).

Mengapa kita perlu mengetahui aktivitas GitHub dapat dilihat sebagai indikator kesediaan seseorang untuk menjawab pertanyaan teknis tentang StackOverflow atau tingkat pengalamannya. Ketika dianalisis lebih lanjut dalam konteks gamifikasi, apakah hasil ini menunjukkan bahwa pengguna utama StackOverflow adalah “superstar” dan bukan “pengintai” [26]? Mereka tidak hanya bersaing untuk mendapatkan reputasi dan lencana, namun mereka sebenarnya adalah pengembang perangkat lunak yang aktif. Pengelola GitHub paling aktif di StackOverflow memberikan jawaban lebih lanjut. Apakah orang yang banyak bertanya juga termasuk orang yang berkinerja tinggi? ? Urutkan data dalam urutan menurun sepanjang dimensi Q, bagi dimensi C menjadi kuartil, dan bandingkan hasil setiap kelompok secara berpasangan. Hasilnya (Gambar 3c) menunjukkan bahwa hubungan non-monotonik antara Q dan C tidak dapat diungkapkan dengan menggunakan teknik korelasi tradisional. Di satu sisi, pemohon yang kurang aktif (pengguna Q4 yang mengajukan lebih sedikit pertanyaan) menghasilkan lebih banyak keterlibatan dibandingkan pengguna lain. (a) Pengikut Q1 mengajukan lebih sedikit pertanyaan (b) Pengikut aktif menjawab lebih banyak pertanyaan (c) Responden Q4 mengajukan lebih banyak pertanyaan (d) Responden menanyakan lebih banyak SO dibandingkan dengan pertanyaan Q4. Sebaliknya, responden lebih aktif menulis di SO. Salah satu dari yang lain.

Mengapa kita perlu memahami Q1? Apa artinya bagi kandidat untuk lebih terlibat dalam GitHub? lainnya. Lebih banyak dibandingkan kuartal kedua. Gambar 3? Tampilan makro tingkat aktivitas pengguna aktif di GitHub dan StackOverflow [Juli 2011 hingga April 2012].

Kenapa apa apa? Apakah pengamatan ini sesuai dengan tambahan sebelumnya? Peserta yang paling aktif adalah mereka yang mengajukan pertanyaan paling sedikit. Sebaliknya responden lebih banyak melakukan aktivitas pada triwulan I (paling aktif) dibandingkan triwulan II. Hal ini menunjukkan bahwa mereka aktif belajar, menemukan jawaban atas tantangan teknis, mencoba solusi yang diusulkan, dan mendapatkan wawasan GitHub. Namun tuduhan tersebut memerlukan penyelidikan lebih lanjut.

Mengapa kita perlu mengetahui bahwa aktivitas yang lebih sedikit dari pihak penanya berarti bahwa penulis lebih terlibat dibandingkan yang lain? Namun apakah kandidat yang paling aktif tidak dapat dibedakan berdasarkan aktivitas keterlibatannya? Pelamar teraktif lebih aktif dibandingkan pelamar teraktif kedua. Apakah banyak dari mereka yang disurvei juga baik-baik saja? ? Setelah mengurutkan data sepanjang dimensi  dalam urutan menurun, kami membagi dimensi  menjadi kuartil dan membandingkan kelompok yang dihasilkan secara berpasangan. Hasilnya (Gambar 3d) menunjukkan proses sempurna lainnya? Responden yang lebih aktif akan lebih terlibat. Apakah pengamatan ini sesuai dengan tambahan sebelumnya? Peserta yang lebih aktif memberikan lebih banyak jawaban. Hal ini menunjukkan bahwa menjawab pertanyaan di StackOverflow dapat dipandang sebagai indikator aktivitas implementasi seseorang. Responden StackOverflow yang paling aktif mendorong lebih banyak konten ke GitHub. Abstrak? Apakah kita melihat hubungan langsung antara aktivitas penerapan GitHub dan aktivitas Tanya Jawab StackOverflow? Semakin aktif partisipan, semakin banyak jawaban yang diberikan, dan semakin aktif responden, maka penulis semakin terlibat.

Mengapa kita perlu memahami hubungan terbalik antara aktivitas penerapan GitHub dan aktivitas masalah StackOverflow? Mitra GitHub yang aktif menyebabkan lebih sedikit masalah dibandingkan mitra yang tidak aktif. Secara keseluruhan, hasil ini menunjukkan bahwa peringkat aktivitas kontributor StackOverflow mencerminkan peringkat kontribusi sumber terbuka GitHub, sehingga meningkatkan kepercayaan terhadap kredibilitas sinyal sosial berbasis OS (misalnya, banyak responden SO cenderung juga menggunakan GitHub untuk menjadi kontributor). sangat aktif). . 5. Perluas wawasan Anda. Dari perspektif makro, kita mengabaikan janji-janji, pertanyaan dan jawaban yang muncul dan perhatian kita terbatas pada beberapa peristiwa saja. Kami menyempurnakan metode ini lebih lanjut dan menambahkan informasi tentang interval waktu antara peristiwa yang berurutan. Menurut Xuan dkk. [16] Kita mendefinisikan kecepatan seseorang dalam melakukan aktivitas tertentu (bertanya, bertanya/menjawab pertanyaan), dimana kecepatan tersebut ditentukan oleh waktu interaksi? Δti = ti+1 – ti, dimana ti adalah waktu kegiatan i – contoh kegiatan menyodok (melakukan, bertanya, menjawab). Pada bagian ini kita akan fokus secara khusus pada penerapan ritme.

Mengapa ini terjadi? A. Metodologi Kami tertarik untuk memahami bagaimana pengembang mengalokasikan waktu mereka sesuai dengan komitmen mereka, yaitu apakah mereka mengikuti ritme kerja yang stabil. Untuk mengevaluasi seberapa cepat pengembang melakukan komitmen, kami menghitung indeks Gini waktu antara komitmen mereka. Indeks Gini adalah indikator ekonometrik populer untuk mempelajari ketimpangan pendapatan atau distribusi kekayaan. Hal ini sering digunakan untuk menggabungkan metrik perangkat lunak, seperti: BB, [27], [28]. Berapa kisaran nilai indeks Gini [0;1 – 1n] berdasarkan jumlah nilai yang tercatat? Indeks Gini sebesar 0 menunjukkan pemerataan waktu pengembang dibandingkan dengan komitmen pengembang. Jam kerja stabil. Irama: Indeks Gini mendekati maksimum, artinya terdapat kesenjangan yang besar antar komitmen. Karena jumlah interval antar penerapan bervariasi dari satu pengembang ke pengembang lainnya, kami menormalkan nilai indeks Gini dengan membaginya dengan 1 – 1n. Mirip dengan Bagian 4, kami membagi individu menjadi kuartil berdasarkan jumlah pertanyaan yang diajukan atau jawaban yang diberikan di StackOverflow. Kami kemudian membandingkan nilai Gini yang dinormalisasi yang dihitung dari deret waktu setiap interval penerapan GitHub untuk setiap kuartil.

Mengapa kita perlu mengetahui hal ini untuk memahami apakah kelompok pengembang yang berbeda memiliki tingkat produktivitas yang berbeda? Misalnya, responder StackOverflow yang aktif (lihat di atas yang juga merupakan committer aktif) mungkin memiliki lebih banyak pengalaman dibandingkan responder yang kurang aktif dan mungkin berfungsi secara berbeda. Untuk membandingkan beberapa distribusi (distribusi yang menghasilkan nilai indeks Gini untuk setiap kuartil), kami mengikuti metode yang dijelaskan pada Bagian IV-AB Hasil. Kami pertama kali menggunakan jumlah masalah sebagai dasar untuk mengelompokkan pengembang ke dalam kuartil. Namun mediannya adalah 0, artinya separuh pengembang tidak mengajukan pertanyaan dan kami tidak dapat lagi membedakan Q1 dari Q2. Jadi mari kita bandingkan nilai indeks Gini yang dinormalisasi yang tersebar dalam tiga interval waktu antara penerapan GitHub? Distribusi pada Q12 tidak menyelesaikan masalah, distribusi pada Q3 menyelesaikan masalah paling sedikit, dan distribusi pada Q3 menyelesaikan masalah paling sedikit. Distribusi Q12 Q3. Q3 memecahkan sebagian besar masalah. kuartal ketiga. kuarter keempat. Masalah ini telah teratasi. Dengan menggunakan proses Te, kami menyimpulkan bahwa penanya aktif memiliki nilai indeks Gini ternormalisasi yang lebih tinggi dibandingkan non-penanya (p = 0,013), yaitu penanya aktif menunjukkan upaya yang lebih besar. Tidak ada pengembang. Mengajukan pertanyaan.

Dengan kata lain, pengembang yang mengajukan banyak pertanyaan tentang StackOverflow akan membuat perubahan pada GitHub, pertama dengan lonjakan aktivitas dan kemudian dengan periode tidak aktif yang lebih lama dengan menargetkan momen tertentu. Spesialisasi (atau fokus) pengembang sebelumnya juga telah dicatat dalam jenis kegiatan (misalnya, pengkodean vs terjemahan) atau dokumentasi yang terkait dengan proyek publik [22], [29]. Di sisi lain, tidak ada perbedaan yang signifikan antara skor indeks Gini masyarakat, yang dinormalisasi dan dibagi menjadi kuartil berdasarkan jumlah jawaban yang mereka laporkan secara berurutan di StackOver. Jadi, mengajukan pertanyaan di StackOverflow berdampak pada cara pengembang membagi waktu mereka antara penerapan di GitHub, sementara menjawab pertanyaan tampaknya tidak memiliki efek yang sama. Pengamatan ini konsisten dengan harapan kami sebelumnya bahwa pengembang belajar dari StackOverflow dan membawa pengalaman mereka ke GitHub, dan juga konsisten dengan literatur tentang pengaruh media sosial terhadap pengembangan perangkat lunak [1], [11]. Penanya StackOverflow aktif memiliki distribusi pekerjaan yang lebih tidak merata (yaitu lebih banyak perhatian) dibandingkan pengembang yang tidak mengajukan pertanyaan. Lihat itu. Visi Mikro Sejauh ini kita mengabaikan urutan antara janji, pertanyaan, dan jawaban.

Mengapa kita perlu mengetahui bahwa hal tersebut masih masuk akal? Penglihatan mikroskopis memperhitungkan aspek waktu ini dengan memandang pertanyaan, pertanyaan, dan jawaban sebagai rangkaian waktu. Untuk menguji interaksi antar aktivitas, kami mengikuti pendekatan Xu et al. Metode yang direkomendasikan. [enambelas]. A. Interaksi antar aktivitas: Pertimbangkan jadwal aktivitas GitHub dan StackOverflow untuk pengembang tertentu (Gambar 4a). Misalkan A dan 13 adalah dua aktivitas yang ingin kita bandingkan (misalnya C dan Q). Untuk setiap kejadian t4i dari A, kami mengevaluasi penundaan 8Bi (diukur sebagai selisih antara t4i dan kejadian pertama dari 13 kejadian setelah t4i) dan penundaan respons ρBi (diukur sebagai selisih antara t4i+1 dan 13 kejadian terakhir). . Peristiwa). acara pertama) acara. sebelum t4i+1 (Gbr. 4b). Urutan eB dan ρB mencirikan hubungan antara A dan 13.

Mengapa? Untuk memverifikasi bahwa urutan spesifik dari 13 peristiwa ini adalah 8, kami menggunakan notasi yang sedikit berbeda dari artikel asli agar lebih mudah dibaca [16]. QQQAQA Gambar 4? Langkah-langkah untuk menghasilkan simulasi deret waktu aktivitas StackOverflow. Mungkin secara kebetulan, pengembang membuat m permutasi acak (131,...,13m) yang muncul masing-masing 9 dan 13 kali. Reorganisasi dilakukan sedemikian rupa sehingga durasi “waktu menganggur” antara dua kejadian berturut-turut dari aktivitas 13 dipertahankan, namun urutan “waktu menganggur” diacak (Gbr. 4c, d). Misalnya cB1, ... , EBm dan ρB1, ...

Oleh karena itu, ρBm adalah himpunan penundaan evaluasi dan respons 131, ..., sesuai dengan 13m (Gbr. 4e). Terakhir, kami menggabungkan semua rangkaian eB dari pengembang berbeda menjadi EB, semua ρB menjadi PB, dan seterusnya. Selanjutnya kita bandingkan EB dengan EB1,..., EBm dan PB dengan PB1,..., PBm. Namun, tidak seperti Bagian IV, kami tidak lagi tertarik pada perbandingan berpasangan antara kelompok yang berbeda, melainkan membandingkan satu distribusi (“kontrol”) dengan distribusi lain (“perlakuan”). Perbandingan jenis ini disebut perbandingan tipe Dunnett dan juga didukung oleh eT.

Mengapa kita perlu mengetahui bahwa kita membandingkan Te dengan Dunnett (menggunakan EB dan PB sebagai kontrol) padahal setiap rangkaian memiliki margin kesalahan tradisional sebesar 5%? • Jika A dan 13 independen, maka EB dan PB secara statistik tidak dapat dibedakan dari pengendaliannya. Teman simulasi • Jika A tertunda sebesar 13, waktu tunda statistik EB lebih lama dari waktu tunda evaluasi simulasi. Demikian pula, untuk 13 latensi, A,PB secara statistik lebih panjang dibandingkan latensi respons yang disimulasikan. • Jika A meningkatkan kecepatan sebesar 13, latensi EB secara statistik lebih rendah daripada rating yang disimulasikan. Ketika 13 A dipercepat, PB secara statistik lebih pendek daripada latensi respons yang disimulasikan. Untuk menghindari kemungkinan ketidakkonsistenan antara hasil m acak Te, kami menerapkan skema berikut. Kita mengatakan bahwa dua aktivitas tidak saling mempengaruhi (ditunjukkan dengan “tidak ada”) jika paling banyak salah satu simulasi menghasilkan perbandingan yang signifikan secara statistik. Kalau tidak, kita berbicara tentang 9. Dalam percobaan kita, kita memilih m = 10.

Alasan mengisi Formulir 2? Aktivitas StackOverflow dan interaksi dengan GitHub dimulai oleh peserta yang berbeda (dari aktivitas terendah di Q1 hingga aktivitas tertinggi di Q4). Akselerasi (deselerasi) terjadi ketika setidaknya 80% simulasi menunjukkan akselerasi (deselerasi). Dalam semua kasus lain kami mengatakan bahwa pengaruhnya tidak dapat ditentukan. Karena kami fokus pada dampak aktivitas StackOverflow (Q, A) pada penerapan GitHub (C) dan sebaliknya, kami selalu memilih penerapan GitHub sebagai salah satu aktivitas dan memodifikasi aktivitas StackOverflow secara berbeda dari aktivitas lainnya. B. Hasil Untuk memverifikasi bahwa aktivitas StackOverflow hanya memengaruhi kelompok pelaksana tertentu (misalnya, pelaksana yang sangat aktif), kami membagi pelaksana ke dalam kuartil berdasarkan jumlah total implementasinya (seperti yang dijelaskan di bagian sebelumnya). Hasil kami dirangkum dalam Tabel II. Pertama, kami mencatat bahwa hasilnya konsisten.

Mengapa kita perlu tahu  latensi sebenarnya dari separuh penghasil emisi paling aktif (Q3 dan Q4) cenderung lebih rendah daripada latensi yang disimulasikan. Hal ini menunjukkan bahwa bagi para pengembang ini, mengajukan pertanyaan dan mengajukan pertanyaan adalah saling melengkapi, dan mengajukan pertanyaan dan menjawab pertanyaan juga saling melengkapi. Bagi pelaksana aktif, mengajukan pertanyaan tentang Stack Overflow akan mendorong adopsi di GitHub. Selain itu, menjawab pertanyaan dari pemain aktif di StackOverflow dapat mempercepat penerapan di GitHub. Perbedaan serupa dapat diamati pada dampak aktivitas StackOverflow pada keterlibatan GitHub ketika pengembang paling aktif dan paling tidak aktif dikelompokkan berdasarkan berapa lama mereka berada di GitHub (bagi mereka yang telah berada di GitHub lebih lama). Efek katalitik ini lebih jelas terlihat. Waktu). Atau banyaknya pertanyaan tentang SO (katalisis lebih jelas untuk formulator aktif). Akhirnya, hasil yang sedikit berbeda diperoleh ketika mengelompokkan berdasarkan jumlah tanggapan terhadap SO (Tabel III). Saat menjawab pertanyaan, apakah hanya orang yang menjawab pertanyaan paling positif (Q4) yang diuntungkan? Menjawab pertanyaan di StackOverflow dan membuat perubahan di GitHub dapat mempercepat satu sama lain. Sebaliknya, penjawab aktif (P3 dan P4) dan pengembang yang tidak menjawab pertanyaan (penanya eksklusif atau pencari pengetahuan eksklusif; P1) mengalami kecepatan pertanyaan lebih cepat? Ada pertanyaan tentang hal ini di StackOverflow dan masalah di GitHub. Ubah kecepatan pertanyaan menjadi “Aktif”. lainnya.

Apa alasan isi Tabel 3? Interaksi antara aktivitas StackOverflow dan konten GitHub yang dikirimkan oleh responden bervariasi dari Kuartal 1 (paling tidak aktif) hingga Kuartal 4 (paling aktif). Pertanyaan dan jawaban? Dampak pada Q1: Q1 (Q1) Tidak tersedia. Q2 (Tidak Tersedia) pengguna aktif StackOverflow dan GitHub awalnya berfokus pada perbedaan partisipasi StackOverflow di antara pengembang GitHub (RQ1). Orang yang mengajukan lebih sedikit pertanyaan cenderung menunjukkan tingkat keterlibatan yang lebih tinggi, dan orang yang lebih terlibat cenderung mengajukan lebih sedikit pertanyaan.

Mengapa kita perlu mengetahui apa yang terjadi selanjutnya. Orang yang cenderung menjawab banyak pertanyaan cenderung banyak memberikan janji, dan orang yang banyak berjanji cenderung menjawab banyak pertanyaan. Hal ini menunjukkan bahwa orang-orang yang sangat produktif (dalam kaitannya dengan komitmen GitHub) cenderung mengambil peran sebagai “guru” dan lebih aktif dalam memberikan jawaban daripada mengajukan pertanyaan. Selanjutnya, kami menyelidiki apakah kecepatan kerja kontributor GitHub terkait dengan aktivitas StackOverflow mereka (RQ2). Kami menemukan bahwa orang yang cenderung menjawab banyak pertanyaan memiliki distribusi pekerjaan yang lebih tidak merata dibandingkan pengembang yang tidak mengajukan pertanyaan. Tidak ada perbedaan yang diamati antara distribusi pekerjaan orang-orang yang dikelompokkan berdasarkan jumlah jawaban yang diberikan. Terakhir, kami menunjukkan bahwa aktivitas StackOverflow memiliki hubungan positif dengan pengkodean sosial di GitHub meskipun ada campur tangan pengembang aktif GitHub (RQ3). Pengamatan serupa berlaku untuk pelamar aktif dan pengguna lama GitHub. Terakhir, aktivitas StackOverflow mempercepat komitmen GitHub dari responden dan pengembang paling aktif yang belum menjawab pertanyaan.

Mengapa kami perlu mengetahuinya Kami perlu mengetahuinya untuk memperdalam pemahaman kami tentang dampak StackOverflow pada GitHub, dan kami berharap dapat memperdalam penyelidikan kami di bawah ini. Pertama, mari kita tingkatkan klasifikasi aktivitas? Kami berencana untuk membedakan antara pertanyaan dan jawaban pada berbagai topik (diwakili oleh tag Stack Overflow) dan pengiriman pada proyek yang berbeda. Tujuan kami adalah menggunakan teknik penambangan informasi untuk mengklasifikasikan pertanyaan dan jawaban berdasarkan relevansinya dengan keterlibatan tertentu. Misalnya, kita mengharapkan hubungan yang lebih kuat antara keterlibatan dan topik pertanyaan yang diajukan dibandingkan antara keterlibatan dan topik jawaban yang diberikan karena jawaban lebih relevan dengan pengetahuan umum seseorang. Melanjutkan penyelidikan kami terhadap dampak volume kueri terhadap kinerja, kami ingin memeriksa sejauh mana aspek proyek GitHub dan pengembangnya dapat menjelaskan distribusi interval waktu yang tidak merata antar penerapan. . (Termasuk aktivitas StackOverflow terkini). Untuk mengukur interpretabilitas, kami menggunakan indeks Theil [30], [31]. Selain itu, kami berencana mempelajari pengaruh tingkat keterlibatan seseorang terhadap tingkat aktivitasnya di StackOverflow. Apakah pertanyaan diajukan atau dijawab ketika tidak ada komitmen atau komitmennya terpencar-pencar? Kami juga berharap untuk memperluas studi kami tentang pandangan perantara dengan menerapkan lebih lanjut model distribusi temporal antar peristiwa [32], [33] pada data kami. Terakhir, untuk lebih memahami aktivitas gabungan StackOverflow dan GitHub, kami ingin menerapkan teknik penambangan proses yang awalnya dikembangkan untuk sistem informasi [34] dan berhasil diterapkan pada repositori perangkat lunak tradisional seperti sistem kontrol versi, email, dan pelacak bug [35] . Aplikasi.

Mengapa kita perlu memahami   fungsi pemrosesan awal data untuk mengubah pola visual menjadi pola listrik atau kumpulan data diskrit menjadi pola matematis agar data lebih sesuai untuk analisis komputer. [1] Dalam hal deteksi tepi, kami mendefinisikan bahwa suatu tepi muncul pada piksel yang dimulai dari nol jika dan hanya jika turunan negatif kedua dari suatu titik dalam domain piksel memiliki kemiringan persilangan nol dalam arah gradien yang berbeda. melihat. Piksel harus ditandai sebagai piksel tepi yang dilewati dan intensitas permukaan skala abu-abu yang mendasarinya harus diperkirakan dari piksel lingkungan sekitarnya (pengukuran ambang batas yang akurat) [2]. Oleh karena itu, dari fungsi ini kita dapat dengan mudah menghitung suatu fungsi yang terdiri dari kombinasi linier produk tensor dari turunan arah diskrit. Laporan ini berisi hasil beberapa analisis komputer dengan ukuran jendela dan fungsi intensitas yang berbeda. Penelitian ini juga akan mengusulkan kombinasi parameter optimal turunan arah orde kedua dalam pencarian tepi.

Mengapa kita perlu mengetahui fungsi intensitas, turunan kedua, persilangan nol, dan polinomial ortogonal sebagai kata kunci? Setiap lingkungan “T” adalah permukaan kubik, misalnya [31 (r,c)=1Co-K2r +.1V,CK ,rc4 Aec Itiort! Ki0c3(1) dimana f(r,c sepanjang gradien Ci) merupakan fungsi intensitas pada posisi (r,c). Jika turunan arah orde kedua suatu piksel sepanjang arah gradien di sekitar piksel tidak mempunyai titik potong nol dan kemiringan titik potong nol tersebut negatif, maka piksel tersebut disebut piksel tepi. Setelah memperkirakan fungsi polinomial yang mendasarinya menggunakan nilai piksel di lingkungan tersebut, kita dapat menemukan nilai turunan parsial untuk setiap lokasi di lingkungan tersebut dan menggunakan nilai tersebut dalam pencarian tepi. 2. Cocokkan data dengan polinomial ortogonal diskrit. Pertimbangkan satu set indeks simetris “R”. Jadi, untuk dua dimensi, jika jumlah elemen dalam “R” adalah N * N dan kita menggunakan teknik konstruksi properti ortogonal, kita mendapatkan persamaan d(r ,u) Za,p,,( r, L) r . (2) 1. Pendahuluan Dalam artikel ini, kami berasumsi bahwa dalam setiap konteks gambar, fungsi intensitas nada abu-abu yang mendasari 'f berbentuk polinomial parametrik dalam koordinat baris dan kolom, dan gambar fungsi ini diambil dari domain. "C" secara seragam memindai area persegi dengan grid yang berjarak sama. Jadi dengan menggunakan teknik perkalian tensor kita dapat membuat polinomial ortogonal dalam lingkungan 2D yang terdiri dari elemen 4*4 seperti yang ditunjukkan di bawah ini? [4] Pengaturan? (-1.5,-0.5,0.5,1.5) * ( - 1 , 5 , - 0.5 ,0.5,1.5) (3) 669 0- 7803-2646-u Untuk setiap (r,c) di "R", datanya nilainya adalah d(r,c).

Kenapa v-alo? Masalah fitting sebenarnya adalah menentukan koefisien yaitu =a2 – a„ –u2 U0, dimana m=0.1;2. Operasi matematika spesifik dan hasilnya adalah sebagai berikut: dari persamaan (6) lakukan analisis teoritis dan dapatkan koefisien ao -EI /Z1x1 az = Zc xd(r,c)/Ecxc az= E( c2 - 112 )d (r , c) //(c2- ) ( c ° --/1-°-) 110 u, az = Z (c3 - 121?-)d(r ,c)/1?( 03 - n4 -c )( c3- 1 - 1Ac) UU, U2 a4 = xd (r, c) /Ez xr = Iry d ( rc) I Ervx rc E(r3 - 'A) (e- xd(r, c ) uz ux Faur3 u4 u4 o IL, U dari Nalwa-Binford Technology [6], pilih K, banyaknya elemen “C” pada mask yang dapat digunakan untuk operasi integer, maka K, = a4- a, = - a" -111 + a " 1- x - Au u, K9 = a , - az, -4 2 K = a , - a " 112 " 0 Berapakah turunan dari fungsi intensitas [7] f ' ,c )= f ( r , c )sin am - f (r,c) cos a = ( K, sin a+ K3 cos a) + 2 (K4 sin' a + K , sin acos a + K , cos2 a) p+ 3 (K, sin ° acos a K, sin ° a cos a +K , sin acos' a+ K1, cos' ( Op' Jadi f" a(r, c) = 2(k4 sin° a+ K , sin a cosi ), + K , COS° cc )+ 6 (K7 sin° a+ K , sin2 acos a+ IC , sin a cos ' ' a + K10 cos ' a)pf "a (r,c)= 6 ( K, sin ' a+ K, sin2 acos a+ K, sin acos a + K " cos' a ) dan sinus( = VK2 +1( 32 r = psina ,c = pcosa dengan p adalah jarak titik dari piksel pusat. Dalam lingkungan kecil, jika f "(p) < 0, f"(p) = 0 dan f' (p)x 0 , tandai piksel tengah sebagai piksel tepi 670 4. Hasilnya ada pada Gambar 670 dan pemandangan sebenarnya dan bagian belakang laporan keuangan.

Mengapa kita perlu memahami dengan memilih parameter yang berbeda (f, f", f'") dan ukuran jendela, hasil analisis komputer ditunjukkan pada Gambar 3 hingga Gambar 8. Jika Op' adalah p, dimana p' sedikit lebih kecil dari panjang sisi piksel, yaitu ep" 'ot(p) < 0 dan f"ot(p)= oy f' ct(p) x 0, kita temukan bahwa itu harus nol. Temukan perkiraan turunan arah dari arah gradien negatif kedua, perkirakan gradiennya, dan beri label piksel tengah di sekitarnya sebagai piksel tepi. Setelah pengujian ekstensif, kami sampai pada kesimpulan berikut. (Kecuali untuk nilai skala abu-abu di dekat piksel tepi, tidak ada perbedaan nilai yang signifikan. Tepi seperti itu sulit dideteksi. (Lihat Gambar 3). (2) Penting untuk menggunakan ukuran lingkungan yang lebih besar dari 3*3 Ternyata pada 4*, penggunaan operator tepi yang besar dan terdefinisi secara alami di lingkungan ke-4 dapat menghasilkan hasil yang lebih baik daripada rata-rata sebelumnya, dan kemudian operator tepi lingkungan yang lebih kecil dapat digunakan untuk rata-rata gambar (lihat Gambar 5 dan 6) (Gambar 3) 3 dan 6). Dengan mempertimbangkan keterbatasan fungsi intensitas dan ukuran jendela yang sesuai, hasil terbaik saat mencari tepi pada gambar biner ditunjukkan pada Gambar 6.5. Referensi 1.ST Apa itu Arc? , “Pengenalan Pola,” halaman 14. 3-17. 2. Bernstein, R., “Pemrosesan Citra Digital untuk Penginderaan Jauh,” IEEE Press, New York, 1978. AR dan Riseman, eM, “Computer Vision Systems,” Academia Sinica, New York, 1978 4. P. Orthogonal Polynomial Engineer dan Fisikawan, Boulder, Inc. 5. PChen dan T.

Mengapa kita perlu mengetahui SOP apa saja yang berlaku dalam pengambilan dan pengolahan darah? 5. Mengawasi pengendalian kualitas dalam proses caHUB (Rencana Manajemen Mutu Dasar) Neil Mucci, Direktur • Tujuan? Mengkonsolidasikan keahlian ANTSG dalam mendukung proyek Genotyping Tissue Expression (GTEx) • Meningkatkan otopsi subjek manusia normal. Pemulihan Organisasi • Menginspirasi CaHUB dan pemangku kepentingan komunitas riset untuk berbagi praktik terbaik teknis, operasional, etika, dan hukum. • Berkolaborasi dengan SOP CaHUB yang dipimpin Ian Fore dan Kenyon Erickson. Memelihara dokumentasi. • Menentukan fungsionalitas sistem yang diperlukan. • Membuat arsitektur komputer konseptual. • Menentukan manfaat fungsional interoperabilitas. • Lihat hasil Cancer Genome Atlas (TCGA). • Mengembangkan kasus penggunaan sumber daya data terintegrasi terkait caBIGTM. • Menjawab pertanyaan kunci? Tentukan kasus penggunaan. Glosarium untuk mengelola patologi dan elemen data. • Rencana proyek dikembangkan oleh Kantor Komunikasi dan Pendidikan NCI dengan menggunakan model TCGA. • September 2010 Membuat materi web dan media kit untuk memberikan presentasi interaktif kepada khalayak luas. • Kelompok Diskusi Teknis Tahap 1 yang terdiri dari 15-19 anggota CaHUB dan operator yang disebutkan dalam makalah konferensi yang dipertimbangkan (semuanya)? 1. Oleh W. Zellinger, E. Lughofer, S. Saminger-Platz, T. Grubinger dan T.

 

Mengapa kita perlu memahami bahwa pengembang terdiri dari jaringan sosial hierarki kompleks yang membangun hubungan informasi antar unit perangkat lunak. Tren penelitian saat ini menunjukkan bahwa pengembang memiliki banyak metode berbeda yang berhasil menganalisis pertumbuhan dan evolusi struktur jaringan di jejaring sosial. Tujuannya adalah untuk memberikan gambaran singkat tentang analitik, metode dan algoritma yang digunakan dalam jaringan sosial pengembang, serta teknik dan teknik yang dapat digunakan untuk menganalisis kinerja jaringan terkait pengembang. Pengembangan jaringan pengembang sosial dan OSS, perluasan wilayah penelitian, metode dan pendekatan yang ada serta perluasan tugas dan teknik juga dibahas. Kata kunci? Pengembang Jaringan Sosial, Perangkat Lunak Sumber Terbuka, OSS, Jaringan Sosial, Struktur Komunitas, Pengembang, Proses Pemecahan Masalah, Bug*** I.

Mengapa? Apa itu? Pendahuluan SDN (Jaringan Pengembang Sosial) adalah komponen dasar jaringan entitas perangkat lunak yang mengintegrasikan beberapa entitas proyek perangkat lunak. Kelompok sosial dapat diartikan kembali sebagai SDN yang mewakili berbagai perilaku hubungan simpul tepi. Apa itu? Ini terdiri dari node (misalnya pengembang, proyek, file, penulis, pengamat, pengguna) dan tepi yang mewakili hubungan (misalnya pekerjaan, fragmen, penerapan, komentar, laporan bug, dll.). Buat grafik jaringan pengembang untuk memvisualisasikan hubungan jaringan tempat node berada. Mereka dianggap sebagai aktor inti dalam jaringan dan aktor periferal yang melaksanakan tugas. Kami melakukan analisis jaringan dengan melakukan operasi pada dataset, menjalankan algoritma, dan menampilkan aktivitas hubungan node-edge melalui representasi grafik visual. Analisis jaringan sosial menunjukkan pengukuran simpul pusat, halaman peringkat, dan pengukuran prioritas. Ada berbagai cara untuk menganalisis properti tersembunyi dari suatu jaringan. SDN telah berkembang menjadi bidang yang menarik dalam beberapa tahun terakhir.

Mengapa Kita Perlu Memahami Pengembang Analisis jaringan sosial dapat menunjukkan kepada para ahli bagaimana memahami struktur sosial dan membantu manajer pemula atau aktif mengelola aktivitas sosial mereka. Artikel kami memberikan wawasan unik tentang aktivitas Jaringan Pengembang Sosial (SDN) di masa lalu dan saat ini. Perkembangan gerakan proyek akses terbuka dimulai beberapa tahun lalu. Pertumbuhan berkelanjutan dalam aktivitas bisnis perangkat lunak menunjukkan kesuksesan finansial. Beberapa penyedia produk perangkat lunak (seperti Google dan RedHat) merupakan organisasi yang aktif mempromosikan OSS. Kategorikan platform OSS yang berbeda seperti sistem operasi (Linux), DBMS (MySQL), manajemen konten web (Zoomla dan WordPress), dan perangkat lunak perusahaan (Magento). 2 Ikhtisar jenis jaringan sosial 2.1 Jaringan sosial heterogen Jaringan sosial heterogen menyimpan informasi topologi dan informasi hubungan dan terdiri dari beberapa jenis entitas.

Mengapa seetiap node harus  diidentifikasi oleh hubungan tetangganya. Relasi adalah kombinasi node dan konektor yang terhubung secara langsung dan tidak langsung. Jejaring sosial heterogen HSN (Vertices, Edge, Label) adalah graf berarah berlabel, dimana Vertices adalah himpunan simpul berhingga, Labels adalah himpunan berhingga, dan Vertices×Label×Vertices adalah himpunan tepi berhingga [9]. Kebanyakan algoritma (misalnya analisis metapath, klasifikasi, analisis kesamaan, dan aktivitas kelompok) beroperasi terutama pada jaringan ini. 2.2 Jaringan sosial yang homogen Jaringan sosial yang homogen mengasumsikan tipe node dan hubungan tepi yang sama. Metode analisis ini seringkali mengakibatkan hilangnya informasi. Dalam jaringan sosial yang homogen, node mewakili entitas dan edge mewakili hubungan. Contoh algoritma dan metode yang tersedia, klasifikasi, pencarian kesamaan, pengelompokan dan pengelompokan aktivitas serupa, dan prediksi hubungan asosiasi. 2.3 Jejaring sosial multidimensi memiliki tipe hubungan yang berbeda-beda. Jaringan multidimensi mencakup seluruh dimensi yang membentuk asosiasi pengguna pada suatu website, seperti:

Mengapa kita perlu mengetahui cara memilih Facebook, Twitter, YouTube, Orkut, dll? Tang Lei dkk. [13] menghubungkan pengguna melalui berbagai aktivitas untuk membuat banyak jaringan. Siapakah Li Xutao dan lainnya? [26] Membangun hubungan komunitas dalam jaringan multidimensi dengan menghitung kesamaan antara dua elemen tubuh? Edisi 03? 04.http?//www.ijret.org 412 IJRET? Jurnal Penelitian Teknik dan Teknologi Internasional eISSN? 2319-1163|. 2321-7308 Jaringan mempunyai dimensi (entitas) yang sama atau dimensi (entitas) yang berbeda, bergantung pada distribusi probabilitas setiap dimensi atau entitas. Hasilnya menunjukkan bahwa algoritma yang dirancang efektif dan efisien. 3. SURVEI PUSTAKA Jaringan pengembang sosial telah ada selama sepuluh tahun. Dalam artikel ulasan ini, saya ingin memperkenalkan poin-poin penting penulis dan kontribusinya pada jejaring sosial untuk pengembang.

Mengapa? Apa itu? Misalnya, apakah keseluruhan survei dapat dibagi menjadi beberapa bagian? B. Deteksi struktur komunitas, lokalisasi bug, jaringan sosial pengembang dan kolaborasi perbaikan bug, serta klasifikasi bug. Komponen utama Ø Jaringan sosial dan komunitas di OSS Ø Jaringan sosial pengembang dan proses penyelesaian cacat Ø Prediksi cacat Ø Lokalisasi cacat Ø Klasifikasi cacat 3.1 Jaringan sosial dan komunitas di OSS W Scacchi [4] mempelajari struktur sosial tim pengembangan. Hubungan yang diharapkan dan kode sumber dalam perangkat lunak sumber terbuka. Perangkat lunak sumber terbuka tidak selalu mengikuti praktik rekayasa perangkat lunak tradisional, namun merupakan struktur proses sosio-teknis yang kompleks. Tanyakan Hong dkk. [1] menemukan bahwa pengembang dan hubungan mereka di jaringan sosial pengembang terus berubah dalam tim pengembangan inti. Mereka membandingkan struktur dan evolusi jejaring sosial tempat pengembang bekerja sebagai pemrogram dengan jejaring sosial umum (GSN) populer seperti Twitter, Facebook, dan Amazon. Studi mereka juga menganalisis bagaimana jaringan sosial pengembang tumbuh seiring waktu, serta dampak DSN dan pertumbuhan hubungan topologi dalam jaringan pengembang. Hasilnya memberikan bukti kuat bahwa struktur komunitas mempertahankan karakteristik global dari waktu ke waktu dan menunjukkan peningkatan bertahap dalam struktur komunitas dalam jaringan sosial pengembang.

Mengapa kita perlu mengetahui tentang Andres Germakovich dan lainnya? [11] Pendekatan visualisasi jaringan untuk pengembang perangkat lunak di repositori VCS. Mereka menghitung kesamaan antar pengembang berdasarkan perubahan pada file serupa. Buat jaringan pengembang kolaboratif dan terapkan metode pemfilteran untuk meningkatkan modularitas jaringan pengembang. Mereka memberikan bobot pada semua dokumen dan menghitung kesamaan pengembang. Zhou dkk. [12] menganalisis beberapa dimensi perubahan perangkat lunak, termasuk signifikansi perubahan atau tingkat ketergantungan pada kode sumber. Mereka memperoleh serangkaian fitur dari dua sumber berbeda dan mengusulkan jaringan Bayesian untuk prediksi perubahan.

Apa yang dimaksud dengan penyatuan entitas kuasi-mutan dan entitas yang terhubung? Metode ini dapat digunakan untuk memprediksi potensi ketidakpastian. Sebuah survei terhadap dua proyek OSS berukuran sedang menunjukkan kelayakan dan produktivitas pendekatan kami dibandingkan dengan pekerjaan sebelumnya. Matthew Van Antwerp dan Greg Madey [10] menjelaskan pertimbangan penting OSS terkait popularitas proyek. Penelitian mereka menunjukkan bahwa hubungan yang ada antara pengembang merupakan indikator popularitas suatu proyek di masa lalu dan masa depan. Maballero dkk. [14] mengembangkan opsi fitur khusus yang disebut OSS-Network yang menggunakan jaringan sosial untuk melakukan penelitian pada komunitas online. Jaringan OSS membantu mengurangi tantangan pengkodean, debugging, dan dukungan pengguna bagi para peneliti. Memberikan opsi khusus untuk mengumpulkan, mengamati, dan menganalisis data.

Mengapa kami Thung Ferdian dkk. harus tahu. [7] Mereka memeriksa pembuatan kode sumber yang membentuk jaringan di GitHub. Pengembang dan pimpinan proyek untuk subnet GitHub. Ini membantu pengembang memahami asosiasi pengembang dan proyek. Temukan hubungan antara proyek, pengembang, dan proyek berpengaruh. Mereka menganalisis jaringan proyek di GitHub. Apa itu jaringan? Proyek hanya memerlukan pengembang reguler untuk menjalin hubungan antar proyek. Temukan proyek dan pengembang berpengaruh berdasarkan peringkat halaman dan distribusikan banyak proyek ke banyak pengembang.

Hasilnya menunjukkan bahwa distribusi diagram jaringan proyek umumnya mengikuti hukum kekuasaan, namun distribusi diagram jaringan pengembang tidak. P. Bhattacharya dkk. [8] Visualisasi pengembangan proyek perangkat lunak. Analisis pengembangan perangkat lunak dan buat prediktor untuk menyederhanakan pengembangan dan pemeliharaan. Analisis hasil 11 proyek besar, termasuk Eclipse dan Firefox, menunjukkan bahwa prediktor dapat mendeteksi perubahan struktural yang signifikan. Hal ini dapat membantu pengembang menilai tingkat keparahan bug, memprioritaskan pekerjaan sulih suara, dan memprediksi build yang rawan bug. Nicolás López [5] meneliti bagaimana model topik dapat membantu memahami pengembangan sistem perangkat lunak. Pertimbangkan hubungan dengan pengembang dan pelajari lebih lanjut tentang pengembangan tema.

 


Tidak ada komentar:

Posting Komentar