Anda di halaman 1dari 8

Nama : Febrianta Tarigan

NIM : 5183151024
Kelas : PTIK C
1. Konsep dasar rekayasa perangkat lunak

Rekayasa atau teknik merupakan penerapan ilmu dan teknologi untuk menyelesaikan
permasalahan manusia. Hal ni diselesaikan lewat pengetahuan, matematika, dan pengalaman
praktis yang diterapkan untuk mendesain objek atau proses yang berguna. Para praktisi teknik
professional disebut perekayasa.

Rekayasa perangkat lunak atau Software engineering dalam bahasa inggris merupakan bidang
ilmu yang mempelajari tentang segala aspek perangkat lunak, seperti cara-cara pengembangan,
pemeliharaan , pembuatan, serta manajemen kualitas perangkat lunak.

Rekayasa perangkat lunak jugamerupakan disiplin rekayasa dengan perangkat lunak yang
dikembangkan. Biasanya proses melibatkan penemuan pada keinginan klien, menyusunnya
didalam daftar kebutuhan, merangcang arsitektur yang mampu mendukung semua kebutuhan,
perancangan, pengodean, pengujian, dan pengintegrasian bagian yang terpisah, menguju
keseluruhan, penyebaran, dan pemeliharaan perangkat lunak.

Konsep dasar rekayasa perangkat lunak mempunyai dua hal pokok yaitu perangkatlunak
(software) dan komponen perekayasa. Menurut IEEE definisi perangkat lunak(software)
merupakan program komputer, prosedur, data dan semua
dokumentasiyang berhubungan operasi pada sistem komputer. jadi bisa disimpulkan bahwa soft
waremerupakan kumpulan dari object membentuk konfigurasi yang didalamnya
termasuk program, dokumen, dan data. Sedangkan Perekayasasoftware bertugas
mengembangkan produk perangkat lunak, yang secara produk dapat dikategorikan menjadi 2 tipe
yaitu :

a.Produk genericSistemstand-alone,produkshrink-wrapped

b.Produk pesananProduk custemisasi, terdapat proses interaksi antara pemesan dan


pembuat.Rekayasa perangkat lunak dapat didefinisikan sebagai disiplin ilmu yang
membahassemua aspek produksi perangkat lunak, mulai tahap awal spesifikasi sistem
sampai pemeliharaan sistem setelah digunakan. Rekayasa
perangkat lunak tidak hanya berhubungandengan proses teknis dari pengembangan perangkat
lunak tetapi juga mencakup kegiatanmanajemen proyek perangkat lunak dan pengembangan alat
bantu, metode dan teori untukmendukung produksi perangkat lunak. Secara umum rekayasa
perangkat lunak memakai pendekatan yang sistematis dan terorganisir dengan menggunakan
metode tertentu.
2. Defenisi perangkat lunak
Perangkat lunak merupakan program komputer yang berfungsi menghubungkan antara
pengguna dan komputer yang digunakan. dapat dibilang perangkat lunak merupakan
sebagai media penerjemah perintah yang diberikan oleh pengguna kepada komputer
untuk selanjutnya diproses melalui perangkat keras komputer tersebut.Perangkat lunak
umumnya digunakan untuk mengontrol perangkat keras yang biasa disebut sebagai
device driver, melakukan proses penghitungan, berinteraksi dengan perangkat lunak yang
lebih mendasar lainnya, seperti sistem operasi dan bahasa pemrograman. Secara umum
ada tiga jenis perangkat lunak yang diketahui hingga saat ini yaitu sistem operasi yang
merupakan sebuah penghubung antara pengguna dari komputer dengan perangkat keras
komputer. Kedua yaitu perangkat lunak bahasa pemrograman seperti java. Dan yang
ketiga yaitu perangkat lunak aplikasi yang merupakan penrangkat yang digunakan untuk
membantu dan memudahkan pekerjaan seseorang misalnya saja Microsoft Excel, Word,
dan Power Point

a. Karakteristik Perangkat Lunak

Setiap individu menilai perangkat lunak secara berbeda. Ini karena mereka terlibat dengan
perangkat lunak dengan cara yang berbeda. Misalnya, pengguna ingin perangkat lunak tampil
sesuai dengan kebutuhan mereka. Demikian pula, pengembang (developer) yang terlibat dalam
perancangan, pengkodean, dan pemeliharaan perangkat lunak mengevaluasi perangkat lunak
dengan melihat karakteristik internalnya, sebelum mengirimkannya ke pengguna. Karakteristik
perangkat lunak dikelompokkan menjadi enam komponen utama.

Functionality: Mengacu pada tingkat kinerja perangkat lunak terhadap tujuan yang telah
ditentukan.

Reliability: Mengacu pada kemampuan perangkat lunak untuk menyediakan fungsionalitas yang
diinginkan dalam kondisi tertentu.

Usability: Mengacu pada sejauh mana perangkat lunak dapat digunakan dengan mudah.

Efficiency: Mengacu pada kemampuan perangkat lunak untuk menggunakan sumber daya sistem
dengan cara yang paling efektif dan efisien.

Maintainability: Mengacu pada kemudahan modifikasi yang dapat dilakukan dalam sistem
perangkat lunak untuk memperluas fungsinya, memperbaiki kinerjanya, atau memperbaiki
kesalahannya.

Portability: Mengacu pada kemudahan pengembang perangkat lunak (software developer) mana
yang dapat mentransfer perangkat lunak dari satu platform ke platform lainnya, tanpa (atau
dengan minimum) perubahan. Secara sederhana, ini mengacu pada kemampuan perangkat lunak
untuk berfungsi dengan baik pada berbagai platform perangkat keras (hardware) dan perangkat
lunak (software) tanpa membuat perubahan apa pun di dalamnya.

Selain karakteristik yang disebutkan di atas, robustness dan integrity juga penting. Robustness
mengacu pada sejauh mana perangkat lunak dapat tetap berfungsi meskipun dilengkapi data yang
tidak valid sementara integrity mengacu pada sejauh mana akses yang tidak sah terhadap
perangkat lunak atau data dapat dicegah.

b. Komponen-komponen software yang dibutuhkan oleh komputer adalah:

1) Sistem Operasi

Sistem operasi merupakan software yang pertama kali akan dibaca oleh komputer pada
saat booting sebagai dasar pengoperasian komputer. Macam-macam sistem operasi antara lain
adalah: DOS, WINDOWS, LINUX, NOVELL, SUNSOFT dan sebagainya

2) Program Bantu dan Program Tambahan

Program bantu (utility) merupakan program yang digunakan untuk mengisi kekurangan atau
menampilkan kembali file suatu sistem operasi yang terhapus. PC Tools dan Norton Utilities
merupakan contoh dari program ini.

Salah satu kelemahan DOS adalah tidak mampu bekerja di sistem jaringan. Oleh karena itu
beberapa perusahaan membuat program tambahan yang dapat mengubah sistem DOS tersebut
(single user atau stand alone system) menjadi sistem operasi yang dapat digunakan oleh banyak
pemakai (multiuser). Netware, Token Ring dan Lantastic merupakan contoh-contoh program ini.

3) Bahasa Komputer (computer language)

Computer language merupakan bahasa yang digunakan untuk membuat program komputer.
Disebut bahasa karena computer language memiliki kosa kata dan tata bahasa yang harus ditaati
oleh pemakainya.

Yang termasuk dalam jenis ini adalah :

a. Low Level Language, merupakan bahasa tingkat rendah karena sulit dipahami dan hanya
dapat dimengerti oleh pembuatnya. Yang termasuk program ini adalah bahasa mesin
dan assembly language.

b. High Level Language, merupakan bahasa tingkat tinggi karena menggunakan kata-kata yang
mudah dimengerti. Contoh dari program ini adalah BASIC, PASCAL, FORTRAN, dan
sebagainya.
4) Program Aplikasi

Program aplikasi merupakan perangkat lunak siap pakai yang nantinya akan digunakan untuk
membantu melaksanakan pekerjaan penggunanya. Aplikasi ini disiapkan sesuai
kebutuhan. Program aplikasi dapat dibedakan lagi menjadi :

a) Word Processing

b) Desktop publishing

c) Program Spreadsheet

d) Database Management System

e) Graphics

f) Program Akuntansi

g) Program Statistik

h) Communication

i) Multimedia

j) Game

k) Antivirus

c. aplikasi perangkat lunak

Program Aplikasi ; program khusus untuk melakukan pekerjaan tertentu. program aplikasi dibuat
sesuai kebutuhan. misalnya ; GL dan MYOB yang digunakan untuk perhitungan dan pelaporan
akutansi serta PAYROLL yang digunakan untuk penerapan keuangan.

Program Paket ; Program khusus yang digunakan banyak orang dengan berbagai kepentingan.
program paket ini dikelompokkan menjadi 8, yaitu sebagai berikut.

Pengolah Kata ; contoh Ms-Word, Amipro, Wordstar, Wordperfect, ChiWriter dan lain
sebagainya.

Pengolah Angka ; contoh Lotus 123, Ms-Excel , Open Office Calc dan Quarto Pro.

Pengolah Data ; Dbase I – IV, Foxpro, Fox Base, Ms-Access.


Pembuat Presentasi ; contoh Ms-Powerpoint, MagicPoint, AppleWorks, Staroffice dan Corel
Presentation.

Pengolah Grafis ; contoh Corel Draw ( untuk Brosur, undangan atau denah), Adobe Photoshop
(mengolah foto digital), Autocad (Menangani rancang bangun misal untuk gedung dan mobil).

Pengolah Statistik ; contoh MicroStat dan SPSS

Multimedia ; contoh Winamp, XingPlayer, Windows Media Player dan Real Player.

Internet ; Internet Explorer dan Netscape navigator untuk Browser, Cute FTP, Go!Zilla untuk
transfer data di internet, Internet mail, Outlook untuk email, mIRC, Yahoo Messenger dan ICQ
untuk berbincang-bincang menggunakan teks langsung atau real time.

d. model perangkat lunak

1. Model Waterfall

Model Waterfall merupakan salah satu model untuk perencanaan dari sebuah Perangkat Lunak.
Model Waterfall adalah salah satu model klasik yang bersifat sistematis. Mengapa disebut
sistematis ? Karena model ini dikerjakan secara berurutan. Penggunaan model ini dalam
penerapan di kehidupan sehari-hari sangatlah memakan waktu dan sangat sedikit dipakai
membuat software. Namun model ini cocok untuk bisnis kecil.

2. Model Spiral

Model spiral (spiral model) adalah model pengembangan software dimana proses digambarkan
sebagai spiral. Setiap loop akan mewakili satu fase dari proses pembuatan/perancangan software.
Loop paling dalam berfokus pada kelayakan dari sistem, loop selanjutnya tentang definisi dari
kebutuhan, loop berikutnya berkaitan dengan desain sistem dan seterusnya

3. Model Incremental

Dalam model Incremental ini proses pengerjaan perangkat lunak akan dilakukan perbagian
sehingga bagian selanjutnya akan dikerjakan setelah bagian awal telah selesai dan selanjutnya
sampai menghasilkan perangkat lunak yang lengkap dengan semua fungsi yang diperlukan dan
pengerjaan perangkat lunak berakhir. Sebelum pengerjaan perangkat lunak akan dilakukan
perancangan arsitektur software sebagai kerangka dalam pengerjaan perbagian.

4. Model Evolusi

Model evolusi adalah sebuah model yang berulang-ulang. Model ini memiliki karakteristik yang
memungkinkan para programmer mengembangkan perangkat lunaknya menjadi semakin
lengkap di tiap versinya. Model ini diterapkan karena persyaratan (requierement) sering berubah
sehingga hasil akhir dari sebuah produk tidak akan realistis, dimana edisi komplit dari produk
tersebut mustahil dikeluarkan dikarenakan deadline market yang begitu ketat. Oleh karena itu
lebih baik mengeluarkan versi limited untuk memperkenalkannya terlebih dahulu dan
programmer dapat membuat model dari sebuah design untuk mengakomodasikan produk, yang
secara bertahap akan diselesaikan dari waktu ke waktu.

5. Model Prototype

Prototype merupakan salah satu metode pengembangan perangat lunak yang banyak digunakan.
Dengan metode prototyping ini pengembang dan pelanggan dapat saling berinteraksi selama
proses pembuatan sistem. Prototyping, dimulai dengan pengumpulan kebutuhan, mendefinisikan
objektif keseluruhan dari software, mengidentifikasikan segala kebutuhan, kemudian dilakukan
“perangcangan kilat” yang difokuskan pada penyajian aspek yang diperlukan.

6. Model V / V-Model.

Bisa dikatakan model ini merupakan perluasan dari model waterfall. Disebut sebagai perluasan
karena tahap-tahapnya mirip dengan yang terdapat dalam model waterfall. Jika dalam model
waterfall proses dijalankan secara linear, maka dalam model V proses dilakukan bercabang.
Dalam model V ini digambarkan hubungan antara tahap pengembangan software dengan tahap
pengujiannya.

7. Model Rapid Application Development (RAD)

Rapid Aplication Development (RAD) adalah sebuah model proses perkembanganperangkat


lunak sekuensial linier yang menekankan siklus perkembangan yang sangat pendek (kira-kira 60
sampai 90 hari). Model RAD ini merupakan sebuah adaptasi “kecepatan tinggi” dari model
sekuensial linier dimana perkembangan cepat dicapai dengan menggunakan pendekatan
konstruksi berbasis komponen.

3. Tanggung jawab profesional dan etika

Konfedensialitas
konfidensialitas adalah kewajiban untuk menyimpan informasi yang sifatnya sangat rahasia.
Setiap karyawan di dalam perusahaan, terutama yang memiliki akses ke rahasia perusahaan
seperti akuntan, bagian operasi, manajer, dan lain lain memiliki konsekuensi untuk tidak
membuka rahasia perusahaan kepada khalayak umum. Kewajiban ini tidak hanya dipegang oleh
karyawan tersebut selama ia masih bekerja disana, tetapi juga setelah karyawan tersebut tidak
bekerja di tempat itu lagi. Sangatlah tidak etis apabila seorang karyawan pindah ke perusahaan
baru dengan membawa rahasia perusahaannya yang lama agar ia mendapat gaji yang lebih besar.

- Kompetensi
Kompetensi adalah suatu kemampuan untuk melaksanakan atau melakukan suatu pekerjaan atau
tugas yang dilandasi atas ketrampilan dan pengetahuan serta didukung oleh sikap kerja yang
dituntut oleh pekerjaan tersebut .
- Hak property dan intelektual

Hak kekayaan materi semakin terbatas akibat dari tekanan sosial dan budaya yang dilaksanakan
sesuai dengan norma-norma sosial, dengan tujuan ke arah manfaat etis. Intelektual properti (IP)
masih dinyatakan secara pasti, melalui Trade Related Aspects of Intellectual Property Rights
(TRIPS) Agreement, bagian dari WTO / GATT Uruguay Round Agreements, dengan cara yang
umum. Kontribusi ini berharap pada penggunaan hak kekayaan intelektual, memberikan
perbedaan mendasar dengan hak harta benda, menimbulkan kesempatan untuk berlebihan seperti
sewa-mencari kesalahan alokasi yang mungkin telah dibuat dan terus dilakukan, sehingga
persepsi ketidakadilan fundamental intelektual hak milik seperti yang dilakukan di luar nilai-nilai
sosial, yaitu, dalam secara etika tidak bermanfaat .

4. Siklus hidup perangkat lunak (SDLC/software development life cycle)

pengembangan software adalah sebagai berikut :

a. Requirements Analysis ( Analisa Kebutuhan )

Tahap ini menganalisa masalah dan kebutuhan yang harus diselesaikan dengan sistem

komputer yang akan dibuat. Tahap ini berakhir dengan pembuatan laporan kelayakan yang

mengidentifikasi kebutuhan sistem yang baru dan merekomendasikan apakah kebutuhan atau

masalah tersebut dapat diselesaikan dengan sistem komputer yang ada.

b. System and Software Design ( Perancangan Sistem dan Software )

Tahap ini melakukan rancangan design sistem. Tahap ini memberikan rincian kinerja

program dan interaksi antara user dengan program tersebut.

c. Implementation ( Implementasi )

Tahap ini adalah spesifikasi design yang telah dibuat untuk diterjemahkan ke dalam

program / instruksi yang ditulis dalam bahasa pemrograman.

d. System Testing ( Pengujian Sistem )

Tahap ini semua program digabungkan dan diuji sebagai satu sistem yang lengkap

untuk menjamin sumua berkerja dan memenuhi kebutuhan penanganan masalah yang
dihadapi.

e. Operation and Maintenance ( Pengoperasian dan Pemeliharaan )

Tahap ini merupakan pengaplikasian program yang telah dibuat untuk digunakan

secara utuh dan masalah baru yang muncul sebagai bahan masukan untuk memperbaiki

sistem program yang baru.

Anda mungkin juga menyukai