Materi
3.2 - 4.2 Model Proses Pengembangan Perangkat Lunak
Tahapan Proses Pengembangan Perangkat
lunak
Era Pertama ( 1950 – 1960)
·
Batch
Orientation, Suatu orientasi di mana proses dilakukan setelah data
dikumpulkan dalam satuan waktu tertentu, atau proses dilakukan setelah data
terkumpul, lawan dari batch adalah Online atau Interactive
Process. Keuntungan dari Interactive adalah mendapatkan data yang
selalu up to date.
·
Limmited
distribution, Suatu penyebaran software yang terbatas pada perusahaan-perusahaan
tertentu.
·
Custom
software, Software yang dikembangkan berdaasarkan perusahaan-perusahaan
tertentu.
Era Kedua (1960 – 1970)
·
Multi
user, Suatu sistem di mana satu komputer digunakan oleh beberapa user pada
saat yang sama.
·
Real
Time, Suatu sistem yang dapat mengumpulkan, menganalisa dan
mentransformasikan data dari berbagai sumber, mengontrol proses dan
menghasilkan output dalam mili second.
·
Database, Perkembangan
yang pesat dari alat penyimpan data yang OnLine menyebabkan muncul generasi
pertama. DBMS (DataBase Management System).
·
Product
Software, Adalah software yang dikembangkan untuk dijual kepada masyarakat
luas.
Era Ketiga (1980 – 1990)
·
Distributed
system, Suatu sistem yang tidak hanya dipusatkan pada komputer induk (Host
computer), daerah atau bidang lainnya, yang juga memiliki komputer yang
ukurannya lebih kecil dari komputer induk. Lawan dari distributed system adalah
Centralized System.
·
Embedded
Intelegence, Suatu product yang diberi tambahan “Intellegence” dan
biasanya ditambahkan mikroprocessor yang mutakhir. Contohnya adalah automobil,
robot, peralatan diagnostic serum darah.
·
Low
Cost Hardware, harga hardware yang semakin rendah, ini dimungkinkan karena
munculnya Personal Computer.
·
Consummer
Inpact, Adanya perkembangan komputer yang murah menyebabkan banyaknya
software yang dikembangkan, software ini memberi dampak yang besar terhadap
masyarakat.
Era Keempat (1990 – 2000)
·
Expert
system, Suatu penerapan kecerdasan buatan pada bidang-bidang
tertentu, misalnya bidang kedokteran, komunikasi, dll.
·
Artificcial
Intelegence Machine, Suatu mesin yang dapat meniru kerja dari
sebagian otak manusia. Misalnya mesin robot, komputer catur. Parallel
Architecture
Arsitektur komputer yang memungkinkan proses kerja LAN paralel, yang dimungkinkan adanya prosesor berbeda dalam satu komputer.
Arsitektur komputer yang memungkinkan proses kerja LAN paralel, yang dimungkinkan adanya prosesor berbeda dalam satu komputer.
Ragam Model Proses Pengembangan Perangkat Lunak
Pemodelan dalam suatu rekayasa perangkat lunak
merupakan suatu hal yang dilakukan di tahapan awal. Di dalam suatu rekayasa
dalam perangkat lunak sebenarnya masih memungkinkan tanpa melakukan suatu
pemodelan. Namun hal itu tidak dapat lagi dilakukan dalam suatu industri
perangkat lunak.
Pemodelan
delam perangkat lunak merupakan suatu yang harus dikerjakan di bagian awal dari
rekayasa, dan pemodelan ini akan mempengaruhi perkerjaan-pekerjaan dalam
rekayasa perangkat lunak tersebut.
Di
dalam suatu industri dikenal berbagai macam proses, demikian juga halnya dengan
industri perangkat lunak. Perbedaan proses yang digunakan akan menguraikan
aktivitas-aktivitas proses dalam cara-cara yang berlainan. Perusahaan yang
berbeda menggunakan proses yang berbeda untuk menghasilkan produk yang sama.
Tipe produk yang berbeda mungkin dihasilkan oleh sebuah perusahaan dengan
menggunakan proses yang berbeda. Namun beberapa proses lebih cocok dari lainnya
untuk beberapa tipe aplikasi. Jika proses yang salah digunakan akan mengurangi
kualitas kegunaan produk yang dikembangkan.
Pada
rekayasa perangkat lunak, banyak model yang telah dikembangkan untuk membantu
proses pengembangan perangkat lunak. Model-model ini pada umumnya mengacu pada
model proses pengembangan sistem yang disebut System Development Life Cycle (SDLC) seperti terlihat pada
gambar dibawah ini,
Setiap
model yang dikembangkan mempunyai karakteristik sendiri. Namun secara umum ada
persamaannya, yaitu :
·
Kebutuhan
terhadap definisi masalah yang jelas. Input utama dari setiap model
pengembangan perangkat lunak adalah pendefinisian masalah yang jelas. Semakin
jelas akan semakin baik karena akan memudahkan dalam penyelesaian masalah. Oleh
karena itu pemahaman masalah merupakan bagian penting dari model pengembangan
perangkat lunak.
·
Tahapan-tahapan
pengembangan yang teratur. Meskipun model-model pengembangan perangkat lunak
memiliki pola yang berbeda-beda, biasanya model-model tersebut mengikuti pola
umum analysis – design – coding – testing – maintenance.
·
Stakeholder
berperan sangat penting dalam keseluruhan tahapan pengembangan. Stakeholder
dalam rekayasa perangkat lunak dapat berupa pengguna, pemilik, pengembang,
pemrogram dan orang-orang yang terlibat dalam rekayasa perangkat lunak
tersebut.
·
Dokumentasi
merupakan bagian penting dari pengembangan perangkat lunak. Masing-masing
tahapan dalam model biasanya menghasilkan sejumlah tulisan, diagram, gambar
atau bentuk-bentuk lain yang harus didokumentasi dan merupakan bagian tak
terpisahkan dari perangkat lunak yang dihasilkan.
Keluaran
dari proses pengembangan perangkat lunak harus bernilai ekonomis. Nilai dari
sebuah perangkat lunak sebenarnya agak susah dirupiah- kan. Namun efek dari
penggunaan perangkat lunak yang telah dikembangkan haruslah memberi nilai
tambah bagi organisasi. Hal ini dapat Setiap model yang dikembangkan mempunyai
karakteristik sendiri-sendiri.
Model
proses perangkat lunak masih menjadi object penelitian, tapi sekarang ada
banyak model umum atau paradigma yang berbeda dari pengembangan perangkat
lunak, antara lain:
A. Waterfall Model
Sebuah pendekatan pengembangan perangkat lunak sistematik dan sekuensial. Disebut juga “Classic Life Cycle”. Disebut waterfall (berarti air terjun) karena memang diagram tahapan prosesnya mirip dengan air terjun yang bertingkat, berikut diagram tahapannya :
Aktivitas Waterfall Model
·
Requirements
analysis and definition : mengumpulkan kebutuhan secara lengkap kemudian
dianalisis dan didefinisikan kebutuhan yang hasrus dipenuhi oleh program yang
akan dibangun.
·
System
and software design : desain dikerjakan setelah kebutuhan selesai dikumpulkan
secara lengkap.
·
Implementation
and unit testing : desain program diterjemahkan ke dalam kode-kode dengan
menggunakan bahasa pemrograman yang sudah ditentukan. Program yang dibangun
langsung diuji.
·
Integration
and system testing : penyatuan unit-unit program kemudian diuji secara
keseluruhan (system testing)
·
Operation
and maintenance : mengoperasikan program dilingkungannya dan melakukan
pemeliharaan, seperti penyesuaian atau perubahan karena adaptasi dengan situasi
sebenarnya.
Keunggulan dari waterfall:
·
Software
yang dikembangkan dengan metode ini biasanya menghasilkan kualitas yang baik.
·
Dokumen
pengembangan sistem sangat terorganisir, karena setiap fase harus terselesaikan
dengan lengkap sebelum melangkah ke fase berikutnya.
Kekurangan dari waterfall:
Perubahan
sulit dilakukan karena sifatnya yang kaku.
Karena
sifat kakunya, model ini cocok ketika kebutuhan dikumpulkan secara lengkap
sehingga perubahan bisa ditekan sekecil mungkin. Tapi pada kenyataannya jarang
sekali konsumen/pengguna yang bisa memberikan kebutuhan secara lengkap,
perubahan kebutuhan adalah sesuatu yang wajar terjadi.
Waterfall
pada umumnya digunakan untuk rekayasa sistem yang besar dimana proyek
dikerjakan di beberapa tempat berbeda, dan dibagi menjadi beberapa bagian
sub-proyek.
B. Evolutionary Software Process Models
Bersifat iteratif/ mengandung perulangan. Hasil proses berupa produk yang makin lama makin lengkap sampai versi terlengkap dihasilkan sebagai produk akhir dari proses. Dua model dalam evolutionary software process model adalah:
1.
Incremental Model
Incremental Model merupakan gabungan antara model linear sekuensial dan prototyping. Setiap linear sekuen menghasilkan produk yang deliveriables. Increment pertama merupakan produk inti yang mengandung persyaratan/kebutuhan dasar. Penambahan dilakukan pada increment-incremet berikutnya.
Keterangan:
Kombinasikan
elemet-element dari waterfall dengan sifat iterasi/perulangan.
Element-element
dalam waterfall dikerjakan dengan hasil berupa produk dengan spesifikasi
tertentu, kemudian proses dimulai dari fase pertama hingga akhir dan
menghasilkan produk dengan spesifikasi yang lebih lengkap dari yang sebelumnya.
Demikian seterusnya hingga semua spesifikasi memenuhi kebutuhan yang ditetapkan
oleh pengguna.
Produk
hasil increment pertama biasanya produk inti (core product), yaitu produk yang
memenuhi kebutuhan dasar. Produk tersebut digunakan oleh pengguna atau
menjalani review/pengecekan detil. Hasil review tersebut menjadi bekal untuk
pembangunan pada increment berikutnya. Hal ini terus dikerjakan sampai produk
yang komplit dihasilkan.
Model
ini cocok jika jumlah anggota tim pengembang/pembangun PL tidak cukup.
Mampu
mengakomodasi perubahan secara fleksibel.
Produk
yang dihasilkan pada increment pertama bukanlah prototype, tapi produk yang
sudah bisa berfungsi dengan spesifikasi dasar.
Keunggulan dari Incremental Model :
·
Personil
bekerja optimal
·
Pihak
konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai
dibangun. Contohnya pemasukan data karyawan
·
Mengurangi
trauma karena perubahan sistem. Klien dibiasakan perlahan-lahan
menggunakan produknya bagian per bagian
·
Memaksimalkan
pengembalian modal investasi konsumen
Kekurangan dari Incremental Model :
·
Cocok
untuk proyek berukuran kecil (tidak lebih dari 200.000 baris coding)
·
Mungkin
terjadi kesulitan untuk memetakan kebutuhan pengguna ke dalam rencana
spesifikasi masing-masing hasil increment
·
Dapat
menjadi build and Fix Model, karena kemampuannya untuk selalu mendapat
perubahan selama proses rekayasa berlangsung.
2. Spiral Model
·
Proses
digambarkan sebagai spiral. Setiap loop mewakili satu fase dari software
process. Loop paling dalam berfokus pada kelayakan dari sistem, loop
selanjutnya tentang definisi dari kebutuhan, loop berikutnya berkaitan dengan
desain sistem dan seterusnya. Setiap Loop dibagi menjadi beberapa sektor :
·
Objective
settings (menentukan tujuan): menentukan tujuan dari fase yang ditentukan.
Batasan-batasan pada proses dan produk sudah diketahui. Perencanaan sudah
disiapkan. Resiko dari proyek sudah diketahui. Alternatif strategi sudah
disiapkan berdasarkan resiko-resiko yang diketahui, dan sudah direncanakan.
·
Risk
assessment and reduction (Penanganan dan pengurangan resiko): setiap resiko
dianalisis secara detil pada sektor ini. Langkahlangkah penanganan dilakukan,
misalnya membuat prototype untuk mengetahui ketidakcocokan kebutuhan.
·
Development
and Validation (Pembangunan dan pengujian): Setelah evaluasi resiko, maka model
pengembangan sistem dipilih. Misalnya jika resiko user interface dominan, maka
membuat prototype User Interface. Jika bagian keamanan yang bermasalah, maka
menggunakan model formal dengan perhitungan matematis, dan jika masalahnya
adalah integrasi sistem model waterfall lebih cocok.
·
Planning:
Proyek dievaluasi atau ditinjau-ulang dan diputuskan untuk terus ke fase loop
selanjutnya atau tidak. Jika melanjutkan ke fase berikutnya rencana untuk loop
selanjutnya.
Pembagian
sektor tidak bisa saja dikembangkan seperti pada pembagian sektor berikut pada
model variasi spiral di bawah ini:
Customer
communication:
membangun komunikasi yang baik dengan pengguna/customer.
Planning: mendefinisikan sesumber, batas waktu,
informasi-informasi lain seputar proyek
Risk
analysis:
identifikasi resiko managemen dan teknis
Engineering: pembangunan contoh-contoh aplikasi,
misalnya prototype
Construction
and release :
pembangunan, test, install dan support.
Customer
evaluation:
mendapatkan feedback dari pengguna berdasarkan evaluasi PL
Pada
model spiral, resiko sangat dipertimbangkan. Resiko adalah sesuatu yang mungkin
mengakibatkan kesalahan. Model spiral merupakan pendekatan yang realistik untuk
PL berskala besar. Pengguna dan pembangun bisa memahami dengan baik software
yang dibangun karena setiap kemajuan yang dicapai selama proses dapat diamati
dengan baik. Namun demikian, waktu yang cukup panjang mungkin bukan pilihan
bagi pengguna, karena waktu yang lama sama dengan biaya yang lebih besar.
C. Transformasi Formal
Metode
ini berbasiskan pada transformasi spesifikasi secara matematik melalui
representasi yang berbeda untuk suatu program yang dapat dieksekusi.
Trasformasi menyatakan spesifikasi program Menggunakan pendekatan ‘Cleanroom’
untuk pengembangan PL.
Metode
ini mempunyai keterbatasan dalam pemakaiannya. Keunggulannya adalah mengurangi
jumlah kesalahan pada sistem sehingga penggunaan utamanya adalah pada sistem
yang kritis. Hal ini menjadi efektif dari segi biaya.
Pemakaian
model pengembangan formal memerlukan tingkat kerahasian sebelum digunakan.
Permasalahan dalam model pengembangan metode formal:
Permasalahan dalam model pengembangan metode formal:
·
Memerlukan
keahlian khusus dan pelatihan untuk mengaplikasikannya
·
Sulit
menentukan beberapa aspek dari suatu sistem seperti user interface
D. Model Rapid Aplication Development (RAD)
Rapid Aplication Development (RAD) adalah sebuah model proses perkembangan software sekuensial linier yang menekankan siklus perkembangan yang sangat pendek. Model RAD ini merupakan sebuah adaptasi “kecepatan tinggi” dari model sekuensial linier di mana perkembangan cepat dicapai dengan menggunakan pendekatan kontruksi berbasis komponen. Jika kebutuhan dipahami dengan baik, proses RAD memungkinkan tim pengembangan menciptakan “sistem fungsional yang utuh” dalam periode waktu yang sangat pendek (kira-kira 60 sampai 90 hari). Karena dipakai terutama pada aplikasi sistem konstruksi, pendekatan RAD melingkupi fase – fase sebagai berikut :
1. Bussiness modeling
Aliran informasi di antara fungsi – fungsi bisnis dimodelkan dengan suatu cara untuk menjawab pertanyaan – pertanyaan berikut : informasi apa yang mengendalikan proses bisnis? Informasi apa yang di munculkan? Siapa yang memunculkanya? Ke mana informasi itu pergi? Siapa yang memprosesnya?
2. Data modeling
Aliran informasi yang didefinisikan sebagai bagian dari fase bussiness modelling disaring ke dalam serangkaian objek data yang dibutuhkan untuk menopang bisnis tersebut. Karakteristik (disebut atribut) masing–masing objek diidentifikasi dan hubungan antara objek – objek tersebut didefinisikan.
3. Prosess modeling
Aliran informasi yang didefinisikan di dalam fase data modeling ditransformasikan untuk mencapai aliran informasi yang perlu bagi implementasi sebuah fungsi bisnis. Gambaran pemrosesan diciptakan untuk menambah, memodifikasi, menghapus, atau mendapatkan kembali sebuah objek data.
4. Aplication generation
RAD mengasumsikan pemakaian teknik generasi ke empat. Selain menciptakan perangkat lunak dengan menggunakan bahasa pemrograman generasi ketiga yang konvensional, RAD lebih banyak memproses kerja untuk memkai lagi komponen program yang ada ( pada saat memungkinkan) atau menciptakan komponen yang bisa dipakai lagi (bila perlu). Pada semua kasus, alat – alat bantu otomatis dipakai untuk memfasilitasi konstruksi perangkat lunak.
5. Testing and turnover
Karena proses RAD menekankan pada pemakaian kembali, banyak komponen program telah diuji. Hal ini mengurangi keseluruhan waktu pengujian. Tetapi komponen baru harus di uji dan semua interface harus dilatih secara penuh.
Keunggulan
model RAD adalah :
Setiap
fungsi mayor dapat dimodulkan dalam waktu tertentu kurang dari 3 bulan dan
dapat dibicarakan oleh tim RAD yang terpisah dan kemudian diintegrasikan
sehingga waktunya lebih efisien
RAD
mengikuti tahap pengembangan sistem seperti umumnya, tetapi mempunyai kemampuan
untuk menggunakan kembali komponen yang ada sehingga pengembang tidak perlu
membuat dari awal lagi dan waktu yang lebih singkat
Kekurangan
model RAD adalah :
Bagi
proyek yang besar tetapi berskala, RAD memerlukan sumber daya manusia yang
memadai untuk menciptakan jumlah tim RAD yang baik.
RAD
menuntut pengembangan dan pelanggan memiliki komitmen di dalam aktivitas
rapid-fire yang diperlukan untuk melengkapi sebuah sistem, di dalam kerangka
waktu yang sangat diperpendek. Jika komitmen tersebut tidak ada, proyek RAD
akan gagal.
E. Prototyping Model
Kadang-kadang
klien hanya memberikan beberapa kebutuhan umum software tanpa detil input,
proses atau detil output. Di lain waktu mungkin dimana tim pembangun
(developer) tidak yakin terhadap efisiensi dari algoritma yang digunakan,
tingkat adaptasi terhadap sistem operasi atau rancangan form user interface.
Ketika situasi seperti ini terjadi model prototyping sangat membantu proses
pembangunan software.
Proses
pada model prototyping yang digambarkan pada gambar model prototyping, bisa
dijelaskan sebagai berikut:
Pengumpulan
kebutuhan: developer dan klien bertemu dan menentukan tujuan umum, kebutuhan
yang diketahui dan gambaran bagian-bagian yang akan dibutuhkan berikutnya.
Detil kebutuhan mungkin tidak dibicarakan disini, pada awal pengumpulan
kebutuhan.
Perancangan
: perancangan dilakukan cepat dan rancangan mewakili semua aspek software yang
diketahui, dan rancangan ini menjadi dasar pembuatan prototype.
Evaluasi
prototype: klien mengevaluasi prototype yang dibuat dan digunakan untuk
memperjelas kebutuhan software.
Perulangan
ketiga proses ini terus berlangsung hingga semua kebutuhan terpenuhi.
Prototype-prototype dibuat untuk memuaskan kebutuhan klien dan untuk memahami
kebutuhan klien lebih baik. Prototype yang dibuat dapat dimanfaatkan kembali
untuk membangun software lebih cepat, namun tidak semua prototype bisa
dimanfaatkan. Sekalipun prototype memudahkan komunikasi antar developer dan
klien, membuat klien mendapat gambaran awal dari prototype , membantu
mendapatkan kebutuhan detil lebih baik namun demikian prototype juga
menimbulkan masalah:
Dalam
membuat prototype banyak hal yang diabaikan seperti efisiensi, kualitas,
kemudahan dipelihara/dikembangkan, dan kecocokan dengan lingkungan yang
sebenarnya. Jika klien merasa cocok dengan prototype yang disajikan dan
berkeras terhadap produk tersebut, maka developer harus kerja keras untuk
mewujudkan produk tersebut menjadi lebih baik, sesuai kualitas yang seharusnya.
Developer
biasanya melakukan kompromi dalam beberapa hal karena harus membuat prototype
dalam waktu singkat. Mungkin sistem operasi yang tidak sesuai, bahasa
pemrograman yang berbeda, atau algoritma yang lebih sederhana. Agar model ini
bisa berjalan dengan baik, perlu disepakati bersama oleh klien dan developer
bahwa prototype yang dibangun merupakan alat untuk mendefinisikan kebutuhan
software.
F. Component-based Development Model
Component-based
development sangat berkaitan dengan teknologi berorientasi objek. Pada
pemrograman berorientasi objek, banyak class yang dibangun dan menjadi komponen
dalam suatu software. Class-class tersebut bersifat reusable artinya bisa
digunakan kembali. Model ini bersifat iteratif atau berulang-ulang prosesnya.
Secara umum proses yang terjadi dalam
model ini adalah:
·
Identifikasi
class-class yang akan digunakan kembali dengan menguji class tersebut dengan
data yang akan dimanipulasi dengan aplikasi/software dan algoritma yang baru
·
Class
yang dibuat pada proyek sebelumnya disimpan dalam class library, sehingga bisa
langsung diambil dari library yang sudah ada. Jika ternyata ada kebutuhan class
baru, maka class baru dibuat dengan metode berorientasi objek.Bangun software
dengan class-class yang sudah ditentukan atau class baru yang dibuat, integrasikan.
Penggunaan
kembali komponen software yang sudah ada menguntungkan dari segi:
►Siklus waktu pengembangan software, karena mampu mengurangi waktu 70%
►Biaya produksi berkurang sampai 84% arena pembangunan komponen berkurang
►Siklus waktu pengembangan software, karena mampu mengurangi waktu 70%
►Biaya produksi berkurang sampai 84% arena pembangunan komponen berkurang
Pembangunan
software dengan menggunakan komponen yang sudah tersedia dapat menggunakan
komponen COTS (Commercial off-the-shelf) – yang bisa didapatkan dengan membeli
atau komponen yang sudah dibangun sebelumnya secara internal. Component-Based
Software Engineering (CBSE) adalah proses yang menekankan perancangan dan
pembangunan software dengan menggunakan komponen software yang sudah ada. CBSE
terdiri dari dua bagian yang terjadi secara paralel yaitu software engineering
(component-based development) dan domain engineering seperti yang digambarkan
pada gambar dibawah ini,
Domain
engineering menciptakan model domain bagi aplikasi yang akan digunakan untuk
menganalisis kebutuhan pengguna. Identifikasi, pembangunan, pengelompokan dan
pengalokasikan komponen-komponen software supaya bisa digunakan pada sistem
yang ada dan yang akan datang.
Software
engineering (component-based development) melakukan analisis terhadap domain
model yang sudah ditetapkan kemudian menentukan spesifikasi dan merancang
berdasarkan model struktur dan spesifikasi sistem, kemudian melakukan
pembangunan software dengan menggunakan komponen-komponen yang sudah ditetapkan
berdasarkan analisis dan rancangan yang dihasilkan sebelumnya hingga akhirnya
menghasilkan software.
G. Extreme Programming (XP) Model
Model proses ini diciptakan dan dikembangkan oleh Kent Beck. Model ini adalah model proses yang terbaru dalam dunia rekayasa perangkat lunak dan mencoba menjawab kesulitan dalam pengembangan software yang rumit dan sulit dalam implementasi. Menurut Kent Beck XP adalah : “A lightweight, efficient, low-risk, flexible,predictable, scientific and fun way to develop software”. Suatu model yang menekankan pada:
►
keterlibatan user secara langsung
►
pengujian
►
pay-as-you-go design
Sebagai
contoh :
Adapun empat nilai penting dari XP :
Communication/Komunikasi
: komunikasi antara developer dan klien sering menjadi masalah. Karena itu
komunikasi dalam XP dibangun dengan melakukan pemrograman berpasangan (pair
programming). Developer didampingi oleh pihak klien dalam melakukan coding dan
unit testing sehingga klien bisa terlibat langsung dalam pemrograman sambil
berkomunikasi dengan developer. Selain itu perkiraan beban tugas
jugadiperhitungkan.
Simplicity/
sederhana: Menekankan pada kesederhanaan dalam pengkodean: “What is the
simplest thing that could possibly work?” Lebih baik melakukan hal yang
sederhana dan mengembangkannya besok jika diperlukan. Komunikasi yang lebih
banyak mempermudah, dan rancangan yang sederhana mengurangi penjelasan.
Feedback
/ Masukan/Tanggapan: Setiap feedback ditanggapi dengan melakukan tes, unit test
atau system integration dan jangan menunda karena biaya akan membengkak (uang,
tenaga, waktu).
Courage
/ Berani: Banyak ide baru dan berani mencobanya, berani mengerjakan kembali dan
setiap kali kesalahan ditemukan, langsung diperbaiki.
Ragam Model Proses Pengembangan Perangkat Lunak
ReplyDeletePemodelan dalam suatu rekayasa perangkat lunak merupakan suatu hal yang dilakukan di tahapan awal. Di dalam suatu rekayasa dalam perangkat lunak sebenarnya masih memungkinkan tanpa melakukan suatu pemodelan. Namun hal itu tidak dapat lagi dilakukan dalam suatu industri perangkat lunak.
Pemodelan delam perangkat lunak merupakan suatu yang harus dikerjakan di bagian awal dari rekayasa, dan pemodelan ini akan mempengaruhi perkerjaan-pekerjaan dalam rekayasa perangkat lunak tersebut.
Saya jd mengetahuinya!
Terimakasih, sangat membantu
ReplyDeletebagus sangat membantu
ReplyDeleteMy blog