• Tidak ada hasil yang ditemukan

PENDAHULUAN REKAYASA PERANGKAT LUNAK. By PresenterMedia.com

N/A
N/A
Protected

Academic year: 2022

Membagikan "PENDAHULUAN REKAYASA PERANGKAT LUNAK. By PresenterMedia.com"

Copied!
40
0
0

Teks penuh

(1)

PENDAHULUAN REKAYASA PERANGKAT

LUNAK

(2)

Hj.HUSNAYANTI I.K

HASLINDA

ARDIANSYAH

MIFTA FARID

MUHLIS TAHIR

ANDI LATIFA NABONE

ABD.MALIKUL MULKY

KELOMPOK 6

(3)

Memahami apa yang dimaksud dengan rekayasa perangkat lunak dan bagaimana arti pentingnya.

Mengetahui jawaban terhadap pertanyaan- pertanyaan kunci yang memberikan pemahaman awal mengenai rekayasa perangkat lunak.

Memahami isu ketika dan profesi yang penting untuk para perekayasa perangkat lunak.

TUJUAN

(4)

 FAQ mengenai perangkat lunak

 Tanggung jawab profesional dan etika

Materi

(5)

Ekonomi SEMUA negara maju adalah tergantung pada perangkat lunak.

Rekayasa perangkat lunak merupakan suatu disiplin ilmu yang bertujuan mengembangkan sistem perangkat lunak yang efektif dari segi biaya.

Rekayasa perangkat lunak yang bersangkutan dengan teori-teori, metode dan alat untuk perangkat lunak profesional pembangunan.

Perekayasa perangkat lunak berhak untuk berbangga atas keberhasilan mereka.

Rekayasa perangkat lunak telah berperan besar dalam waktu hidupnya yang singkat dan kita harus yakin bahwa, dengan matangnya disiplin ilmu.

Pendahuluan

(6)

Biaya perangkat lunak seringkali mendominasi sistem komputer biaya. Biaya perangkat lunak pada PC sering lebih besar dari biaya hardware.

Biaya Perangkat Lunak lebih untuk mempertahankan daripada yang dilakukannya untuk berkembang. Untuk sistem dengan umur panjang, biaya perawatan mungkin beberapa kali Biaya yang diperlukan untuk pengembangan.

Rekayasa perangkat lunak berkaitan dengan biaya pengembangan perangkat lunak yang efektif.

Biaya perangkat lunak

Pendahuluan

(7)

1. Apakah Perangkat Lunak?

2. Apakah Rekayasa Perangkat Lunak (RPL) ?

3. Apa perbedaan antara RPL dengan ilmu komputer (computer science) ?

4. Apa perbedaan RPL dan rekayasa sistem ?

5. Apa yang dimaksud dengan proses perangkat lunak ?

6. Apakah model proses perangkat lunak ?

7. Berapa biaya rekayasa perangkat lunak ?

8. Apa saja metode-metode RPL ?

9. Apa yang dimaksud dengan CASE (Computer-Aided Software Engineering) ?

10. Apakah atribut-atribut perangkat lunak yang baik ?

11. Apa tantangan kunci yang dihadapi RPL ?

FAQ Mengenai Rekayasa Perangkat Lunak

(8)

Perangkat Lunak (Software) tidak sama dengan program komputer. Perangkat lunak tidak hanya mencakup program, tetapi juga semua dokumentasi dan konfigurasi data yang berhubungan, yang diperlukan untuk membuat agar program beroperasi dengan benar.

Sistem Perangkat Lunak terdiri dari :

Sejumlah program yg terpisah

File-file konfigurasi

Dokumentasi sistem

Dokumentasi User

Apakah Perangkat Lunak Itu?

FAQ Mengenai Rekayasa Perangkat Lunak

(9)

Dua tipe produk perangkat lunak :

Produk Generik  Sistem stand-alone standar yg diproduksi oleh organisasi pengembang dan dijual ke pasar terbuka ke siapapun yg membelinya. Biasa disebut sebagai software shrink-wrapped. Contoh : pengolah kata (word processor).

Produk pesanan (yang disesuaikan)  Sistem yg dipesan oleh pelanggan tertentu. Dikembangkan khusus bagi pelanggan oleh kontraktor perangkat lunak. Contoh : Sistem untuk mendukung proses bisnis tertentu dan sistem kontrol lalu lintas udara.

Dua tipe produk perangkat lunak

FAQ Mengenai Rekayasa Perangkat Lunak

(10)

Pada produk generik, organisasi yang mengembangkan perangkat lunak mengontrol spesifikasi perangkat lunak.

Pada produk pesanan, spesifikasi biasanya dikembangkan dan dikontrol oleh organisasi yang membeli perangkat lunak tersebut.

Perbedaan PENTING antara tipe2 perangkat lunak :

FAQ Mengenai Rekayasa Perangkat Lunak

(11)

RPL atau Software Engineering (SE)  Disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal spesifikasi sistem sampai pemeliharaan sistem setelah digunakan. Ada 2 istilah kunci disini :

“disiplin rekayasa”  Perekayasa membuat suatu alat bekerja.

Menerapkan teori, metode, dan alat bantu yang sesuai, selain itu mereka menggunakannya dengan selektif dan selalu mencoba mencari solusi terhadap permasalahan.

“semua aspek produksi perangkat lunak”  RPL tidak hanya berhubungan dengan proses teknis dari pengembangan

perangkat lunak tetapi juga dengan kegiatan seperti Manajemen proyek PL dan pengembangan alat bantu, metode, dan teori

untuk mendukung produksi PL.

Apa Rekayasa Perangkat Lunak Itu?

FAQ Mengenai Rekayasa Perangkat Lunak

(12)

teori ilmu komputer masih cukup untuk bertindak sebagai fondasi yang lengkap untuk perangkat lunak rekayasa (seperti misalnya fisika dan teknisi listrik ).

Intinya, computer science berhubungan dengan teori dan metode yang mendasari sistem komputer dan perangkat lunak, sedangkan RPL berhubungan dengan praktek dalam memproduksi perangkat lunak.

Perbedaan antara RPL dengan Computer Science ?

FAQ Mengenai Rekayasa Perangkat Lunak

(13)

Rekayasa sistem berkaitan dengan semua aspek dalam pembangunan sistem berbasis komputer termasuk hardware, rekayasa PL dan proses. RPL adalah bagian dari rekayasa sistem yang meliputi pembangunan PL, infrasktruktur, kontrol, aplikasi dan database pada sistem.

Rekayasa sistem merupakan disiplin yang lebih tua dari rekayasa perangkat lunak

Perbedaan RPL dengan Rekayasa Sistem ?

FAQ Mengenai Rekayasa Perangkat Lunak

(14)

Serangkaian kegiatan dan hasil-hasil relevannya yang menghasilkan perangkat lunak  sebagian besar

dilakukan oleh perekayasa perangkat lunak. Ada 4 kegiatan/aktivitas pada proses PL :

1. Spesifikikasi Perangkat Lunak  Fungsionalitas perangkat lunak dan batasan kemampuan operasinya harus didefinisikan.

2. Pengembangan Perangkat Lunak  Perangkat lunak yang memenuhi spesifikasi harus di produksi

3. Validasi Perangkat Lunak  Perangkat lunak harus divalidasi untuk menjamin bahwa perangkat lunak melakukan apa yang diinginkan oleh pelanggan.

4. Evolusi Perangkat Lunak  Perangkat lunak harus berkembang untuk memenuhi kebutuhan pelanggan.

Apa yang dimaksud dengan proses perangkat lunak?

FAQ Mengenai Rekayasa Perangkat Lunak

(15)

Proses perangkat lunak yang berbeda mengatur kegiatan ini dengan cara yang berbeda dan dijelaskan dengan tingkat kerincian yang berbeda pula.

Waktu kegiatan bervariasi, sebagaimana hasilnya

Pengaturan yang berbeda dapat menggunakan proses yang berbeda untuk menghasilkan produk yang sama.

Tapi untuk beberapa jenis aplikasi tertentu, beberapa proses lebih sesuai dari yang lainnya, jika digunakan proses yang tidak sesuai maka kualitas kegunaan produk perangkat lunak yang akan dikembangkan tersebut mungkin akan berkurang.

Apa yang dimaksud dengan proses perangkat lunak?

FAQ Mengenai Rekayasa Perangkat Lunak

(16)

Merupakan deskripsi yang disederhanakan dari proses perangkat lunak di presentasikan dengan sudut pandang tertentu.

Bisa mencakup kegiatan yang merupakan bagian dari proses perangkat lunak, produk perangkat lunak, dan peran orang yang terlibat pada rekayasa perangkat lunak (Perekayasa PL).

Model Proses Perangkat Lunak

FAQ Mengenai Rekayasa Perangkat Lunak

(17)

1.

Model aliran kerja (workflow)  menunjukkan kegiatan pada proses bersama dengan input, output, dan ketergantungannya. Merepresentasikan pekerjaan manusia.

2.

Model aliran data (data flow) merepresentasikan proses sebagai suatu set kegiatan yang melakukan transformasi data. Menunjukkan bagaimana input ke proses, misalnya spesifikasi ditransformasi menjadi output, misalnya menjadi desain.

3.

Model peran/aksi  merepresentasikan peran orang yang terlibat pada PL dan kegiatan yg menjadi tanggung jawab mereka.

Contoh Jenis Model Proses PL

FAQ Mengenai Rekayasa Perangkat Lunak

(18)

1. Model air terjun (waterfall)  Mengambil kegiatan dasar seperti spesifikasi, pengembangan, validasi, dan evolusi dan merepresentasikannya sebagai fase-fase proses yang berbeda seperti spesifikasi persyaratan, perancangan perangkat lunak, implementasi, pengujian dan seterusnya.

2. Pengembangan evolusioner  Pendekatan ini berhimpitan dengan kegiatan spesifikasi, pengembangan, dan validasi.

Sistem awal dikembangkan dengan cepat dari spesifikasi abstrak. Sistem ini kemudian di perbaiki dengan masukan dari pelanggan untuk menghasilkan sistem yang memuaskan kebutuhan pelanggan.

Contoh Jenis Model Proses PL

FAQ Mengenai Rekayasa Perangkat Lunak

(19)

3.

Pengembangan Sistem Formal  Pendekatan ini menghasilkan suatu sistem matematis yang formal dan mentransformasikan spesifikasi ini, dengan menggunakan metode matematik menjadi sebuah program.

4.

Pengembangan berdasarkan pemakaian ulang (Reusable)  Teknik ini menganggap bahwa bagian-bagian sistem sudah ada.

Proses pengembangan sistem terfokus pada pengintegrasian bagian-bagian sistem dan bukan pengembangannya dari awal.

FAQ Mengenai Rekayasa Perangkat Lunak

FAQ Mengenai Rekayasa Perangkat Lunak

(20)

Umumnya sekitar 60% untuk biaya pengembangan (development) dan 40% biaya pengujian (testing).

Distribusi biaya yang tepat selama proses perangkat lunak bergantung pada proses yang digunakan dan jenis perangkat lunak yang dikembangkan.

Biaya Rekayasa Perangkat Lunak

FAQ Mengenai Rekayasa Perangkat Lunak

(21)

Biaya Rekayasa Perangkat Lunak

FAQ Mengenai Rekayasa Perangkat Lunak

(22)

Pada gambar diatas perangkat lunak dikembangkan dengan menggunkan pendekatan evolusioner, maka tidak ada batasan yang jelas antara spesifikasi,perancangan, dan pengembangan.

Harus dilakukan modifikasi untuk jenis pengembangan ini agar biaya spesifikasi dikurangi karena hanya spesifikasi tingkat tinggi yang dihasilkan sebelum pengembangan denga pendekatan ini.

Spesifikasi, perancangan, implemntasi, integrasi dan pengujian dilakukan secara pararel dalam kegiatan pengembangan

Biaya Rekayasa Perangkat Lunak

FAQ Mengenai Rekayasa Perangkat Lunak

(23)

Biaya Rekayasa Perangkat Lunak/Biaya Pengembangan Produk

FAQ Mengenai Rekayasa Perangkat Lunak

(24)

Pendekatan-pendekatan terstruktur terhadap pengembangan perangkat lunak mencakup model, notasi, aturan, saran

pengembangan sistem (rekomendasi), dan panduan proses.

Deskripsi model sistem  Deskripsi model yang harus

dikembangkan dan notasi yang digunakan untuk mendefinisikan model-model ini. Ex : model aliran data.

Aturan  Batasan yang berlaku bagi model sistem. Ex : Setiap entitas pada model sistem harus memiliki nama yang unik.

Rekomendasi  Saran dalam membentuk perancangan yang

baik. Ex : Tidak ada objek yang memiliki lebih dari tujuh sub-objek yang berhubungan dengannya.

Panduan Proses  Aktifitas yang bisa diikuti untuk

mengembangkan model sistem. Ex : Atribut objek harus didokumentasi sebelum mendefinisikan operasi yang berhubungan dengan objek.

Metode-metode RPL

FAQ Mengenai Rekayasa Perangkat Lunak

(25)

Mencakup berbagai macam program yang digunakan untuk mendukung kegiatan PL seperti analisis persyaratan, pemodelan sistem, debugging, dan pengujian.

CASE (Computer-Aided Software Engineering)

•FAQ Mengenai Rekayasa Perangkat Lunak

(26)

Perangkat Lunak seharusnya memberikan user kebutuhan fungsionalitas dan kinerja yang :

1. Dapat dipelihara (Maintanability)  PL harus dapat memenuhi perubahan kebutuhan user.

2. Dapat diandalkan (Dependability) PL harus dapat dipercaya dan tidak menyebabkan kerusakan fisik atau ekonomi jika terjadi kegagalan sistem.

3. Efisien  PL harus efisien dalam penggunaan sumber daya sistem.

4. Kemampuan pemakaian (Usability) PL harus dapat dipakai sesuai dengan yang direncanakan.

atribut perangkat lunak yang bagus yang bagus

FAQ Mengenai Rekayasa Perangkat Lunak

(27)

1. Tantangan Warisan (Legacy)  Tantangan memelihara dan meng-update PL sedemikian sehingga biaya yg berlebihan dapat dihindari dan layanan bisnis yg penting tetap

dilakukan.

2. Tantangan Heterogenitas  Tantangan teknik

pengembangan untuk membangun perangkat lunak yang dapat diandalkan dan cukup flexibel untuk menghadapi heterogenitas yang ada.

3. Tantangan Pengiriman  Tantangan mempersingkat waktu kirim sistem besar dan kompleks, tanpa mengurangi kualitas sistem.

Tantangan Kunci yang dihadapi RPL ?

FAQ Mengenai Rekayasa Perangkat Lunak

(28)

Software engineering melibatkan lebih luas tanggung jawab dari sekedar penerapan keterampilan teknis.

Para Perancang Perangkat Lunak harus berperilaku jujur dan etis cara yang bertanggung jawab jika mereka harus dihormati sebagai profesional.

Perilaku etis lebih dari sekedar menegakkan hukum.

Tanggung Jawab Profesional dan Etika

(29)

Konfidensialitas

Engineers biasanya harus menghormati kerahasiaan dari majikan mereka atau klien terlepas dari apakah atau tidak perjanjian kerahasiaan formal telah ditandatangani.

Kompetensi

Perekayasa tidak boleh menggambarkan tingkat mereka kompetensi. Mereka seharusnya tidak sengaja menerima pekerjaan yang melebihi kompetensi mereka.

Isu tanggung jawab profesional

Tanggung Jawab Profesional dan Etika

(30)

Hak properti intelektual

Insinyur harus menyadari hukum setempat yang mengatur penggunaan kekayaan intelektual seperti paten, hak cipta, dll Mereka harus berhati-hati untuk memastikan bahwa kekayaan intelektual majikan dan klien dilindungi.

Komputer penyalahgunaan

insinyur Perangkat lunak tidak harus menggunakan

keterampilan teknis mereka untuk penyalahgunaan komputer orang lain. Komputer penyalahgunaan berkisar dari yang relatif sepele (bermain game pada komputer atasan ) sampai yang

sangat serius (penyebaran virus).

Isu tanggung jawab profesional

Tanggung Jawab Profesional dan Etika

(31)

Masyarakat profesional di AS bekerja sama untuk menghasilkan sebuah kode praktek yang etis.

Anggota organisasi ini mendaftar ke kode praktek ketika mereka ingin bergabung.

Kode berisi delapan Prinsip-prinsip yang terkait dengan perilaku dan keputusan yang dibuat oleh profesional perangkat lunak

insinyur, termasuk praktisi, pendidik, manajer, supervisor dan kebijakan pembuat, serta trainee dan mahasiswa

profesi.

ACM / IEEE Kode Etik

Tanggung Jawab Profesional dan Etika

(32)

Mukadimah

Versi pendek kode merangkum aspirasi pada tinggi tingkat abstraksi tersebut; ayat-ayat yang termasuk dalam penuh versi memberikan contoh dan rincian tentang bagaimana aspirasi mengubah cara kita bertindak sebagai profesional rekayasa perangkat lunak. Tanpa aspirasi, rincian bisa menjadi legalistik dan membosankan, tanpa rincian, aspirasi dapat menjadi tinggi terdengar tapi kosong; bersama-sama, aspirasi dan rincian membentuk kode kohesif

Kode etik dan praktek profesional rekayasa perangkat lunak.

Tanggung Jawab Profesional dan Etika

(33)

Perekayasa Perangkat Lunak harus berkomitmen untuk membuat analisis, spesifikasi, desain, pengembangan, pengujian dan pemeliharaan perangkat lunak dan dihormati sebagai profesi menguntungkan. Sesuai dengan komitmen mereka untuk keselamatan, kesehatan dan kesejahteraan masyarakat, insinyur perangkat lunak harus mematuhi Delapan Prinsip berikut:

Kode etik dan praktek profesional rekayasa perangkat lunak.

Tanggung Jawab Profesional dan Etika

(34)

PUBLIK

insinyur Perangkat Lunak harus bertindak konsisten dengan publik bunga.

KLIEN DAN KERJA

Perekayasa Perangkat Lunak harus bertindak dengan cara yang ada di terbaik kepentingan klien mereka dan majikan yang

konsisten dengan publik bunga.

PRODUK

Perekayasa Perangkat Lunak harus memastikan bahwa mereka produk dan terkait modifikasi memenuhi standar profesional tertinggi mungkin.

Prinsip Kode Etik

Tanggung Jawab Profesional dan Etika

(35)

PENGHAKIMAN

Perekayasa Perangkat Lunak harus mempertahankan integritas dan kemandirian dalam penilaian profesional mereka.

MANAJEMEN

Manajer dan pemimpin Software engineering harus berlangganan dan mempromosikan pendekatan etis dengan pengelolaan pengembangan perangkat lunak dan pemeliharaan.

PROFESI

Perekayasa Perangkat Lunak memajukan integritas dan reputasi profesi konsisten dengan kepentingan publik.

Prinsip Kode Etik

Tanggung Jawab Profesional dan Etika

(36)

KOLEGA

Perangkat Lunak harus bersikap adil dan mendukung terhadap kolega mereka.

DIRI

Perangkat Lunak harus berpartisipasi dalam seumur hidup mengenai tentang praktek profesi mereka dan akan mempromosikan pendekatan etis untuk mempraktekkan profesi.

Prinsip Kode Etik

Tanggung Jawab Profesional dan Etika

(37)

Ketidaksepakatan pada prinsipnya dengan kebijakan senior manajemen.

Atasan harus bertindak dengan cara yang tidak etis dan melepaskan-kritis sistem keamanan tanpa finishing pengujian sistem.

Partisipasi dalam pengembangan militer sistem atau sistem senjata nuklir merupakan dilema terbesar.

Dilema Etika

Tanggung Jawab Profesional dan Etika

(38)

Software engineering adalah disiplin ilmu yang terkait dengan semua aspek produksi perangkat lunak.

Produk perangkat lunak terdiri dari program yang dikembangkan dan dokumentasi yang relevan. Atribut yang penting adalah perawatan, kehandalan, efisiensi dan kegunaan.

Proses perangkat lunak terdiri dari kegiatan-kegiatan yang terlibat dalam produk perangkat lunak . Dasar kegiatan adalah perangkat lunak spesifikasi, pengembangan, validasi dan evolusi.

Metode adalah cara memproduksi perangkat lunak. Metode mencakup usulan untuk proses yang akan diikuti, notasi yang akan digunakan, peraturan yang mengatur sistem deskripsi yang dihasilkan dan pedoman desain.

Hal-Hal Penting

(39)

CASE tools adalah perangkat lunak sistem yang dirancang untuk mendukung kegiatan rutin pada proses perangkat lunak seperti pengeditan desain diagram, pemeriksaan konsistensi diagram dan melacak program tes yang telah dijalankan.

Perekayasa Perangkat Lunak memiliki tanggung jawab terhadap profesi rekayasa dan masyarakat. Mereka seharusnya tidak hanya peduli dengan masalah teknis.

Masyarakat Profesional mempublikasikan kode etik yang ditetapkan dari standar perilaku yang diharapkan dari mereka anggota.

Hal-Hal Penting (2)

(40)

Terima Kasih

Referensi

Dokumen terkait

Pada penelitian ini bertujuan untuk mempelajari pengaruh dari corrosion fatigue pada sambungan las SMAW baja API 5L Grade X65 yang dicelup dalam larutan HCl

Begitu pula dengan hasil observasi siswa menunjukkan adanya peningkatan pada tanggung jawab, kerjasama dan kedisiplinan saat pembelajaran dengan memperoleh nilai

Kadar glukosa darah rata-rata tikus sehat, tikus hasil induksi MLD-STZ dan tikus hasil terapi herbal spray Spirulina sp.. Perlakuan Rata-rata Glukosa

diberikan sesuai dengan kebutuhan menjelaskan pada indikator ini didominasi oleh 42 responden atau 70% menyatakan setuju dengan pernyataan bahwa pelayanan yang

tanaman , pengendalian dilakukan dengan cara pengaplikasian herbisida yang dapat membunuh gulma dengan cara disemprotkan menggunakan sprayer yang dilakukan di sekitar tanaman yaitu

Dilution ventilation umumnya sangat baik untuk mengendalilkan beban panas, sering kali dilution ventilation dapat digunakan dan berhasil dengan baik untuk mengendalikan uap bahan

Apakah FACR secara parsial memiliki pengaruh negatif yang signifikan terhadap ROA pada Bank Umum Swasta Nasional Go

The first two steps include the retrieval of the policy-related data from a third party (e.g. a social network or a business collaboration tool) and the generation of a