Rabu, 28 Oktober 2020

Artikel Scrum Software Development

Artikel Scrum Software Development

 Scrum merupakan framework untuk manajemen pengembangan software dengan karakteristik cekatan dan bersifat iteratif dan incremental. Scrum mendefinisikan dirinya fleksible, strategi pengembangan yang menyeluruh di mana seluruh team bekerja sebagai satu unit dalam mencapai sebuah gol yang sama.

Dalam menjalankan kerjasama antara anggota team, scrum menekankan lokasi fisik yang sama atau sarana online yang akrab antara semua member, dan juga pertemuan muka dengan muka setiap hari antara semua anggota team.

Prinsip kunci dari scrum adalah memahami bahwa dalam project yang tengah berlangsung, klien mungkin mengubah apa yang menjadi kebutuhan dan keinginannya. Perubahan sulit diadaptasi oleh framework pengembangan aplikasi yang bersifat tradisional.  Scrum menerima perubahan ini dan memaksimalkan seluruh anggota team untuk menyesuaikan perubahan mendadak ini.

Scrum mengadopsi permainan Rugby yang begitu mudah menyesuaikan diri semua anggota team setelah ada sedikit pelanggaran. Kemudian menyesuaikan diri inilah yang mengimpirasi scrum.

Scrum mempunyai 3 Role

  1. Product Owner
    Pengertian produk adalah tujuan dari proyek. Product Owner memastikan bahwa proyek berjalan sesuai yang diharapkan. Product Owner merupakan penjembatan antara client dengan team development. Product Owner akan menuliskan spesifikasi-spesifikasi sesuai cara pandang client, di lain pihak harus punya empati terhadap anggota team.
  2. Team Member
    Dilihat dari namanya jelas yaitu anggota-anggota team.
  3. Scrum Master
    Scrum Master akan mencegah hal-hal yang mengalihkan focus team. Scrum master akan membuat suasana kondusif supaya team dapat bekerja sama dalam mencapai goal.

Event penting dalam Scrum adalah sprint/iteration. Sprint merupakan unit dasar dalam development dengan Scrum. Sprint merupakan jangka waktu yang dibatasi pada suatu durasi 1 minggu, 2 minggu atau 1 bulan. Setiap sprint dimulai dengan planning meeting dan diakhiri dengan sprint review dan retrospective meeting.
Dari https://www.cprime.com/wp-content/static/images/resources/ScrumCycle.jpg kita mendapatkan gambar seperti berikut ini:











Proses penting dalam Scrum antara lain:

  1. Backlog refinement
  2. Sprint planning
  3. Daily Scrum
  4. Sprint review meeting
  5. Sprint retrospective meeting.

  1. Website Fakultas dan Kemahasiswaan

    - https://feb.teknokrat.ac.id 

    - https://ftik.teknokrat.ac.id

    - https://fsip.teknokrat.ac.id 

    - https://kemahasiswaan.teknokrat.ac.id
 

   Online Learning :
    - https://spada.teknokrat.ac.id
 

   Website Program Studi FTIK :
    - http://if.ftik.teknokrat.ac.id 

    - http://si.ftik.teknokrat.ac.id

    - http://ti.ftik.teknokrat.ac.id 

    - http://ts.ftik.teknokrat.ac.id 

    - http://sia.ftik.teknokrat.ac.id 

    - http://te.ftik.teknokrat.ac.id 

    - http://tk.ftik.teknokrat.ac.id


   Website Program Studi FSIP:
   - http://po.fsip.teknokrat.ac.id 

   - http://sastrainggris.fsip.teknokrat.ac.id 

   - http://pbi.fsip.teknokrat.ac.id 

   - http://matematika.fsip.teknokrat.ac.id
 

   Website Program Studi FEB :
   - http://manajemen.feb.teknokrat.ac.id 

   - http://akuntansi.feb.teknokrat.ac

 

Rapid Application Development

 

Rapid application development

Rapid application development (RAD) atau rapid prototyping adalah model proses pembangunan perangkat lunak yang tergolong dalam teknik incremental (bertingkat). RAD menekankan pada siklus pembangunan pendek, singkat, dan cepat. Waktu yang singkat adalah batasan yang penting untuk model ini. Rapid application development menggunakan metode iteratif (berulang) dalam mengembangkan sistem di mana working model (model bekerja) sistem dikonstruksikan di awal tahap pengembangan dengan tujuan menetapkan kebutuhan (requirement) user dan selanjutnya disingkirkan.[1] Working model digunakan kadang-kadang saja sebagai basis desain dan implementasi sistem final.[1]


Daftar isi

  • 1Penerapan
  • 2Kelemahan & Kelebihan RAD
  • 3Referensi
  • 4contoh


    Penerapan[sunting | sunting sumber]

    Model RAD mengadopsi model waterfall dan pembangunan dalam waktu singkat yang dicapai dengan menerapkan:

    1. Component based construction ( pemrograman berbasis komponen bukan prosedural).
    2. Penekanan pada penggunaan ulang (reuse) komponen perangkat lunak yang telah ada.
    3. Pembangkitan kode program otomatis/semi otomatis.
    4. Multiple team (banyak tim), tiap tim menyelesaikan satu tugas yang selevel tetapi tidak sama. Banyaknya tim tergantung dari area dan kompleksitasnya sistem yang dibangun.

    Jika keutuhan yang diinginkan pada tahap analisis kebutuhan telah lengkap dan jelas, maka waktu yang dibutuhkan untuk menyelesaikan secara lengkap perangkat lunak yang dibuat adalah berkisar 60 sampai 90 hari. Model RAD hampir sama dengan model waterfall, bedanya siklus pengembangan yang ditempuh model ini sangat pendek dengan penerapan teknik yang cepat.

    Sistem dibagi-bagi menjadi beberapa modul dan dikerjakan beberapa tim dalam waktu yang hampir bersamaan dalam waktu yang sudah ditentukan. Model ini melibatkan banyak tim, dan setiap tim mengerjakan tugas yang selevel, namun berbeda. Sesuai dengan pembagian modul sistem.

    Kelemahan & Kelebihan RAD[sunting | sunting sumber]

    Beberapa hal (kelebihan dan kekurangan) yang perlu diperhatikan dalam implementasi pengembangan menggunakan model RAD:

    1. Model RAD memerlukan sumber daya yang cukup besar, terutama untuk proyek dengan skala besar.
    2. Model ini cocok untuk proyek dengan skala besar.
    3. Model RAD memerlukan komitmen yang kuat antara pengembang dan pemesssan, bahkan keduanya bisa tergabung dalam 1 tim
    4. kinerja dari perangkat lunak yang dihasilkan dapat menjadi masalah manakala kebutuhan-kebutuhan diawal proses tidak dapat dimodulkan, sehingga pendekatan dengan model ini kurang bagus.
    5. sistem yang tidak bisa dimodularisasi tidak cocok untuk model ini.
    6. penghalusan dan penggabungan dari beberapa tim di akhir proses sangat diperlukan dan ini memerlukan kerja keras.
    7. proyek bisa gagal karena waktu yang disepakati tidak dipenuhi
    8. risiko teknis yang tinggi juga kurang cocok untuk model ini.




    Website Fakultas dan Kemahasiswaan
    https://feb.teknokrat.ac.id - https://ftik.teknokrat.ac.id
    https://fsip.teknokrat.ac.id - https://kemahasiswaan.teknokrat.ac.id
    Online Learning :
    https://spada.teknokrat.ac.id
    Website Program Studi FTIK :
    http://if.ftik.teknokrat.ac.id http://si.ftik.teknokrat.ac.id
    http://ti.ftik.teknokrat.ac.id http://ts.ftik.teknokrat.ac.id
    http://sia.ftik.teknokrat.ac.id http://te.ftik.teknokrat.ac.idt.ac.id
    http://tk.ftik.teknokrat.ac.idt.ac.id
    Website Program Studi FSIP:
    http://po.fsip.teknokrat.ac.id http://sastrainggris.fsip.teknokrat.ac.id
    http://pbi.fsip.teknokrat.ac.id http://matematika.fsip.teknokrat.ac.id
    Website Program Studi FEB :
    http://manajemen.feb.teknokrat.ac.id 
    http://akuntansi.feb.teknokrat.ac.id


Jumat, 16 Oktober 2020

Apa itu Software Engineering?


 

Software engineering adalah proses analisis kebutuhan dan desain pengguna, konstruksi dan uji aplikasi yang akan memenuhi kebutuhan-kebutuhan tersebut melalui penggunaan bahasa pemrograman.

Secara garis besar, software engineering bisa diartikan sebagai penerapan prinsip-prinsip teknik pengembangan perangkat lunak. Berbeda dengan pemrograman sederhana, software engineering digunakan untuk sistem aplikasi yang lebih besar dan kompleks. Umumnya, proses ini digunakan untuk kebutuhan bisnis dan organisasi.

Pengertian Software Engineering

Dikutip dari Institute of Electrical and Electronics Engineers/IEEE (1993), software engineering adalah suatu pendekatan teknologi secara sistematis, terstruktur dan disiplin. Meski pada dasarnya merupakan salah satu cabang ilmu komputer guna mengetahui sesuatu yang salah terhadap sebuah perangkat lunak, kini fungsinya melebar lebih luas lagi.

Rekayasa perangkat lunak dibutuhkan tak cuma ketika ditemukan kesalahan pengoperasian semata, namun lebih kepada bagaimana sebuah perangkat lunak bekerja sesuai dengan apa yang menjadi kebutuhan end-user atau penggunanya.

Tak seperti hardware yang dibuat di pabrik, elemen software bersifat logis. Elemen software juga tidak bisa aus seperti hardware, namun peluang untuk rusak cukup besar. Sehingga, software lebih menekankan pada rekayasa dan pengembangan.

Hal-hal yang wajib diperhatikan

Adapun software engineering akan memperlihatkan bagaimana sebuah aplikasi produk atau jasa mempermudah penggunaan oleh end-user dan apa saja fitur-fitur yang ditawarkan kepada penggunanya. Berikut ini adalah hal-hal yang harus diperhatikan.

  1. Pengoperasian

Setelah proses analisis dilakukan, kamu akan mengetahui apakah sebuah aplikasi bekerja sebagaimana mestinya, mulai dari budget, efisiensi, ketepatan, fungsi, ketergantungan dan yang tak kalah penting adalah keamanan.

  1. Transisi




Transisi penting ketika suatu aplikasi digeser dari satu platform ke platform lainnya. Jadi, portabilitas, kegunaan dan adaptabilitas ada di area ini.

  1. Pemeliharaan

Ini berfungsi untuk mengetahui bagaimana sebuah aplikasi bekerja setelah adanya pemutakhiran atau pembaruan (update). Aspek-aspek penting yang perlu diperhatikan pasca analisis adalah modularitas, perawatan, fleksibilitas dan skalabilitas.

Metode yang Dapat Digunakan Software Engineer

Adapun metode software engineering dibagi menjadi lima jenis, yaitu metode sekuensial linier, RAD, prototipe, spiral dan 4GT. Dari lima metode tersebut, model 4GT memiliki keuntungan lebih dari segi waktu. Hanya saja, kekurangannya terletak pada alat bantunya, sebab cuma bisa digunakan untuk aplikasi tertentu saja.

Kemampuan analisis yang mendalam harus dimiliki oleh pengembang perangkat lunak(software developer) untuk mendapatkan tak cuma apa yang diinginkan oleh stakeholder, melainkan juga memuaskan penggunanya (end-user). Maka, software engineer adalah pemegang peran penting dalam menghasilkan aplikasi atau perangkat lunak yang berkualitas.

Penjelasan Tentang SDLC




Sebelum dilakukan rekayasa perangkat lunak, wajib diperhatikan beberapa langkah penting mulai dari perencanaan, pengembangan (coding dan testing) dan pemeliharaan (maintenance). Namun demikian, ada tahapan yang tak kalah penting yang dinamakan Software Development Lifecycle (SDLC).

SDLC adalah rangkaian tahapan dalam rekayasa perangkat lunak yang bertujuan untuk mengembangkan perangkat lunak yang diusulkan, yaitu communication, requirement gathering, studi kelayakan, sistem analisis, desain software, integrasi, implementasi dan disposisi. Coding dan testing juga masuk dalam kriteria SDLC ini, namun selayaknya dua hal tersebut sudah dilakukan lebih awal.

Pengujian perangkat lunak dilakukan saat pengkodean oleh pengembang dan pengujian menyeluruh yang dilakukan oleh ahli pengujian di berbagai tingkat kode seperti pengujian modul, pengujian program, pengujian produk, pengujian internal dan pengujian produk atas keterlibatan dan umpan balik pengguna.

Software engineering adalah hal penting yang wajib dipelajari agar mimpi menjadi seorang software developer bisa diwujudkan dengan segera. Jangan lupa, selalu percayakan layanan hosting kepada Dewaweb yang sudah terbukti mampu menjaga kecepatan loading website dan keamanan data-data yang ada sehingga kamu tidak perlu takut kehilangan traffic yang dimiliki.


Website Fakultas dan Kemahasiswaan
https://feb.teknokrat.ac.id - https://ftik.teknokrat.ac.id
https://fsip.teknokrat.ac.id - https://kemahasiswaan.teknokrat.ac.id
Online Learning :
https://spada.teknokrat.ac.id
Website Program Studi FTIK :
http://if.ftik.teknokrat.ac.id http://si.ftik.teknokrat.ac.id
http://ti.ftik.teknokrat.ac.id http://ts.ftik.teknokrat.ac.id
http://sia.ftik.teknokrat.ac.id http://te.ftik.teknokrat.ac.idt.ac.id
http://tk.ftik.teknokrat.ac.idt.ac.id
Website Program Studi FSIP:
http://po.fsip.teknokrat.ac.id http://sastrainggris.fsip.teknokrat.ac.id
http://pbi.fsip.teknokrat.ac.id http://matematika.fsip.teknokrat.ac.id
Website Program Studi FEB :
http://manajemen.feb.teknokrat.ac.id 
http://akuntansi.feb.teknokrat.ac.id

Artikel Scrum Software Development

Artikel Scrum Software Development   Scrum merupakan framework untuk manajemen pengembangan software dengan karakteristik cekatan dan bersif...