Anda di halaman 1dari 15

Software Construction

Pembangunan Perangkat Lunak

Asep Abdul Sofyan

Software Construction
Software Construction adalah pekerjaan detail dari pembuatan
perangkat lunak yang meliputi kombinasi pengerjaan
pemrograman, veri ikasi program, testing unit, testing terintegrasi
dan debugging . Tetapi secara pragmatis, pembangunan perangkat
lunak dapat dide inisikan sebagai sebuah tahapan proyek
pengembangan perangkat lunak yang berada di area implementasi
proyek pasca proses analisa dan desain.
f
f
Aspek Penting
Terdapat empat aspek penting di dalam pembangunan perangkat
lunak yakni :
1. Meminimalkan kompleksitas
2. Mengantisipasi perubahan (SRS)
3. Veri ikasi
4. Menetapkan standar
f

Lanjut…
pengelompokan terhadap berbagai masalah yang mungkin timbul dalam
implementasi pengembangan perangkat lunak dan dianggap sebagai root
cause atau akar masalah antara lain
1. Tenggat waktu atau deadline yang tidak masuk akal
2. Perubahan spesi ikasi perangkat lunak oleh pengguna yang tidak disertai
perubahan jadwal
3. Kesalahan dalam memperkirakan sumber daya yang dibutuhkan dalam
pengerjaan proyek
4. Resiko yang tidak diprediksi sebelumnya menjadi kenyataan.
5. Permasalahan di sumber daya manusia
6. Terlambat dalam mengatasi permasalahan internal

Root Cause
Lanjut…
Empat faktor penting yang harus menjadi dasar pertimbangan dalam
melakukan manajemen personil tim pengembang perangkat lunak
yaitu :
1. Konsisten, memperlakukan para personil tim harus konsisten,
terutama dari sisi reward and punishment
2. Respek, Budaya untuk saling menghormati dalam tim pengembang
perangkat lunak sangat penting
3. Inklusi, Setiap pendapat yang ada di dalam tim harus diperhatikan
4. Kejujuran, Seorang manajer tim pengembang perangkat lunak harus
jujur kepada para personilnya mulai dari hal hal yang kecil

Lanjut…
Manajemen sumber daya manusia dalam sebuah tim pengembang
perangkat lunak adalah tantangan yang cukup berat. Hal ini
dikarenakan para personil tim pengembang perangkat lunak
umumnya memiliki sifat egois yang tinggi akibat rasa percaya diri
yang berlebihan mengenai kemampuan yang mereka miliki.
Sehingga harus sangat berhati hati jika terjadi masalah yang timbul
di dalam tim tersebut.

Lanjut…
Pada saat implementasi pembangunan perangkat lunak
dilaksanakan, terdapat berbagai metode untuk melaksanakannya.
Mulai dari metode klasik yang melibatkan siklus hidup waterfall
hingga ke metode implementasi yang dianggap modern seperti
RAD (Rapid Application Development) ataupun agile method

RAD
RAD merupakan metode implementasi perangkat lunak yang
mengutamakan kecepatan dan leksibilitas didalamnya. Metode
ini muncul selaras dengan berkembangnya bahasa pemrograman di
saat sekarang yang lebih mengarah ke konsep reuseable dan
pemrograman secara visual
Tujuan utama dari penerapan RAD adalah jika terjadi perubahan di
dalam spesi ikasi maupun perancangan, maka dapat ditangani
secara langsung dan cepat
f

f
Lanjut…
beberapa karakteristik dari RAD yakni :
1. Proses untuk mende inisikan spesi ikasi, perancangan dan
implementasi dilakukan secara pararel
2. Pembangunan perangkat lunak dilakukan secara bertahap, dan
dalam tiap tahap pembangunan melibatkan pengguna untuk
melakukan review
3. Proses perancangan menggunakan teknik prototyping sehingga
jauh lebih cepat dilaksanakan.

f
f

RAD
AGILE
Agile adalah sekumpulan metode pengembangan software yang dilakukan secara
bertahap dan berulang (iterasi).
Agile development sering disebut sebagai framework karena di dalamnya memang
terdapat berbagai metode yang bisa digunakan sesuai kebutuhan.
Setiap iterasi pada Agile juga berbeda-beda durasinya, tergantung project yang
Anda kerjakan dan metode yang digunakan. Namun, umumnya iterasi berjalan
antara satu sampai empat minggu.
Iterasi pada Agile fokus pada upaya pengembangan software yang cepat sesuai
perubahan kebutuhan konsumen dengan melibatkan semua tim
Hasilnya, pengembangan software Anda akan lebih leksibel dan e isien. Plus,
software Anda akan up-to-date karena selalu menyesuaikan dengan kondisi pasar di
setiap iterasinya.

f
Waterfall VS Agile
Lanjut..
Sebagai sebuah framework, Agile development menggunakan delapan metode yang berbeda, yaitu:
1. Scrum Methodology, Scrum adalah metode agile yang berfokus pada pengembangan software
kompleks. Pengerjaan software pada Scrum dibagi menjadi beberapa proses kecil yang disebut dengan
sprints.
2. Scaled Agile Framework (SAFe), Scaled Agile Framework (SAFe) ditujukan bagi perusahaan besar
atau enterprise yang ingin menerapkan metode Agile. Perusahaan besar cenderung kaku dengan
struktur divisi/tim yang banyak. Tak jarang, pengambilan keputusan terkait project bisa memakan waktu
lama karena perlu koordinasi antar divisi
3. Lean Software Development (LSD), Lean Software Development (LSD) adalah metode Agile yang
mempunyai satu tujuan: mengembangkan software dengan sumber daya sehemat mungkin. Caranya,
dengan merilis produk dengan itur terbatas yang disebut dengan Minimum Viable Product (MVP)
4. Kanban, Kanban adalah metode Agile yang menggunakan visual dalam prosesnya. Hal ini membuat
low kerja Anda lebih jelas karena bisa memantau setiap aktivitasnya, (to do, in progress, done) Kanban
Board.
f

Lanjut..
5. Extreme Programming (XP), Extreme Programming (XP) adalah metode agile yang
lebih berfokus ke aspek teknis pengembangan. Tujuannya, agar software yang
dihasilkan mempunyai kualitas tinggi, sehingga kemampuan tim pengembangnya juga
meningkat drastis.
6. Crystal Methodology, Crystal Methodology adalah metode Agile yang lebih
berfokus ke kondisi tim yang mengerjakan, alih-alih ke proses atau tools-nya. Mulai dari
interaksi tim, komunikasi, feedback, dokumentasi, dan sebagainya.
7. Dynamic Systems Development Method (DSDM), Dynamic Systems Development
Method (DSDM) adalah metode agile yang mengutamakan keterlibatan semua anggota
tim secara berlanjut.
8. Feature Driven Development (FDD), Seperti namanya, Feature Driven Development
(FDD) adalah metode Agile yang berfokus untuk menyelesaikan satu itur (mirip scrum).

Anda mungkin juga menyukai