Perangkat lunak (software) kini sudah menjadi kekuatan yang menentukan. Perangkat lunak menjadi mesin yang mengendalikan pengambilan keputusan di dalam dunia bisnis, berfungsi sebagai dasar dari semua bentuk pelayanan serta penelitian keilmuan modern. Perangkat lunak dilekatkan dengan segala bentuk sistem : transportasi, medis, telekomunikasi, militer, proses industri, hiburan, produk-produk kantor dan lainnya. Perangkat lunak benar-benar tidak dapat lepas dari kehidupan modern. Semua itu mengubah pandangan masyarakt tentang perangkat lunak. Program-program perangkat lunak sudah tersebar luas, dan masyarakat memandangnya sebagai kejayaan teknologi dalam kehidupan. Dalam banyak contoh, orang-orang sudah mulai mempertaruhkan pekerjaan, kenyamanan, keselamatan, hiburan, keputusan dan banyak segi dalam kehidupannya pada komputer.
Oleh
karena itu dibutuhkan teknologi yang harus dipakai oleh orang-orang yang
membangun perangkat lunak komputer dan kita juga harus dapat mengembangkannya
dengan cara yang tepat. Teknologi meliputi sebuah proses, serangkaian metode
dan sederetan alat yang kita sebut dengan software engineering.
I.
PERANGKAT LUNAK
Perangkat
lunak dapat didefinisikan sebagai berikut :
1. Perintah (program komputer) yang
bila dieksekusi memberikan fungsi dan unjuk kerja seperti yang diinginkan.
2. Struktur data yang memungkinkan
program memanipulasi informasi secara proposional.
3.
Dokumen yang menggambarkan informasi dan kegunaan program.
I.
1. Karakteristik Perangkat Lunak
Untuk memperoleh pemahaman tentang
perangkat lunak (serta pemahaman tentang software engineering), penting
juga untuk meneliti karakteristik perangkat lunak berbeda dari hal-hal lain
yang dibangun oleh manusia. Ketika perangkat lunak dibuat, proses kreatif
manusia (analisis, desain, konstruksi, pengujian) diterjemahkan ke dalam bentuk
fisik. Jika kita membuat komputer baru, sketsa dasar, penggambaran desain
formal, dan prototipe bread boarder berkembang ke dalam suatu produk
fisik (VLSI chip, papan rangkaian, catu daya, dll).
Perangkat
lunak lebih merupakan elemen logika dan bukan merupakan elemen sistem fisik.
Dengan demikian, perangkat lunak memiliki ciri yang berbeda dari perangkat
keras:
1.
Perangkat lunak dibangun dan dikembangkan, tidak dibuat dalam bentuk yang
klasik
Meskipun banyak kesamaan di antar
pabrik perangkat keras dan perangkat lunak, aktivitas keduanya secara mendasar
sangat berbeda. Dalam keduanya tersebut, kualitas yang tinggi dicapai melalui
perancangan yang baik, tetapi di dalam fase pembuatan perangkat keras, selalu
saja ditemukan masalah kualitas yang tidak mudah untuk disesuaikan dengan
perangkat lunak. Kedua aktivitas itu tergantung pada manusia, tetapi hubungan
antara penerapan yang dilakukan manusia dengan usaha yang diperoleh sangat
berbeda. Kedua aktivitas itu membutuhkan konstruksi sebuah “produk” tetapi
pendekatan yang dipakai berbeda.
Biaya
untuk perangkat lunak dikonsentrasikan pada pengembangan. Hal ini berarti
proyek perangkat lunak tidak dapat diatur seperti pengaturan proyek
pemanufakturan.
2.
Perangkat lunak tidak pernah usang
Perangkat lunak tidak rentan terhadap
pengaruh lingkungan yang merusak yang menyebabkan perangkat keras menjadi
usang. Kesalahan-kesalahan yang tidak dapat ditemukan akan menyebabkan tingkat
kegagalan menjadi sangat tinggi pada awal hidup program. Tetapi hal itu dapat
diperbaiki dan diharapkan tidak lagi ditemukan kesalahan yang lain.
Aspek
lain dari keusangan menggambarkan perbedaan antara perangkat keras dan
perangkat lunak. Bila komponen suatu perangkat telah usang, komponen dapat
diganti dengan suku cadangnya. Namun tidak ada suku cadang bagi perangkat
lunak. Setiap kegagalan perangkat lunak menggambarkan kesalahan dalam
perancangan atau proses di mana rancangan diterjemahkan ke dalam kode mesin
yang dapat dieksekusi. Demikianlah, pemeliharaan perangkat lunak menjadi lebih
kompleks daripada pemeliharaan perangkat keras.
3.
Sebagian besar perangkat lunak dibuat secara custom-built, serta tidak dapat
dirakit dari komponen yang sudah ada.
Saat perangkat keras untuk produk
berbasis mikroprosesor dirancang dan dibuat, pengembang desain menggambar
sebuah skema sederhana dari rangkaian digital, melakukan serangkaian analisis
dasar untuk memastikan bahwa fungsi yang tepat discapai serta kemudian
menyesuaikan ke katalog komponen digital. Setiap IC (chip) mempunyai nomor
bagian tersendiri, sebuah fungsi yang sudah terdefinisi dan tervalidasi,
interface yang didefinisikan dengan baik, serta rangkaian standar tuntutan
terintegrasi. Setelah masing-masing komponen diseleksi, perangkat keras dapat
dipesan secara terpisah.
Sayangnya
para perancang perangkat lunak tidak diberi fasilitas seperti yang diggambarkan
di atas. Dengan sedikit pengecualian, tidak ada katalog komponen perangkat lunak.
Memang memungkinkan untuk memesan perangkat lunak secara terpisah, tetapi tetap
merupakan satu kesatuan yang lengkap, bukan sebagai komponen yang dapat
dipasangkan ke dalam program-program yang baru.
I.
2. Komponen Perangkat Lunak
Komponen perangkat lunak dibangun
dengan bahasa pemrograman yang memiliki kosakata yang terbatas, sebuah tata
bahasa yang dibatasi secara eksplisit serta aturan-aturan syntax dan semantik
yang dibentuk secara baik. Pada tingkat yang paling rendah, bahasa-bahasa itu
mencerminkan serangkaian instruksi perangkat keras. Pada tingkat sedang, bahasa
pemrograman seperti Ada 95, C, atau SmalTalk, dipakai untuk membuat deskripsi
prosedural dari program. Pada tingkat yang paling tinggi, bahasa-bahasa
tersebut menggunakan ikon grafik atau simbol lain untuk mewakili kebutuhan akan
sebuah pemecahan. Instruksi-instruksi yang dapat dieksekusi dibuat secara
otomatis.
Bahasa
tingkat mesin merupakan perwakilan simbolik dari serangkaian instruksi CPU.
Ketika pengembang perangkat lunak yang baik memproduksi sebuah program yang
didokumentasikan dengan baik dan juga dapat diperbaharui, maka bahasa tingkat
mesin dapat secara ekstrim menggunakan memori dan kecepatan eksekusi program
secara efisien. Bila program tidak dirancang dengan baik dan hanya memiliki
sedikit dokumentasi, maka bahasa tingkat mesin tidak akan menghasilkan sesuatu
yang diharapkan.
Bahasa tingkat menengah
memungkinkan pengembang perangkat lunak serta program tidak tergantung pada
mesin. Ketika digunakan penerjemah yang lebih canggih, maka kosakata, tata
bahsa, syntax dan semantik dari bahasa tingkat menengah dapat menjadi lebih
canggih dari pada bahasa tingkat mesin. Pada kenyataannya, bahasa tingkat
menengah meng-compile dan menginterpretasi hasil bahasa tingkat mesin
sebagai keluaran.
Meskipun
sekarang ini dipakai ratusan bahasa pemrograman, tetapi bahasa pemrograman
tingkat menengah yang masih dipakai secara luas di dalam industri kurang dari
10. Bahasa seperti COBOL dan FORTRAN masih tetap dipakai secara luas lebih dari
30 tahun setelah masa pengenalannya. Banyak bahasa pemrograman seperti Ada 95,
C, C++, Eiffel, Java dan SmallTalk mendapat sambutan yang cukup antusias.
Kode mesin, bahasa assembly (tingkat
mesin), bahasa pemrograman tingkat menengah, sering disebut tiga generasi
bahasa komputer yang pertama, dengan bahasa-bahasa tersebut, pemrogram harus
melihat dengan baik kekhususan struktur informaasi maupun kontrol pemrograman
itu sendiri. Demikianlah bahasa di dalam tiga generasi yang pertama dimasukkan
ke dalam jenis bahasa prosedural.
Bahasa generasi keempat, disebut juga
bahasa non-prosedural, menggerakkan pengembang perangkat lunak untuk
mengkhususkan pada detail prosedural. Bahasa non-prosedural secara tidak
langsung menyatakan sebuah program melalui spesifikasi hasil yang diharapkan.
Dan tidak pada aksi yang dibutuhkan untuk mencapai hasil tersebut. Perangkat
lunak penopang menerjemahkan spesifikasi hasil ke dalam sebuah program mesin
yang dapat dieksekusi.
I.3.
Aplikasi Perangkat Lunak
Perangkat lunak dapat diaplikasikan ke
berbagai situasi di mana serangkaian langkah prosedural (seperti algoritma)
telah didefinisikan (pengecualian yang di dapat pada aturan ini adalah sistem
pakar dan perangkat lunak jaringan syaraf kecerdasan buatan). Kandungan
(content) informasi dam determinasi merupakan faktor penting dalam menentukan
sifat aplikasi perangkat lunak. Content mengarah pada arti dan bentuk
dari informasi yang masuk dan keluar. Contohnya, banyak aplikasi bisnis memakai
data input yang terstruktur secara tinggi (sebuah database) dan menghasilkan
laporan yang sudah terformat. Perangkat lunak yang mongontrol sebuah mesin
otomatis (misal kontrol numerik) menerima bentuk-bentuk data diskrit dengan
struktur yang terbatas dan menghasilkan perintah mesin individual dalam suksesi
yang cepat.
Memang cukup sulit untuk menentukan
kategori umum untuk aplikasi perangkat lunak. Ketika kompleksitas perangkat
lunak mulai muncul, maka penggolongan yang rapi menjadi hilang. Area perangkat
lunak berikut ini menunjukkan luasnya aplikasi potensial:
a.
Perangkat Lunak Sistem
Perangkat lunak sistem merupakan
sekumpulan program yang ditulis untuk melayani program-program yang lain.
Banyak perangkat lunak sistem (misal kompiker, editor, dan utilitas pengatur
file) memproses struktur-struktur informasi yang lengkap namun tetap.
Aplikasi-aplikasi sistem yang lain (komponen sistem operasi, driver, prosesor
telekomunikasi) memproses secara luas data yang bersifat tetap. Di dalam setiap
kasus tersebut, area perangkat lunak sistem ditandai dengan eratnya interaksi
dengan perangkat keras komputer; penggunaan oleh banyak pemakai; operasi
konkuren yang membutuhkan penjadwalan, tukar menukar sumber dan pengaturan
proses yang canggih; struktur data yang kompleks, serta interface eksternal
ganda.
b.
Perangkat Lunak Real-Time
Program-program yang
memonitor/menganalisis/mengontrol kejadian dunia nyata pada saat terjadinya
disebut perangkat lunak real-time. Elemen-elemen perangkat lunak real-time
mencakup komponen pengumpul data yang mengumpulkan dan memformat informasi
dari lingkungan eksternal, sebuah komponen analisis yang mentransformasi
informasi pada saat dibutuhkan oleh aplikasi, sebuah komponen kontrol/output
yang memberikan respon kepada lingkungan eksternal, serta sebuah komponen
monitor yang mengkoordinasi semua komponen lain agar respon real-time nya
(khususnya untuk jangkauan dari 1 milidetik sampai 1 menit) dapat terjaga.
Perlu diingat bahwa real time berbeda dengan interaksi atau timesharing.
Sistem real-time harus merespon di dalam suatu rentang waktu yang tetap.
Waktu respon sebuah sistem interaktif (atau timesharing) secara normal dapat
diperpanjang tanpa memberikan risiko kerusakan pada hasil.
c.
Perangkat Lunak Bisnis
Pemrosesan informasi bisnis merupakan
area aplikasi perangkat lunak yang paling luas. Sistem diskrit telah
mengembangkan perangkat lunak sistem informasi management (MIS) yang mengakses
satu atau lebih database besar yang berisi informasi bisnis. Aplikasi dalam
area ini menyusun kembali struktur data yang ada dengan suatu cara tertentu
untuk meperlancar operasi bisnis atau pengambilan keputusan manajemen. Sebagai
tambahan ke dalam aplikasi pengolahan data konvensional, aplikasi perangkat
lunak bisnis juga meliputi penghitungan klien/server serta penghitungan interaktif
(misal pemrosesan transaksi point-of sale).
d.
Perangkat Lunak Teknik dan Ilmu Pengetahuan
Perangkat
lunak teknik dan ilmu pengetahuan ditandai dengan algoritma number crunching.
Perangkat lunak ini memiliki jangkauan aplikasi mulai dari astronomi sampai
vulkanologi, dari analisis otomotif sampai dinamika orbit pesawat ruang
angkasa, dan dari biologi molekuler dampai pabrik yang sudah diotomatisasi.
Tetapi aplikasi yang baru di dalam area teknik dan ilmu pengetahuan sedang
bergerak menjauhi algoritma numeris yang konvensional. Computer-aided design,
simulasi sistem dan aplikasi interaktif yang lain, sudah mulai memakai
ciri-ciri perangkat lunak sistem genap dan real-time.
e.
Embedded Software
Produk
pintar telah menjadi bagian umum bagi hampir semua konsumen dan pasar industri.
Embedded software ada dalam read-only memory dan dipakai untuk
mengontrol hasil serta sistem untuk keperluan konsumen dan pasar industri. Embedded
software dapat melakukan fungsi yang terbatas serta fungsi esoterik (misal key
pad control untuk microwave) atau memberikan kemampuan kontrol dan fungsi
yang penting (contohnya fungsi digital dalam sebuah automobil seperti kontrol
bahan bakar, penampilan dash-board, sistem rem, dll)
f.
Perangkat Lunak Komputer Personal
Pasar
perangkat lunak komputer personal telah berkembang selama dekade terakhir.
Pengolah kata, multimedia, hiburan, manajemen databbase, aplikasi keuangan
bisnis personal, jaringan eksternal atau akses database hanya merupakan
beberapa saja dari ratusan aplikasi yang ada.
g.
Perangkat Lunak Kecerdasan Buatan
Perangkat
lunak kecerdasar buatan (Artificial Intelligent_AI) menggunakan
algoritma non-numeris untuk memecahkan masalah kompleks yang tidak sesuai untuk
perhitungan atau analisis secara langsung. Area kecerdasan buatan yang aktif
adalah sistem pakar, disebut juga sistem berbasis ilmu pengetahuan. Tetapi area
aplikasi lainnya untuk perangkat lunak kecerdasan buatan adalah pengakuan pola
(image dan voice), pembuktia teorema dan permainan game. Di
tahun-tahun terakhir, cabang perangkat lunak kecerdasan buatan yang baru, yang
disebut artificial neural network (jaringan syaraf tiruan), telah
berkembang. Jaringan syaraf mensimulasi struktur proses-proses otak (fungsi
syaraf biologis) dan kemudian mebawanya kepada perangkat lunak kelas baru yang
dapat mengenali pola-pola yang kompleks serta belajar dari
pengalaman-pengalaman masa lalu.
II.
REKAYASA PERANGKAT LUNAK (SOFTWARE ENGINEERING)
Rekayasa
perangkat lunak merupakan sebuah teknologi yang dibentangkan. Banyak pendekatan
keteknikan (termasuk software engineering) yang harus berada pada sebuah
komitmen dasar menuju kualitas. Manajemen kualitas total serta filosofinya
mengangkat budaya pengembangan proses yang terus-menerus, dan budaya itu
sendiri membawa kepada pengembangan pendekatan yang semakin matang terhadap
rekayasa perangkat lunak. Landasan yang menopang rekayasa perangkat lunak
merupakan fokus pada kualitas.
Fondasi
untuk rekayasa perangkat lunak merupakan bentangan proses. Proses-proses
rekayasa perangkat lunak adalah perekat yang menjaga bentangan-bentangan
teknologi secara besama-sama dan memungkinkan perkembangan perangkat lunak
komputer yang tepat waktu dan rasional. Proses-proses tersebut membatasi
kerangka kerja untuk serangkaian area proses kunci (key process key)
yang harus dibangun demi keaktifan penyampaian teknologi pengembangan perangkat
lunak. Area proses kunci ini membentuk dasar bagi kontrol manajemen proyek
perangkat lunak serta membangun konteks di mana metode teknis diaplikasikan,
produk usaha (model, dokumen, data, laporan, form dan lain-lain) dihasilkan,
fondasi dibangun, kualitas dijamin, dan perubahan diatur secara rapi.
Metode-metode
rekayasa perangkat lunak memberikan teknik untuk membangun perangkat lunak.
Metode-metode itu menyangkut serangkaian tugas yang luas yang menyangkut
analisis kebutuhan, kontruksi program, desain, pengujian dan pemeliharaan.
Rekayasa perangkat lunak mengandalkan pada serangkaian prinsip dasar yang
mengatur setiap area teknologi dan menyangkut aktifitas pemodelan serta
teknik-teknik deskriptif yang lain.
Tool-tool
rekayasa perangkat lunak memberikan topangan yang otamits ataupun semi-otomatis
pada proses-proses dan metode-metode yang ada. Ketika tool-tool diintegrasikan
sehingga informasi yang diciptakan oleh satu tool bisa digunakan oleh yang
lain, sistem untuk menopang perkembangan perangkat lunak yang disebut computer-aided
software engineering (CASE). CASE menggabungkan perangkat lunak, perangkat
keras dan database rekayasa perangkat lunak (repositori yang berisi informasi
penting tentang analisis, desain, konstruksi program, serta pengujian) untuk
menciptakan lingkungan rekayasa perangkat lunak yang analog dengan CAD/CAE (computer-aided
design/engineering) untuk perangkat keras.
II.
1. Pandangan Umum tentang Rekayasa Perangkat Lunak
Untuk
mengembangkan perangkat lunak secara memadai, proses pengembangan perangkat
lunak harus didefinisikan terlebih dahulu. Usaha yang berhubungan dengan
rekayasa perangkat lunak dapat dikategorikan ke dalam tiga fase umum dengan
tanpa mempedulikan area aplikasi, ukuran proyek atau kompleksitasnya.
a. Fase Definisi (Definition
Phase)
Fase
ini berfokus pada “apa” (what); di mana pada definisi ini pengembang
perangkat lunak harus mengidentifikasi informasi apa yang akan diproses, fungsi
dan unjuk kerja apa yang dibutuhkan, tingkah laku sistem seperti apa yang
diharapkan, interface apa yang akan dibangun, batasan desain apa yang ada, dan
kriteria validasi apa yang dibutuhkan untuk mendefinisikan sistem yang sukses.
Kebutuhan (requirement) adalah kunci dari sistem dan perangkat lunak
yang didefinisikan. Metode yang diaplikasikan selama fase definisi berbeda,
tergantung pada paradigma rekayasa perngakat lunak (atau kombinasi paradigma)
yang diaplikasikan. Ada tiga tugas utama yang berada dalam bentuk yang sama
yaitu:
- Sistem atau rekayasa informasi
- Perencanaan proyek perangkat lunak
-
Analisis kebutuhan
b. Fase Pengembangan (Development
Phase)
Fase
ini berfokus pada how (bagaimana); di mana selama masa pengembangan
perangkat lunak, teknisi harus mendefinisikan bagaimana data dikonstruksikan,
bagaimana fungsi-fungsi diimplementasikan sebagai sebuah arsitektur perangkat
lunak, bagaimana detail prosedur akan diimplementasikan, bagaimana interface
ditandai (dikarakterisasi), bagaimana rancangan akan diterjemahkan ke dalam
bahasa pemrograman (atau bahasa non-prosedural), serta bagaimana pengujian akan
dilakukan. Metode-metode yang diaplikasikan selama masa pengembangan program
akan bervariasi, tetapi ada tiga tugas teknis yang khusus yang harus selalu
ada, yaitu:
- Rancangan perangkat lunak
- Pemunculan kode
- Pengujian perangkat lunak
c. Fase Pemeliharaan (Maintenace
Phase)
Fase
ini berfokus pada perubahan (change), yang dihubungkan dengan koreksi
kesalahan, penyesuaian yang dibutuhkan ketika lingkungan perangkat lunak
berkembang, serta perubahan sehubungan dengan pperkembangan yang disebabkan
oleh perubahan kebutuhan pelanggan. Fase pemeliharaan mengaplikasikan lagi
langkah-langkah pada fase definisi dan fase pengembangan, tetapi semuanya tetap
tergantung pada konteks perangkat lunak yang ada. Ada empat tipe perubahan yang
terjadi selama masa fase pengembangan yaitu:
-
Koreksi
Meskipun
dengan jaminan kualitas yang terbaik, sepertinya pelanggan akan tetap menemukan
cacat pada perangkat lunak. Pemeliharaan korektif (Corrective maintenance)
mengubah perangkat lunak, membetulkan cacat atau rusak.
-
Adaptasi
Dari
waktu ke waktu, lingkungan original (contohnya CPU, sistem operasi,
aturan-aturan bisnis, karakterisasi produk eksternal) di mana perangkat lunak
dikembangkan akan terus berubah. Pemeliharaan adaptif (Adaptif maintenance)
menghasilkan modifikasi kepada perangkat lunak untuk mengakomodasi perubahan
pada kebutuhan fungsional original.
-
Perkembangan (Enhancement)
Ketika
perangkat lunak dipakai, pemakai/pelanggan akan mengenali fungsi-fungsi
tambahan yang memberi mereka keuntungan. Perfective maintenance memperluas
perangkat lunak sehingga melampaui kebutuhan fungsi originalnya.
-
Pecegahan
Keadaan
perangkat lunak semakin memburuk sehubungan dengan waktu, dan karena itu, preventive
maintenance yang sering juga disebut software engineering (rekayasa
perangkat lunak), harus dilakukan untuk memungkinkan perangkat lunak melayani
kebutuhan para pemakainya. Pada dasarnya preventive maintenance melakuakan
perubahan pada program komputer sehingga bisa menjadi lebih mudah untuk
dikoreksi, disesuaikan dan dikembangkan.
Fase
dan langkah-langkah yang berhubungan harus diimbangi dengan sejumlah aktivitas
pelindung (umbrella activities). Kegiatan-kegiatan khusus di dalam
kategori ini menyangkut:
- Kontrol dan pelacakan proyek
perangkat lunak
- Review teknis formal
- Jaminan kualitas perangkat lunak
- Penghasilan dan penyiapan dokumen
- Manajemen reusabilitas
- Pengukuran
-
Manajemen resiko
Aktivitas
pelindung diaplikasikan ke seluruh proses perangkat lunak.
II.
2. Paradigma Rekayasa Perangkat Lunak
Untuk
menyelesaikan msalah aktual di dalam sebuah setting industri, rekayasa
perangkat lunak atau tim perekayasa harus menggabungkan strategi pengembangan
yang melingkupi lapisan proses, metode, dan alat-alat bantu serta fase-fase
generik. Strategi ini sering diacukan sebagai model proses atau paradigma
rekayasa perangkat lunak. Model proses untuk rekayasa perangkat lunak dipilih
berdasarkan sifat aplikasi dan proyeknya, metode dan alat-alat bantu yang akan
dipakai, dan kontrol serta penyampaian yang dibutuhkan.
Model
proses tersebut harus disesuaikan dahulu sebelum digunakan oleh tim proyek
perangkat lunak. Untuk melakukannya telah dikembangkan alat bantu teknologi
proses untuk membantu organisasi perangkat lunak menganalisa proses mereka yang
sedang berlangsung, mengorganisasikan tugas-tugas kerja, mengontro dan
memonitor kemajuan serta mengatur kualitas teknis.
Alat
bantu teknologi proses memperbolehkan organisasi perangkat lunak untuk
membangun sebuah model kerangka kerja proses umum otomatis, sejumlah tugas dan
aktivitas pelindung. Model tersebut, yang biasanya diwakilkan sebagai sebuah
jaringan, kemudian dapat dianalisis untuk menentukan aliran kerja khusus dan
mengamati struktur proses alternatif yang menyebabkan pengurangan waktu dan
biaya pengembangan.
Sekali
sebuah proses yang diterima diciptakan, alat-alat bantu teknologi proses yang
lain dapat dipergunakan untuk mengalokasi, memonitor dan bahkan mengontrol
semua tugas rekayasa perangkat lunak yang didefinisikan sebagai bagian dari
model proses. Setiap anggotan tim proyek perangkat lunak bisa mempergunakan
alat bantu tersebut untuk mengembangkan checklist dari tugas-tugas kerja yang
dilakukan, hasil-hasil kerja yang akan diproduksi dan aktivitas penjaminan
kulaitas yang akan dilakukan. Alat-alat bantu teknologi proses juga dapat
dipergunakan untuk mengkoordinasi penggunaan alat-alat bantu perangkat lunak
komputer bantuan yang sesuai untuk tugas-tugas kerja khusus.
KESIMPULAN
1. Perangkat lunak dapat menjadi
elemen kunci bagi evolusi sistem dan produk yang berbasis komputer. Perangkat
lunak dirancang dari program-program, data, dan dokumen. Masing-masing dari
item-item tersebut terdiri dari sebuah konfigurasi yang diciptakan sebagai
bagian dari proses pengembangan perangkat lunak
2. Rekayasa perangkat lunak adalah
sebuah disiplin yang mengintegralkan proses, metode dan alat-alat bantu bagi
pegembangan proses perangkat lunak komputer.
3.
Tujuan rekayasa perangkat lunak adalah menyediakan sebuah kerangka kerja guna
membangun perangkat lunak dengan kualitas yang lebih tinggi.
0 komentar:
Posting Komentar
Terima Kasih dah mengunjungi Blog saya ini.