Penggunaan teknologi di kehidupan sehari-hari menyebabkan meningkatknya tingkat adaptasi perusahaan dalam menciptakan versi digital dari produk mereka dalam bentuk aplikasi, website, dan software. Dalam proses digitalisasi ini, salah satu tahapan terpenting adalah software engineering. Show Apa itu software engineering? Mari kita bahas lebih lanjut! Pengertian Software Engineeringgambar: unsplash.com/@heylagostechieDikutip dari Institute of Electrical and Electronics Engineers/IEEE (1993), pengertian software engineering adalah suatu pendekatan teknologi secara sistematis, terstruktur dan disiplin. Meski pada dasarnya merupakan salah satu cabang ilmu komputer guna mengetahui sesuatu yang salah terhadap sebuah perangkat lunak, kini fungsinya melebar lebih luas lagi. Rekayasa perangkat lunak dibutuhkan tak cuma ketika ditemukan kesalahan pengoperasian semata, namun lebih kepada bagaimana sebuah perangkat lunak bekerja sesuai dengan apa yang menjadi kebutuhan end-user atau penggunanya. Tak seperti hardware yang dibuat di pabrik, elemen software bersifat logis. Elemen software juga tidak bisa aus seperti hardware, namun peluang untuk rusak cukup besar. Sehingga, software lebih menekankan pada rekayasa dan pengembangan. Baca juga: Rekomendasi Software Antivirus Terbaik untuk PC Windows Kamu Hal-Hal Penting dalam Software EngineeringAdapun software engineering akan memperlihatkan bagaimana sebuah aplikasi produk atau jasa mempermudah penggunaan oleh end-user dan apa saja fitur-fitur yang ditawarkan kepada penggunanya. Berikut ini adalah hal-hal yang harus diperhatikan. Setelah proses analisis dilakukan, kamu akan mengetahui apakah sebuah aplikasi bekerja sebagaimana mestinya, mulai dari budget, efisiensi, ketepatan, fungsi, ketergantungan dan yang tak kalah penting adalah keamanan. Transisi penting ketika suatu aplikasi digeser dari satu platform ke platform lainnya. Jadi, portabilitas, kegunaan dan adaptabilitas ada di area ini. Ini berfungsi untuk mengetahui bagaimana sebuah aplikasi bekerja setelah adanya pemutakhiran atau pembaruan (update). Aspek-aspek penting yang perlu diperhatikan pasca analisis adalah modularitas, perawatan, fleksibilitas dan skalabilitas. Baca juga: Kelebihan dan Kekurangan Menggunakan Open Source Software Metode yang Dapat Digunakan Software EngineerAdapun metode software engineering dibagi menjadi lima jenis, yaitu metode sekuensial linier, RAD, prototipe, spiral dan 4GT. Dari lima metode tersebut, model 4GT memiliki keuntungan lebih dari segi waktu. Hanya saja, kekurangannya terletak pada alat bantunya, sebab cuma bisa digunakan untuk aplikasi tertentu saja. Kemampuan analisis yang mendalam harus dimiliki oleh pengembang perangkat lunak (software developer) untuk mendapatkan tak cuma apa yang diinginkan oleh stakeholder, melainkan juga memuaskan penggunanya (end-user). Maka, tugas software engineer adalah memegang peran penting dalam menghasilkan aplikasi atau perangkat lunak yang berkualitas. Baca juga: Bagaimana Website Dapat Diserang Malware? Penjelasan Tentang SDLCSebelum dilakukan rekayasa perangkat lunak, wajib diperhatikan beberapa langkah penting mulai dari perencanaan, pengembangan (coding dan testing) dan pemeliharaan (maintenance). Namun demikian, ada tahapan yang tak kalah penting yang dinamakan Software Development Lifecycle (SDLC). SDLC adalah rangkaian tahapan dalam rekayasa perangkat lunak yang bertujuan untuk mengembangkan perangkat lunak yang diusulkan, yaitu communication, requirement gathering, studi kelayakan, sistem analisis, desain software, integrasi, implementasi dan disposisi. Coding dan testing juga masuk dalam kriteria SDLC ini, namun selayaknya dua hal tersebut sudah dilakukan lebih awal. Baca Juga: Apa Itu React Native? Pengujian perangkat lunak dilakukan saat pengkodean oleh pengembang dan pengujian menyeluruh yang dilakukan oleh ahli pengujian di berbagai tingkat kode seperti pengujian modul, pengujian program, pengujian produk, pengujian internal dan pengujian produk atas keterlibatan dan umpan balik pengguna. Software engineering adalah hal penting yang wajib dipelajari agar mimpi menjadi seorang software developer bisa diwujudkan dengan segera. Jangan lupa, selalu percayakan layanan hosting Indonesia kepada Dewaweb yang sudah terbukti mampu menjaga kecepatan loading website dan keamanan data-data yang ada sehingga kamu tidak perlu takut kehilangan traffic yang dimiliki.
TUGAS II OBJECT ORIENTED PROGRAM Nama : Anita Megayanti NIM : 332208595 Kelas : Cilegon PENJELASAN PROGRAM Untuk maksud dari koding sudah dijelaskan dalam Source Program. Pada Program Perpustakaan ini terdapat 3 kelas : 1. Kelas Inputkeyboard Kelas ini untuk mendefinisikan agar bisa input dari keyboard dan menghasilkan standart output dari keyboard. Dan dibuat terlebih dahulu 2. Kelas Perpustakaan v Mendefinisikan No & Nama Anggota Perpustakaan v Jika Anggota perpustakaan maka akan mengexecute kelas Pinjam v Hasil Run Program dapat dilihat pada kelas Perpustakaan 3. Kelas Pinjam v Bisa Memilih apa saja yang akan dipinjam, terdapat pilihan uratan meminjam – Jika memilih angka 1 berarti urutan Peminjaman Kamus, Majalah lalu Buku ü Bila Kamus tidak ditemukan maka dianggap tidak meminjam ü Bila Majalah tidak ditemukan maka dianggap tidak meminjam ü Bila Buku tidak ditemukan maka dianggap tidak meminjam – Jika memilih angka 2 berarti urutan Majalah dan Buku ü Dianggapnya Kamus tidak pernah dipinjam ü Bila Majalah tidak ditemukan maka dianggap tidak meminjam ü Bila Buku tidak ditemukan maka dianggap tidak meminjam – Jika memilih angka 3 berarti urutan hanya Buku ü Dianggapnya Kamus tidak pernah dipinjam ü Dianggapnya Majalah tidak pernah dipinjam ü Bila Buku tidak ditemukan maka dianggap tidak meminjam v Setelah dilakukan pemilihan buku maka akan melanjutka membaca kelas Biaya Peminjaman 4. Kelas Biaya Peminjaman Menghitung Biaya peminjaman dan denda bilamana terlambat mengembalikan Kelas InputKeyboardimport java.io.*; public class InputKeyboard{ public static String inputString(){ //** Mendefiniskan Type Variable ( termasuk dalam Lokal Variable ) int karakter; String str =””; boolean selesai = false; //** Looping akan dikerjakan bila kondisi belum selesai while(!selesai){ //** Kondisi akan dikerjakan bila belum selesai try{ karakter = System.in.read(); //** Membaca Input dari keyboard //** Jika inputan kosong dan baris baru maka akan keluar dari looping if(karakter < 0 || (char) karakter == ‘\n’) selesai = true; //** Jika inputan tidak ada lagi maka dianggap spasi else if ((char) karakter != ‘\r’) str = str + (char) karakter; }catch(java.io.IOException e){ System.err.println(“Ada kesalahan”); selesai = true; // **Selesai }} return str; }} Kelas Perpustakaan //** Membuat Kelas Perpustakaan public class Perpustakaan{ public static void main(String[] args) { //** Mendefinisikan Variabel ( i & EntryNo ) termasuk Kedalam Lokal Variable int i = 0; String EntryNo; System.out.print(“Masukan Nomor Anggota Perpustakaan : ” ); //Input dari keyboard no anggota ke dalam variable Entry No EntryNo = InputKeyboard.inputString(); //**Mengkonversi Data Input Keyboard String Menjadi Double double Nomor = Double.valueOf(EntryNo).doubleValue(); //**Nomor Lokal Variable //** Menggunakan Pernyataan LOOPING (pengulangan proses) bila kondisi < 5 akan diproses while (i<5) { //** Bila kondisi terpenuhi //**Daftar Anggota Perpustakaan //Membuat Nomor Anggota Perpustakaan double[] NoAnggota = {332207595, 332201234, 332209888, 332209777, 332209997 }; //Membuat Nama Anggota Perpustakaan String[] NamaAnggota = {“Anita Megayanti”,”Ratna Sari”, “Dewi Putri”, “Novi Hotimah”, “Zakiyatun Nupus”}; //***Menggunakan Pernyataan IF-Else //** Cek Apakah sudah mempunyai nomor anggota if (Nomor == NoAnggota[i] ) { //Menampilkan Nama Anggota bila sesuai dengan no anggota System.out.println(“Nama Anggota : ” + NamaAnggota[i] ); i = 6; // Memberi nilai variabel dengan tujuan keluar dari Looping //Membuat Object yang dilink dengan kelas Pinjam Pinjam Perpusku = new Pinjam(); //Membaca Method PilihPinjman yang berada pada object Perpusku Perpusku.PilihPinjaman(); } else { i++; //Menambah nilai variable i } }}} Kelas Pinjam//** Membuat Kelas Peminjaman class Pinjam { static int Kms, Mjlh, Bk; // Mendeklarasikan variabel sebagai Class Variabel static int n = 0,m = 0, i = 0; void PilihPinjaman() { //Membuat Method Input Pilihan Pinjaman //** Mendefinisikan Variabel ( n & EntryBuku ) termasuk Kedalam Lokal Variable String EntryBuku, Pilih, EntryKamus, Entrymajalah; System.out.print(“Pilihlah Urutan [1] Kamus [2] Majalah [3] Buku : ” ); //** Input melalui keyboard yang disimpan dalam bentuk karakter dengan nama variabel Pilih Pilih = InputKeyboard.inputString(); //**Mengkonversi Data Input Keyboard String Menjadi Integer int Pilihan = Integer.valueOf(Pilih).intValue(); //**Nomor Lokal Variable //**Menggunakan PernyataanSWITCH yang bertujuan untuk memilih salah satu kondisi yang //**terpenuhi dijalankan switch(Pilihan){ case 1: //** Untuk Inputan yang menekan 1 dengan Pilihan KAMUS //** Perintah dibawah ini akan diexecute System.out.println(“Kamus Kode ( 1, 2 & 3 )” ); System.out.print(“Masukan Kode Kamus : ” ); //***Menerima inputan dari keyboard dibaca sebagai karakter dengan nama variable //Entry Kamus EntryKamus = InputKeyboard.inputString(); //**Mengkonversi Data Input Keyboard String Menjadi Integer int Kode = Integer.valueOf(EntryKamus).intValue(); //**kode pendefinisian Lokal Variable //**Penggunakan Pernyataan WHILE difungsikan untuk Pengulangan while (n<3) { //** Kondisi n terpenuhi menjalankan perintah dibawah ini //***Katalog Kamus yang tersedia diperpustakaan int[] kodekamus = {1,2,3}; //** Definisi Variabel Array String[][] Kamus = {{“Kamus Bahasa “},{“Inggris”,”Jepang”, “Mandarin”}};//** Definisi Variabel Multiarray //** Cek kondisi Apakah Kamus Yang dipinjam Tersedia if ( Kode == kodekamus[n] ) { //****Jika Kondisi tersebut terpenuhi System.out.print(“Judul Kamus : ” ) ; //***Menampilkan Judul Kamus Tersebut System.out.println(Kamus[0][0]+Kamus[1][n]); Kms = 1; //** Variable yang digunakan bahwa Kamus telah dipinjam n = 4; //** memberikan nilai variabel n supaya keluar dari Looping }else{ //** Jika kondisi tidak terpenuhi akan melakukan looping //**Mengkondisikan bilamana dicek semua buku tidak dimiliki perpustakaan if ( n == 2 ) { //**Menampilkan Message bila kamus tidak tersedia System.out.println(“Kamus Yang dimaksud Tidak Ada” ) ; } n++; //**Ekspresi menambahkan variabel n } } case 2: //** Untuk Inputan yang menekan 2 dengan Pilihan MAJALAH //** Perintah dibawah ini akan diexecute System.out.println(“Majalah Kode ( 1, 2, 3 )” ); System.out.print(“Masukan Kode Majalah : ” ); //***Menerima inputan dari keyboard dibaca sebagai karakter yang disimpan dlm variable Entry Majalah Entrymajalah = InputKeyboard.inputString(); //**Mengkonversi Data Input Keyboard String Menjadi Integer int Kodemajalah = Integer.valueOf(Entrymajalah).intValue(); //**Nomor Lokal Variable //**Penggunakan Pernyataan WHILE difungsikan untuk Pengulangan while (m<3) { //****Kondisi m Terpenuhi menjalankan perintah dibawah ini //***Katalog Majalah yang tersedia diperpustakaan int[] kdmajalah = {1,2,3}; //** Definisi Variabel Array String[][] Majalah = {{“Majalah “},{“Nova”,”Sabili”, “Ummi”}}; //** Definisi Variabel Multiarray //** Cek kondisi Apakah Kamus Yang dipinjam Tersedia if ( Kodemajalah == kdmajalah[m] ) { //****Jika Kondisi tersebut terpenuhi jalankan perintah dibawah ini System.out.print(“Judul Majalah : ” ) ; //***Menampilkan Judul Majalah Tersebut System.out.println(Majalah[0][0]+Majalah[1][m]); Mjlh = 1; //** Variable yang digunakan bahwa Majalah telah dipinjam m = 4; //** memberikan nilai variabel m supaya keluar dari Looping }else{ //** Jika kondisi tidak terpenuhi akan melakukan looping //**Mengkondisikan bilamana dicek semua buku tidak dimiliki perpustakaan if ( m == 2 ) { System.out.println(“Majalah Yang dimaksud Tidak Ada” ) ; } m++; //Ekspresi menambahkan variabel m } } case 3: //** Untuk Inputan yang menekan 3 dengan Pilihan BUKU //** Perintah dibawah ini akan diexecute System.out.println(“Buku Kode ( 1, 2, 3, 4 ) ” ); System.out.print(“Masukan Kode Buku : ” ); //***Menerima inputan dari keyboard dibaca sebagai karakter dan disimpan dlm varible EntryBuku EntryBuku = InputKeyboard.inputString(); |