Bagaimana Kami Menjalankan Proyek Agile sebagai Tim Terdistribusi yang Diperluas dari Klien

Diterbitkan: 2018-12-14

Sebuah laporan baru-baru ini oleh Computereconomics menemukan bahwa pada periode 2018/19, proses pengembangan aplikasi telah muncul sebagai salah satu yang menyaksikan peluang outsourcing maksimum – dengan 56% organisasi di seluruh dunia mengalihdayakan kebutuhan pengembangan mereka.

Alasan di balik permintaan yang meningkat untuk outsourcing ini, kebutuhan pengembangan aplikasi seluler sama seperti biasanya – Biaya lebih rendah daripada yang harus dikeluarkan jika mempekerjakan pengembang negara sendiri, memungkinkan fokus yang lebih besar pada bisnis utama, dan kualitas layanan yang lebih baik.

Namun, bahkan dengan outsourcing mengambil tempat sentral dalam industri pengembangan aplikasi, kami telah menemukan bahwa ada beberapa kekhawatiran umum bahwa klien menunjukkan ketika mereka berencana untuk melakukan outsourcing proyek pengembangan perangkat lunak mereka di luar negara geografis mereka.

Dalam artikel ini, kita akan melihat bagaimana Appinventiv bekerja dengan klien luar negeri menggunakan siklus pengembangan tangkas terdistribusi yang memungkinkan proses kerja yang lebih terhubung dengan model risiko dan remunerasi yang selaras di semua.

Tetapi sebelum kita masuk ke bagian di mana kita memberi tahu bagaimana kita beroperasi sebagai tim terdistribusi dari klien kita dan bekerja dengan mulus sehingga kita menjadi tim teknologi internal mereka yang diperluas, penting untuk mengetahui apa arti Tim Agile Terdistribusi .

Apa Yang Kami maksud dengan Tim Agile Terdistribusi?  

Tim terdistribusi adalah konsep yang digunakan untuk menjelaskan peristiwa di mana dua atau lebih tim berfungsi di beberapa lokasi geografis alih-alih satu ruang kantor atau bahkan dua ruang kantor di satu kota.
Tim tangkas terdistribusi mengandalkan teknologi digital untuk berinteraksi dengan mulus dan bekerja sama menuju tujuan yang sama – Pengiriman proyek tepat waktu.

Mengapa Bisnis Berinvestasi dalam Tim Terdistribusi Pengembangan Aplikasi Seluler?

Ada sejumlah alasan yang mendorong bisnis untuk berinvestasi dalam tim terdistribusi, alasan mulai dari:

  1. Kelangkaan pengembang terampil di negara mereka
  2. Kebutuhan untuk menguji pasar sebelum investasi dilakukan untuk membangun tim
  3. Untuk memanfaatkan manfaat tim fleksibel yang dapat ditingkatkan pada saat penskalaan aplikasi dan dibubarkan saat kebutuhan berakhir.

Dengan definisi dan kebutuhan yang sekarang diperhatikan, mari kita lihat bagaimana tim Appinventiv bekerja sebagai tim terdistribusi dari klien kami. Tetapi sebelum kita melompat ke sana, mari kita lihat dengan cepat seperti apa struktur tim tangkas terdistribusi khas kita

Pendekatan Appinventiv untuk Pengembangan Agile Terdistribusi  

Sering kali kami mendapatkan proyek di mana persyaratan mengharuskan kami untuk bekerja dalam hubungan dekat dengan FTE klien. Dalam kasus seperti itu, menjadi sangat penting bahwa kita tidak membiarkan jarak dalam ribuan mil antara pekerjaan dan bahwa kita dapat membuat perubahan dan mengambil tindakan pada proses perkembangan secara real time.

Bagaimana kami memastikan pengiriman tepat waktu tanpa jeda komunikasi dan kesalahpahaman adalah pertanyaan yang jawabannya terletak pada Metodologi Agile Terdistribusi .

Sesuai dengan bisnis skala kecil dan skala besar, mengikuti praktik terbaik tangkas terdistribusi sangat berguna ketika kita harus bekerja bersama tim yang duduk di beberapa lokasi geografis lain dengan zona waktu yang sama sekali berbeda.

Mari kita lihat Metode Pengembangan Agile Terdistribusi yang kami terapkan dalam proses pengembangan aplikasi seluler kami.

Setelah kami memperkenalkan semua anggota tim satu sama lain dan telah berkolaborasi dengan perangkat lunak manajemen proyek, pekerjaan yang sebenarnya dimulai.

Kami merumuskan proses metodologi scrum tangkas harian . Sementara dalam pengertian tradisional, Scrum membutuhkan pertemuan tatap muka selama 15 menit di mana setiap peserta berbagi status tugas mereka dan memberi tahu tim tentang tugas yang akan mereka lakukan selanjutnya, hampir tidak mungkin untuk mengikuti proses yang sama ketika setengah tim duduk di beberapa negara geografis lain di beberapa zona waktu lain.

Apa yang kami lakukan untuk menjaga esensi interaksi tatap muka tetap hidup dalam scrum, adalah kami mengadakan panggilan video pada satu waktu yang ditentukan, yang cocok untuk semua orang dalam tim yang mengerjakan proyek. Dengan bantuan berbagi layar, Agile Scrum Master kami berjalan melalui backlog sprint virtual dengan bantuan alat seperti Trello atau Jira, memungkinkan setiap anggota tim untuk memberikan pembaruan tentang arah proyek.

Apa yang kami alami adalah sangat penting untuk memberi semua anggota tim akses ke platform pelacakan tugas yang mudah diakses dan diperbarui. Kami juga menekankan penggunaan platform komunikasi seperti Skype atau Slack bagi semua orang untuk berbagi pembaruan atau menanyakan keraguan mereka di antara dua periode waktu scrum.

Pendekatan lain yang kami ikuti untuk proses scrum dan gesit harian adalah bahwa untuk setiap scrum yang berbeda, kami menunjuk satu master scrum. Jadi, setiap kerja tim individu sebagai tim scrum terpisah dengan master scrum dan pemilik produk – Sebuah proses yang juga dikenal sebagai Scrum of Scrums.

Dalam hal ini, semua perwakilan scrum memberikan jawaban atas pertanyaan-pertanyaan berikut di scrum –

  • Pekerjaan yang telah diselesaikan tim sejak Scrum of Scrums terakhir
  • Tim kerja berencana untuk melakukannya sebelum pertemuan Scrum of Scrums berikutnya
  • Pemblokir saat ini yang dihadapi tim
  • Pemblokir yang dapat mengarah ke tim Scrum lain.

Metode ini memungkinkan semua individu utama yang mengerjakan proyek untuk berinteraksi satu sama lain secara langsung, sesuatu yang selalu menghasilkan dedikasi dari tahap inisiasi hingga periode peluncuran. Ini memastikan komunikasi yang terbuka, jelas, dan transparan antara semua tim, di mana setiap orang diberi suara.
Proses selain scrum dari scrum sama dengan apa yang kami ikuti di bawah metodologi Agile yang khas.
Tetapi fakta bahwa jarak antara tim kami dan tim klien kami terpisah bermil-mil dan kami harus bekerja semulus mungkin, telah membawa serangkaian pembelajaran yang telah kami dorong dengan penerapan Distributed Agile. Mari kita lihat apa pembelajaran itu –

Pembelajaran yang Kami Tarik dengan Mengerjakan Proses Pengembangan Agile Terdistribusi

1. Pembentukan tim Terdistribusi adalah tentang Membangun Budaya dan Bukan Proses

Apa yang menentukan keberhasilan proyek yang bekerja di bawah pendekatan tim yang gesit untuk terdistribusi tidak tergantung pada seberapa baik keterampilan anggota tim, tetapi pada seberapa baik mereka dapat bekerja sama, rasa kepemilikan dengan mana mereka bekerja, dan pada akhirnya bagaimana sangat selaras dengan tujuan proyek – sesuatu yang datang dengan budaya dan bukan formasi proses.

2. Hanya Proyek SMART yang Berhasil

Ketika sebuah proyek harus diselesaikan oleh tim yang bahkan tidak berada di negara yang sama apalagi kantor, sangat penting bahwa tujuan yang telah Anda tetapkan untuk proyek tersebut mengikuti SMART – Specific, Measurable, Achievable, Realistic, dan Time. -frame, konsep ke t.

3. Tidak Ada Alternatif Alat Kolaborasi Online

Tidak peduli berapa biayanya, Anda harus mengandalkan alat kolaborasi online yang real-time dan memiliki jeda minimal hingga nol. Dalam hal menyelesaikan manajemen proyek online dan platform komunikasi, Anda tidak dapat dengan cara apa pun memotong kendur. Anda harus memastikan bahwa mereka secara teknis mampu menangani kebutuhan Anda.

Sekarang kita telah melihat pembelajaran yang telah kita ambil dari pengalaman kerja kita yang luas sebagai tim terdistribusi, sekarang saatnya untuk melihat beberapa tantangan yang kita temui selama proses tersebut dan bagaimana kita menyelesaikannya untuk menjadi Aplikasi Agile Terdistribusi yang tepercaya. Perusahaan Pengembangan .

Tantangan dengan Pendekatan Pengembangan Agile Terdistribusi dan Bagaimana Kami Mengatasinya

1. Perbedaan Budaya

Biasanya pendekatan pengembangan perangkat lunak tangkas terdistribusi meminta untuk bekerja dengan tim yang berasal dari latar belakang budaya yang berbeda. Perbedaan ini menimbulkan gesekan karena perbedaan nilai dan majas.
Solusi Kami: Kami bekerja sangat erat dengan tim klien dalam beberapa hari pertama sehingga kami terbiasa dengan mereka yang tersirat dan kontekstual.

2. Perbedaan Zona Waktu

Inti dari metodologi tangkas terdistribusi adalah tim yang bekerja dari negara geografis yang berbeda. Dalam situasi seperti ini, terjadinya kesenjangan komunikasi yang muncul karena perbedaan waktu sangat umum terjadi.
Solusi Kami: Kami mengikuti konsep tangkas untuk tim terdistribusi ke intinya. Kami menetapkan waktu ketika tim dari semua negara hadir dan aktif. Untuk mencapai fokus dan perhatian penuh, kami meminta rekan tim kami untuk mengubah waktu kantor mereka pada hari scrum, sehingga mereka tidur nyenyak dan penuh perhatian.

3. Kurangnya Gagasan Umum tentang 'Gambaran Besar'

Karena perbedaan lokasi geografis, struktur kerja, dan kebijakan, mungkin ada perbedaan dalam gagasan Gambaran Besar – tujuan akhir aplikasi seluler. Perbedaan ini mungkin menyebabkan kurangnya minat dari beberapa anggota tim dan minat yang tinggi dari orang lain.
Solusi Kami: Pertemuan visi di awal inisiasi proyek dan pengingat di setiap scrum, sehingga semua orang bekerja menuju tujuan yang sama.

4. Tidak adanya Kepemilikan Kode

Tidak adanya kepemilikan kode kolektif berarti bahwa tidak ada satu orang pun yang memiliki kode tersebut, kode tersebut dimiliki oleh seluruh tim dan ketika terjadi kesalahan, permainan menyalahkan dimulai.
Solusi Kami: Kami menerapkan sistem kontrol versi untuk memeriksa siapa yang mengerjakan kode dan kapan serta efeknya. Dengan cara ini, ada transparansi dan kejujuran penuh dalam gambar.

Jadi, ini adalah kisah tentang bagaimana kami di Appinventiv, telah menjadi tim klien terdistribusi yang dimiliki di mana-mana di dunia.
Ingin mendiskusikan bagaimana meningkatkan tingkat pengembangan perangkat lunak tangkas terdistribusi Anda? Hubungi ahli strategi aplikasi seluler kami.