1.
Latar belakang munculnya disiplin
software engineering ?
Jawaban :
Memasuki tahun 1960-an ketika era
komputer dimulai, Software telah menjadi salah satu bagian penting dalam
teknologi informasi dan digunakan di semua disiplin ilmu teknologi informasi.
Perangkat lunak atau piranti lunak adalah program komputer
yang berfungsi sebagai sarana interaksi antara pengguna dan perangkat keras.
Perangkat lunak dapat juga dikatakan sebagai 'penterjemah' perintah-perintah
yang dijalankan pengguna komputer untuk diteruskan ke atau diproses oleh
perangkat keras. Perangkat lunak ini dibagi menjadi 3 tingkatan: tingkatan
program aplikasi (application program misalnya Microsoft Office), tingkatan
sistem operasi (operating system misalnya Microsoft Windows), dan tingkatan
bahasa pemrograman (yang dibagi lagi atas bahasa pemrograman tingkat tinggi
seperti Pascal dan bahasa pemrograman tingkat rendah yaitu bahasa rakitan).
Perangkat lunak adalah program komputer yang isi
instruksinya dapat diubah dengan mudah. Perangkat lunak umumnya digunakan untuk
mengontrol perangkat keras (yang sering disebut sebagai device driver),
melakukan proses perhitungan, berinteraksi dengan perangkat lunak yang lebih
mendasar lainnya (seperti sistem operasi, dan bahasa pemrograman), dan
lain-lain. Biasanya, istilah Sistem Operasi sering ditujukan kepada semua
software yang masuk.
a. Latar belakang Disiplin Software engineering
Faktor-faktor yang melatarbelakangi
munculnya Disiplin Software engineering :
1.
Ketidakmampuan
organisasi memprediksi waktu, usaha dan biaya untuk membangun perangkat lunak
2.
Perubahan
nisbah/rasio beaya perangkat keras thd harga perangkat lunak
3.
Kemajuan
pesat perangkat keras
4.
Kemajuan
dalam teknik-teknik pembuatan perangkat lunak
5.
Tuntutan
yang lebih tinggi thd jumlah perangkat lunak
6.
Tuntutan
yang lebih tinggi thd mutu perangkat lunak
7.
Meningkatnya
peran pemeliharaan
2. Jelaskan definisi dari software
engineering ?
Jawaban
:
Definisi Software Engineering
Ilmu yang mempelajari tehnik pembuatan software yang baik
dengan pendekatan tehnik (Engineering approach)
Beberapa definisi tentang rekayasa perangkat lunak :
• Pembentukan dan penggunaan prinsip rekayasa
(engineering) untuk mendapatkan perangkat lunak secara ekonomis namun andal dan
dapat bekerja secara efesien pada komputer (Fritz Bauer, 1968).
• Penerapan pendekatan yang sistematis, disiplin, dan
terukur untuk pengembangan, operasi, dan pemeliharaan perangkat lunak (IEEE,
1993).
• Suatu disiplin yang mengintegrasikan proses/prosedur, metode, dan perangkat tools untuk pembangunan perangkat lunak komputer (Pressman, 97).
3. Apa yang disebut dengan software
engineering yang berkualitas ?
Jawaban
:
Berdasarkan definisi di atas
terlihat bahwa sebuah software dikatakan berkualitas apabila memenuhi tiga ketentuan pokok:
1.
Memenuhi
kebutuhan pemakai – yang berarti bahwa jika software
tidak dapat memenuhi kebutuhan pengguna software tersebut, maka yang
bersangkutan dikatakan tidak atau kurang memiliki kualitas.
2.
Memenuhi
standar pengembangan software –
yang berarti bahwa jika cara pengembangan software tidak mengikuti metodologi
standar, maka hampir dapat dipastikan bahwa kualitas yang
baik akan sulit atau tidak tercapai; dan
3.
Memenuhi
sejumlah kriteria implisit – yang
berarti bahwa jika salah satu kriteria implicit
tersebut tidak dapat dipenuhi, maka software yang
bersangkutan tidak dapat dikatakan memiliki kualitas yang baik
Disini saya akan memaparkan sedikit
mengenai ciri-ciri software yang berkualitas menurut McCall. McCall
mendefinisikan ada 11 faktor yang mempengaruhi kualitas dari sebuah software,
yaitu:
1.
Portability
2.
Reusability
3.
Interoperability
4.
Correctness
5.
Reliability
6.
Efficiency
7.
Integrity
8.
Usability
9.
Testability
10.
Flexibility
11.
Maintability
4. Jelaskan
bagaimana cara mengukur kualitas software ?
Jawaban
:
Teknik pengukuran besar software
dengan cara menghitung baris kode program yang ada Relatif terhadap bahasa/tool
pemrograman dan gaya pengkodean programer Tidak bisa ditentukan sebelum proyek
pengembangan menyelesaikan tahapan implementasi.
LANGKAH
1: MENGHITUNG CRUDE FUNCTION POINTS
(CFP) Perhitungan CFP melibatkan 5 tipe komponen sistem software berikut :
1.Jumlah macam aplikasi input 2.Jumlah macam aplikasi output 3.Jumlah macam
aplikasi query online (aplikasi ini berhubungan dengan query terhadap data yang
tersimpan).
LANGKAH
2 : MENGHITUNG FAKTOR PENGUBAH
KOMPLEKSITAS RELATIF/RELATIVE COMPLEXITY ADJUSTMENT FACTOR (RCAF). RCAF
berfungsi untuk menghitung kesimpulan kompleksitas dari sistem software dari
beberapa subyek karakteristik.
LANGKAH
3 : MENGHITUNG FUNCTION POINT (FP)
Nilai function point untuk sistem software tersebut kemudian dihitung
berdasarkan hasil dari tahap 1 dan 2 yang dimasukkan ke dalam formula: FP = CFP
x (0.65 + 0.01 x RCAF) KELEBIHAN METODE FUNCTION PONIT Perkiraan dapat
disiapkan pada tahap pra-proyek dan oleh karena itu maka manajemen dapat
didukung dalam usaha persiapan proyek.
1. Jelaskan
dengan bahasa sendiri apa yang di maksud dengan software ?
Jawaban
:
Software
adalah sebuah aplikasi perangkat lunak yang berfungsi sebagai sarana
interaksi antara pengguna dan perangkat
keras yang sangat dibutuhkan fungsinya untuk mengefektifikan kinerja computer.
2. Jelaskan
jenis-jenis software ?
Jawaban
:
Menurut jenisnya, software dapat dibedakan menjadi beberapa
bagian diantaranya adalah sebagai berikut :
A. Freeware
Freeware (perangkat
lunak gratis) adalah perangkat lunak komputer yang memiliki hak cipta yang
gratis dan dapat digunakan tanpa batasan waktu, berbeda dengan shareware
yang mewajibkan pemakainya membayar (misalnya setelah jangka waktu percobaan
tertentu atau untuk memperoleh fitur tambahan). Para pengembang freeware biasanya
membuat perangkat gratis "untuk disumbangkan kepada komunitas", namun
juga tetap ingin mempertahankan hak mereka sebagai pengembang dan memiliki
kontrol terhadap pengembangan aplikasi selanjutnya. terkadang jika para
pengembang aplikasi memutuskan untuk berhenti mengembangkan sebuah produk freeware,
mereka akan memberikan source code (kode sumbernya) kepada pengembang
lain atau mengedarkan kode sumber tersebut kepada umum sebagai perangkat lunak
bebas yang bisa dikembangkan secara bersama-sama.
B.
Shareware
Shareware
adalah perangkat lunak yang disediakan untuk pengguna tanpa membayar secara uji
coba dan sering di batasi oleh kombinasi dari fungsi, ketersedian, atau
kenyamanan. Jadi maklum saja kalo anda menggunakan aplikasi ini tidak bisa
memanfaatkannya secara maksimal, karena aplikasi yang shareware
sebenarnya adalah aplikasi ujicoba.
Shareware
sering ditawarkan sebagai aplikasi
unduhan dari sebuah situs web yang disertai dengan sebuah bacaan seperti koran
atau majalah. Alasan di balik perangkat lunak Shareware adalah
memeberikan pembeli kesempatan untuk mencoba menggunakan program sebelum
membeli lisensi untuk versi lengkap dari perangkat lunak kongsi tersebut. Ini
juga dipakai sebagai strategi marketing pengembang aplikasi shareware. Makanya shareware
juga biasa disebut dengan Trialware.
C. Firmware
Firmware adalah
aplikasi yang mengacu kepada perangkat lunak yang disimpan di dalam Memori Read
Only (hanya baca). Tidak seperti memori akses acak, Firmware tidak
akan dapat berubah meski tidak dialiri listrik. Rutin-rutin yang mampu
menyalakan komputer (startup) serta instruksi input/output dasar
(semacam BIOS atau sistem operasi embedded) disimpan di dalam Firmware.
Modifikasi memang masih bisa dilakukan, akan tetapi hal tersebut tergantung
dari jenis ROM (Read Only Memory) yang digunakan. Firmware yang
disimpan dalam ROM tidak dapat diubah, tetapi Firmware yang disimpan
dalam ROM yang dapat diubah semacam EEPROM atau Flash ROM, masih dapat diubah
sesuai dengan kebutuhan.
D. Commercial Software
Commercial Software
(software berbayar) adalah perangkat lunak yang disalurkan atau dibuat untuk
tujuan komersil, setiap pengguna yang ingin menggunakan atau mendapatkan
software tersebut dengan cara membeli atau membayar pada pihak yang
mendistribusikannya, bisa langsung kepada developers (pengembang)
software, atau kepada rekanan dari pengembang software tersebut. pengguna yang
menggunakan software berbayar biasanya tidak dilegalkan untuk menyebarluaskan
atau membagikan ulang software yang sudah dibeli lisensinya secara bebas tanpa
ijin dari penerbitnya. Contoh software berbayar ini misalnya adalah Microsoft
Visual Basic NET, Adobe Photoshop, Corel Draw dan masih
banyak lagi yang lainnya. Commercial Software juga dilindungi
oleh undang-undang hak cipta, dan untuk mendapatkannya kita harus membeli.
Software ini dilarang keras untuk diperbanyak (secara ilegal pastinya).
E. Free Software
Free Software
(perangkat lunak bebas) adalah istilah yang diciptakan oleh Richard Stallman
dan Free Software Foundation (organisasi nirlaba dan merupakan
sponsor utama dari proyek GNU) yang mengacu kepada perangkat lunak yang bebas
untuk digunakan, dipelajari dan diubah serta dapat disalin dengan atau tanpa
modifikasi, atau dengan beberapa keharusan untuk memastikan bahwa kebebasan
yang sama tetap dapat dinikmati oleh pengguna-pengguna berikutnya. Bebas di
sini juga berarti dalam menggunakan, mempelajari, mengubah, menyalin atau
menjual sebuah perangkat lunak, seseorang tidak perlu meminta izin dari siapa
pun. Dengan kata lain Anda bisa mengutak atik sesuka hati.
Untuk dapat menjadikan free software sebagai
perangkat lunak bebas, perangkat lunak tersebut biasanya harus memiliki sebuah
lisensi, atau berada dalam domain publik dan menyediakan akses ke kode
sumbernya bagi setiap orang. Gerakan perangkat lunak bebas (free software
movement) pertama kali dikembangkan pada tahun 1983, yang bertujuan untuk
memberikan pada setiap pengguna komputer.
Dengan konsep kebebasan ini, setiap orang bebas untuk
menjual perangkat lunak bebas, menggunakannya secara komersial dan mengambil
untung dari distribusi dan modifikasi kode sumbernya. Walaupun demikian setiap
orang yang memiliki salinan dari sebuah free software dapat pula
menyebarluaskan perangkat lunak bebas tersebut secara
Perangkat lunak bebas (free software) jangan
disalahartikan dengan perangkat lunak gratis (freeware) yaitu perangkat
lunak yang digunakan secara gratis. Perangkat lunak gratis dapat berupa
perangkat lunak bebas atau perangkat lunak tak bebas. Sejak akhir tahun
1990-an, beberapa alternatif istilah untuk perangkat lunak bebas mulai muncul
seperti "perangkat lunak sumber terbuka" (open-source software),
"software libre", "FLOSS", dan "FOSS".
Saat ini, umumnya perangkat lunak bebas tersedia secara
gratis dan dibangun atau dikembangkan oleh suatu komunitas terbuka. Para
anggota komunitas tersebut biasanya bersifat sukarela tetapi dapat juga
merupakan karyawan suatu perusahaan yang memang dibayar untuk membantu
mengembangkan perangkat lunak tersebut.
Untuk memudahkan pemahaman mengenai perbedaan antara freeware
(perangkat lunak gratis) dengan free software (perangkat lunak
bebas), Richard Stallman selaku pendiri gerakan perangkat lunak bebas
memberikan penjelasan sebagai berikut.
Perangkat lunak bebas adalah perihal kebebasan, bukan harga.
Untuk mengerti konsepnya, Anda harus memikirkan kata 'bebas' seperti dalam
"kebebasan berpendapat", bukan 'bebas' dalam arti "bir
gratis".
F. Open Source Software
Open Source Software (perangkat lunak sumber terbuka) adalah jenis perangkat
lunak yang kode sumbernya terbuka untuk dipelajari, dikembangkan, diubah,
ditingkatkan dan disebarluaskan. Karena sifat ini, umumnya pengembangannya
dilakukan oleh satu komunitas terbuka yang bertujuan mengembangkan perangkat
lunak bersangkutan. Anggota-anggota paguyuban itu seringkali sukarela tapi bisa
juga pegawai suatu perusahaan yang dibayar untuk membantu pengembangan
perangkat lunak itu. Produk perangkat lunak yang dihasilkan ini biasanya bersifat
bebas dengan tetap menganut kaidah dan etika tertentu.
G. Malware
Malware (perangkat
perusak) berasal dari gabungan kata malicious dan software adalah
perangkat lunak yang diciptakan untuk menyusup atau merusak sistem komputer, peladen atau jejaring komputer tanpa izin termaklum (informed
consent) dari pemilik. Istilah ini adalah istilah umum yang dipakai oleh
pakar komputer untuk mengartikan berbagai macam perangkat lunak atau kode
perangkat lunak yang mengganggu atau mengusik. Istilah virus computer kadang-kadang
dipakai sebagai frasa pemikat (catch phrase) untuk mencakup semua jenis
perangkat perusak, termasuk virus murni (true virus).
Perangkat lunak dianggap sebagai malware berdasarkan
maksud yang terlihat dari pencipta dan bukan berdasarkan ciri-ciri tertentu.
Perangkat perusak mencakup virus komputer, cacing komputer, kuda Troya (Trojan
horse), rootkit, perangkat pengintai (spyware), perangkat
iklan (adware), perangkat jahat (crimeware) dan perangkat lunak
lainnya yang berniat jahat dan tidak diinginkan. Menurut undang-undang,
perangkat perusak kadang-kadang dikenali sebagai ‘pencemar komputer’, hal ini
tertera dalam kode undang-undang di beberapa negara bagian Amerika Serikat,
termasuk California dan West Virginia.
Perangkat perusak tidak sama dengan perangkat lunak cacat (defective
software), yaitu, perangkat lunak yang mempunyai tujuan sah tetapi berisi
kutu (bug) yang berbahaya.
3. Jelaskan
karakteristik dari software yang membuat berbeda dengan produk hardware ?
Jawaban
:
Karakteristik Software Secara Umum
·
Software merupakan elemen sistem
logika dan bukan elemen sistem fisik seperti hardware
·
Elemen itu tidak aus, tetapi bisa
rusak.
·
Elemen software itu direkayasa atau
dikembangkan dan bukan dibuat di pabrik seperti hardware.
•
3. PT ABC meminta jasa anda untuk membangun
sebuah situs portal untuk perusahaan PT ABC tersebut
•
Anda menggunakan CMS opensource bernama
Wordpress untuk engine dari situs portal yang dibuat
•
Kemudian anda mengembangkan beberapa
plugin yang sesuai dengan business process yang diinginkan oleh perusahaan
tersebut. Sehingga akhirnya berhasil dibangun sebuah situs portal perusahaan
yang lengkap dan sesuai dengan keinginan perusahan tersebut
•
Anda mengirimkan invoice tagihan untuk
perusahaan PT ABC sebesar Rp. 100 juta untuk biaya pembangunan situs portal
tersebut
•
Apakah yang saya lakukan ini sah dan
diperbolehkan?
Jawaban :
Menurut saya Sah dan diperbolehkan, Mengapa
demikian, karna disini kita membantu suatu perusahaan untuk membuat situs
portal yang di inginkan sama seperti kita menjual jasa kita yang dipakai untuk
membangun sebuah situs portal untuk perusahaan PT ABC membuat sebuah situs portal dengan menggunakan
CMS open source,
Nah apa itu CMS ? CMS merupakan
Singkatan dari Content Management System
adalah sebuah aplikasi web atau software
web yang tujuannya untuk memudahkan dalam pengelolaan (upload, edit, menambahkan,
dll) web.
Dalam membuat situs portal menggunakan CMS open source bernama wordpress dengan
menggunakan bahasa pemograman php dan data base. Dengan cukup mudah digunakan,
sedehana dan gratis tanpa biaya. Tetapi
dalam membuat situs portal tidak segampang yang kita bayangkan, dalam membuat
suatu aplikasi yang sangat penting dan membutuhkan waktu dan tenaga untuk
menyelesaikan sebuah situs portal dalam suatu perusahaan terutama PT ABC.
Karena sebuah perusahaan atau individu, biasanya
memiliki berbagai macam informasi yang ingin ditampilkan dalam sebuah tempat
yang terintegrasi. Di dalam membuat situs portal selain menggunakan CMS
open source dan wordpress ada juga tambahan dengan mengembangkan Plugin yang sesuai dengan business
process yang diinginkan oleh perusahaan. Disini plugin adalah aplikasi yang
berukuran kecil yang ditanam ke aplikasi lain yang lebih besar, dan
diintegrasikan dengan wordpress untuk memberikan fungsi-fungsi lain yang belum
tersedia pada instalasi standar dengan mengembangkan plugin dapat mengurangi
ukuran aplikasi wordpress dan mendukung fitur yang belum terlihat oleh para
pengguna wordpress dalam membuat situs portal untuk PT ABC.
Komentar ini telah dihapus oleh pengarang.
BalasHapusterimakasih... atas artikelnya sangat bermanfaat
BalasHapusMy blog