Masalah Perangkat Lunak - PowerPoint PPT Presentation

1 / 64
About This Presentation
Title:

Masalah Perangkat Lunak

Description:

Masalah Perangkat Lunak Proses Perangkat Lunak Antonius Wahyu Sudrajat, S. Kom., M.T.I. wayoe_at_stmik-mdp.net, wahyue79_at_gmail.com Rekayasa Perangkat Lunak Rekayasa ... – PowerPoint PPT presentation

Number of Views:1197
Avg rating:3.0/5.0
Slides: 65
Provided by: mdpAcIdm
Category:

less

Transcript and Presenter's Notes

Title: Masalah Perangkat Lunak


1
  • Masalah Perangkat Lunak
  • Proses Perangkat Lunak

2
Perangkat lunak (software)
  • Perangkat lunak (software) komputer adalah suatu
    perangkat yang berisi serangkaian instruksi,
    program, prosedur, pengendali, pendukung, dan
    aktifitas-aktifitas pengolahan perintah pada
    sistem komputer. Jadi software merupakan komponen
    abstrak dari susunan sistem komputer. Tanpa
    software, komputer adalah rongsokan elektronik,
    jadi komputer adalah susunan atas hardware dan
    software yang saling bekerjasama. Hardware
    komputer akan hidup dan memiliki fungsi jika
    digunakan bersama-sama dengan software-nya.
  • Secara umum fungsi dari software komputer yang
    utama adalah
  • Melakukan aktifitas bersama-sama dengan hardware
  • Menyediakan segala sumber daya yang bisa
    digunakan pada sebuah komputer
  • Bertindak sebagai perantara antara pengguna
    (user) dengan perangkat keras (hardware) untuk
    melakukan aktifitas dengan perintah yang harus
    dilakukan dalam software komputer.

3
Struktur Software Komputer
Mengelola dan mendukung operasi sistem komputer
dan jaringan
  • Software Suites
  • Web Browser
  • Electronic Mail
  • Pengolah Kata
  • Lembar Kerja
  • Database Managers
  • Presentasi Grafis
  • Personal Information Manager
  • GroupWare
  • - Bisnis Akuntansi, pengolah transaksi,
    Perencanaan sumber daya perusahaan, perdagangan
    elektronik, dll
  • - Ilmu pengetahuan dan teknik
  • Pendidikan, Entertainment, dll
  • Sistem Operasi
  • Program pengelola jaringan
  • DBMS (database management system)
  • Sistem Utilitas
  • Monitoring Unjuk kerja Sistem
  • Monitoring Keamanan
  • Bahasa Program Translator (compiler)
  • Pemrograman Editor dan Tools
  • Paket CASE (Computer Aided Software Engineering)

4
Tujuan Rekayasa Perangkat Lunak
  • Diharapkan setelah mempelajari materi ini
    mahasiswa dapat mengetahui dan memahami
  • Bagaimana melakukan rekayasa terhadap sebuah
    perangkat lunak.
  • Siklus kehidupan perangkat lunak.
  • Analisa kebutuhan untuk mengembangkan suatu
    perangkat lunak.
  • Merancang suatu perangkat lunak sesuai life
    cycle.
  • Mengintegrasikan perangkat lunak yang akan/telah
    dibuat.
  • Melakukan pengujian dan debugging terhadap
    perangkat lunak.

5
Beli langsung
Generik
Beli Modifikasi
Kebutuhan
Perangkat lunak
Sumber daya sendiri
Menyerahkan ke pihak lain
Pesanan
Sewa SDM
6
Definisi Rekayasa Perangkat Lunak
  • RPL secara umum disepakati dari terjemahan
    Software Engineering yang mulai populer tahun
    1968 pada Software Engineering Conference oleh
    NATO.
  • pengertian RPL sendiri yaitu disiplin ilmu yang
    membahas seluruh aspek produksi perangkat lunak
    dari tahap analisa kebutuhan user, menentukan
    spesifikasi kebutuhan user, disain pengkodean,
    pengujian, hingga kepemeliharaan sistem setelah
    dipakai.
  • jadi jelas RPL bukan hanya pembuatan tapi juga
    semua aspek dalam pembuatan suatu software.

7
  • Tahapan Pengembangan Sistem secara umum
  • Perencanaan
  • Analisis
  • Perancangan
  • Implementasi
  • pemeliharaan
  • Aspek produksi perangkat lunak dari
  • Tahap analisa kebutuhan user,
  • Menentukan spesifikasi kebutuhan user,
  • Disain pengkodean,
  • Pengujian , hingga
  • Pemeliharaan

8
(No Transcript)
9
System Development Proses
  1. Peningkatan keuntungan perusahaan
  2. Pengurangan biaya bisnis
  3. Biaya dan keuntungan sistem
  4. Peningkatan pangsa pasar
  5. Perbaikan relasi pelanggan
  6. Peningkatan efisiensi
  7. Perbaikan pembuatan keputusan
  8. Pemenuhan peraturan lebih baik
  9. Kesalahan lebih sedikit
  10. Perbaikan keamanan
  11. Kapasitas lebih besar
  • Libatkan Pengguna Sistem
  • Gunakan Pendekatan Pemecahan Masalah
  • Bentuklah Fase dan Aktivitas
  • Dokumentasikan Sepanjang Pengembangan
  • Bentuklah Estándar
  • Kelola Proses dan Proyek
  • Membenarkan System Informasi sebagai Investasi
    Modal
  • Jangan Takut untuk Membatalkan atau Merevisi
    Lingkup
  • Bagilah dan Takhlukkan
  • Desainlah Sistem untuk Pertumbuhan dan Perubahan

10
Perkembangan Pengembangan Perangkat Lunak
Indonesia
11
Temuan Survey Global
  • Temuan 1 Negara dengan pertumbuhan TI yang
    cepat memiliki pertumbuhan ekonomi yang cepat
    pula.
  • Temuan 2 Sektor TI tumbuh melalui pengeluaran
    di bidang software dan layanan TI
  • Untuk itu Pertumbuhan industri software lokal
    akan mendorong tidak hanya pasar TI tapi juga
    pertumbuhan ekonomi yang lebih baik

12
Perkembangan Industri TI di Indonesia
2001 Indonesia Singapore Malaysia India China
Revenue ( Juta) (Growth) 903 3.228 (46,72 ) 2.137 (32,91 ) 4.778 (111,69 ) 19.567 (312,80 )
of GDP 0,6 3,68 2,4 0,96 1,67
IT Companies 5.023 3.777 5.431 16.530 42.842
IT Employees 113.017 87.285 141.610 561.357 1.736.831
Source dari IDC
Pertumbuhan TI di Indonesia sungguh sangat
tertinggal Dibandingkan dengan hasil yang
dicapai di negara Tetangga
13
Perkembangan Industri TI di Indonesia
2005 Indonesia Singapore Malaysia India China
Revenue ( Juta) Growth 1.720 (90,47 ) 5.226 (61,89 ) 3.739 (74,96 ) 12.025 (151,67 ) 50.520 (158,18 )
of GDP 0,7 4,74 3,36 1,89 2,91
IT Companies 7.141 4.874 7.374 26.648 71.954
IT Employees 164.250 129.220 224.967 1.181.735 3.742.964
Source dari IDC
Apakah kita dapat mencapai hasil yang LEBIH BAIK
lagi ? Dengan IKLIM USAHA yang lebih baik dapat
dicapai hasil yang lebih baik
14
(No Transcript)
15
(No Transcript)
16
Jumlah pengembang software maupun penyedia
layanan TI yang masuk dalam keanggotaan ASPILUKI
kini ada 218 perusahaan. Sebagian besar bermain
di sektor software perbankan dan jasa keuangan.
Hal ini dapat dimaklumi mengingat belanja TI
tertinggi masih dipegang sektor perbankan dan
jasa keuangan, disusul sektor pemerintahan,
manufaktur, pertambangan, serta minyak dan gas.
Perusahaan di sektor perbankan dan jasa keuangan
masih mendominasi belanja telematika 2011 yang
diperkirakan mencapai US 9 miliar lebih atau
sekitar Rp 82,7 triliun.
17
(No Transcript)
18
Dari segi sumber daya manusia, Indonesia tidak
kalah bersaing dengan luar negeri. Sebuah survei
yang diadakan pada 2009 mengenai kualitas teknisi
Indonesia, kualitas SDM Indonesia ada peringkat
14 dari 50 negara. Sedangkan dari segi harga,
Indonesia termasuk paling kompetitif, peringkat
dua setelah Vietnam. Namun dari sisi lingkungan
bisnis, terlempar di peringkat 49. Kalau melihat
kualitas dari dunia akademis sebenarnya juga
sudah cukup baik. Sayangnya kualitas yang cukup
baik itu tidak dibarengi dengan kuantitas SDM.
Setiap tahunnya ada 115 ribu orang lulusan
teknik, namun hanya 35 ribu orang yang bisa
disebut lulusan teknologi informatika. Angka
tersebut jauh dibandingkan dengan China yang
mampu mencetak 600 ribu orang lulusan teknik
informatika tiap tahunnya. India sekitar 350 ribu
orang dan AS dalam kisaran 70 ribu.
19
Tantangan Perkembangan Industri Software Indonesia
  • Pembajakan Berdasarkan Direktur Pemasaran BSA (
    Bussines Software Alliance ) mengatakan sebanyak
    84 dari 100 komputer diperkirakan software
    bajakan.
  • Keterbatasan pengetahuan dalam software
    development.
  • Kurangnya ide dalam produk dan inovasi.
  • Kurangnya keterlibatan pemerintah untuk
    melindungi pengembang software lokal.
  • Keterbatasan modal usaha.

20
REKAYASA PERANGKAT LUNAK
  • 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.

21
REKAYASA PERANGKAT LUNAK
  • Rekayasa perangkat lunak (software engineering)
    adalah suatu proses rancang bangun. 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).
  • Merupakan aplikasi dari prinsip-prinsip sains
    untuk
  • Mengurutkan transformasi masalah menjadi solusi
    yang dapat bekerja dengan baik
  • Urutan pemeliharaan perangkat lunak tersebut
    sampai tidak dapat digunakan lagi (Alan M. Davis)
  • Proses RPL dimulai jauh sebelum Coding
    dilakukan dan berlanjut terus setelah versi awal
    dari program selesai dikerjakan.

22
Sejarah Pekayasa Perangkat Lunak
Sejarah masuknya mata kuliah Rekayasa Perangkat
Lunak ke perguruan tinggi dikarenakan telah
terjadinya krisis Perangkat Lunak pada tahun
1960-an. Hal ini dipicu oleh banyaknya kegagalan
produksi Perangkat Lunak sehingga anggaran dana
pun semakin menipis dan faktor lainnya. Selain
itu, pada masa itu juga Rekayasa Perangkat Lunak
hanya menjadi konsumsi bagi kalangan bisnis dan
cuma berkembang di kalangan bisnis (jalan di
tempat). Untuk itulah diadakan pertemuan dan
akhirnya dimasukkanlah Rekayasa Perangkat Lunak
di perguruan tinggi sebagai mata kuliah dengan
harapan akan berkembang di masa mendatang. 
Kinerja
Biaya
Waktu
23
MENGAPA RPL?
  • Perangkat lunak dibuat supaya bisa digunakan
    (oleh pemakai) untuk membantu menyelesaikan
    masalah/ pekerjaan.
  • Perangkat lunak digunakan oleh pemakai di
    lingkungan operasional dengan teknologi tertentu
    sebagai bagian dari sistem yang lebih besar.
  • Perangkat lunak yang dibuat harus memenuhi apa
    yang diinginkan oleh pemakai (bukan yang
    diinginkan developer), ekonomis (memberikan
    keuntungan bagi developer), dan andal (dapat
    digunakan dalam jangka waktu yang lama).

24
KAPAN RPL ?
  • Ukuran perangkat lunak besar
  • Cakupan atau ruang lingkup persoalan luas dan
    dalam.
  • Kompleksitas masalah dan tingkat kekritisan
    tinggi.
  • Melibatkan banyak personal pelaksana.
  • Waktu dan anggaran pengembangan terbatas.

25
MANFAAT RPL
  • Perangkat lunak yang dihasilkan sesuai dengan
    kebutuhan yang diinginkan.
  • Perangkat lunak dapat digunakan dan beroperasi
    dengan benar di lingkungan sebenarnya.
  • Perangkat lunak memberikan manfaat bagi pemakai
    yang menggunakannya.
  • Biaya yang dikeluarkan untuk membuatnya rendah
    (efisien), efektif dan sesuai dengan anggaran
    yang telah ditetapkan.
  • Tepat waktu, baik saat pembuatan, penyerahan ke
    pemakai, maupun instalasinya.
  • Setiap tahap pekerjaan terjamin kualitasnya,
    terdokumentasi, dan dapat dipertanggungjawabkan
    kebenarannya (ada proses verifikasi dan validasi).

26
Perbedaan Rekayasa Perangkat Lunak dan Ilmu
Komputer
  • Ilmu Komputer berhubungan dengan teori dan metode
    yang mendasari sistem komputer dan perangkat
    lunak. Teori ini merupakan suatu model fisik dan
    analitik untuk menyelesaikan kasus yang spesifik.
  • Rekayasa Perangkat Lunak berhubungan dengan
    masalah-masalah praktis untuk menghasilkan suatu
    perangkat lunak. Pendekatan dilakukan dengan
    model bisnis dan strategi bisnis suatu perangkat
    lunak.

27
Perbedaan Rekayasa Perangkat Lunak dan Rekayasa
Sistem
  • Rekayasa Sistem berhubungan dengan semua aspek
    pengembangan sistem berbasis komputer, termasuk
    perangkat keras, perangkat lunak dan rekayasa
    proses.
  • Rekayasa Perangkat Lunak adalah bagian dari
    Rekayasa Sistem

28
Proses Perangkat Lunak
  • Proses perangkat lunak adalah serangkaian
    kegiatan yang tujuannya untuk mengembangkan atau
    evolusi perangkat lunak.
  • Kegiatan-kegiatan tersebut adalah
  • Spesifikasi perangkat lunak,
  • Pengembangan perangkat lunak,
  • Validasi perangkat lunak,
  • Evolusi perangkat lunak

29
Perkembangan Software
  • Generasi Awal
  • Batch orientation
  • Custom software
  • Generasi Kedua
  • Multi-user, Real-time
  • Database
  • Product software
  • Generasi Ketiga
  • Distributed systems
  • Low cost hardware
  • Generasi Keempat
  • Desktop systems
  • Object Oriented Technologies
  • Expert Systems
  • AI, neural networks
  • Parallel computing
  • Network computers

30
System Development Proses
  1. Peningkatan keuntungan perusahaan
  2. Pengurangan biaya bisnis
  3. Biaya dan keuntungan sistem
  4. Peningkatan pangsa pasar
  5. Perbaikan relasi pelanggan
  6. Peningkatan efisiensi
  7. Perbaikan pembuatan keputusan
  8. Pemenuhan peraturan lebih baik
  9. Kesalahan lebih sedikit
  10. Perbaikan keamanan
  11. Kapasitas lebih besar
  • Libatkan Pengguna Sistem
  • Gunakan Pendekatan Pemecahan Masalah
  • Bentuklah Fase dan Aktivitas
  • Dokumentasikan Sepanjang Pengembangan
  • Bentuklah Estándar
  • Kelola Proses dan Proyek
  • Membenarkan System Informasi sebagai Investasi
    Modal
  • Jangan Takut untuk Membatalkan atau Merevisi
    Lingkup
  • Bagilah dan Takhlukkan
  • Desainlah Sistem untuk Pertumbuhan dan Perubahan

31
Model Pengembangan Sistem
  • Model proses perangkat lunak adalah representasi
    yang disederhanakan dari proses perangkat lunak
    yang dipresentasikan dari sudut pandang tertentu
  • Paradigma pengembangan model sistem
  • Waterfall Development Model
  • Evolutionary Development Model
  • Spiral Development Model
  • Incremental Development Model

32
Tujuan Rekayasa Perangkat Lunak
  • Meningkatkan keakuratan, performance efficiency
    produk secara keseluruhan dalam pengembangan
  • Menerapkan metodologi yang terdefinisi dengan
    baik untuk resolusi software

33
TUJUAN REKAYASA PERANGKAT LUNAK
  • Memperoleh biaya produksi software yang rendah
  • menghasilkan software berkinerja tinggi, handal
    dan tepat waktu
  • menghasilkan software yang dapat bekerja pada
    berbagai platform
  • menghasilkan software dengan biaya perawatan
    rendah

34
Tujuan dari RPL
  • Menghasilkan sebuah perangkat lunak yang
    berkualitas. Yang dimaksud dengan berkualitas
    dapat dilihat dari tiga sisi, sisi sponsor
    (individu atau organisasi yang telah mengeluarkan
    biaya dalam pembangunan perangkat lunak), sisi
    pemakai (siapapun yang menggunakan perangkat
    lunak tersebut), sisi maintainer / modifier (yang
    memelihara dan memodifikasi perangkat lunak
    tersebut).
  • Tujuan kedua dari RPL adalah menghasilkan
    perangkat lunak dengan biaya yang efisien.
  • Sedangkan tujuan ketiga dari RPL adalah
    menghasilkan perangkat lunak tepat pada waktunya.

35
RUANG LINGKUP REKAYASA PERANGKAT LUNAK
  • Software requirements berhubungan dengan
    spesifikasi kebutuhan dan persyaratan perangkat
    lunak.
  • Software design mencakup proses penentuan
    arsitektur, komponen, antarmuka, dan
    karakteristik lain dari perangkat lunak.
  • Software construction berhubungan dengan detil
    pengembangan perangkat lunak, termasuk algoritma,
    pengkodean, pengujian, dan pencarian kesalahan.
  • Software testing meliputi pengujian pada
    keseluruhan perilaku perangkat lunak.
  • Software maintenance mencakup upaya-upaya
    perawatan ketika perangkat lunak telah
    dioperasikan.

36
RUANG LINGKUP REKAYASA PERANGKAT LUNAK
  • - Software configuration management berhubungan
    dengan usaha perubahan konfigurasi perangkat
    lunak untuk memenuhi kebutuhan tertentu.
  • - Software engineering management berkaitan
    dengan pengelolaan dan pengukuran RPL, termasuk
    perencanaan proyek perangkat lunak.
  • - Software engineering tools and methods mencakup
    kajian teoritis tentang alat bantu dan metode
    RPL.
  • - Software engineering process berhubungan dengan
    definisi, implementasi, pengukuran, pengelolaan,
    perubahan dan perbaikan proses RPL.
  • - Software quality menitikberatkan pada kualitas
    dan daur hidup perangkat lunak.

37
Perkembangan Gaya Komputasi
38
PERKEMBANGAN REKAYASA PERANGKAT LUNAK (RPL)
  • 1940anKomputer pertama yang membolehkan pengguna
    menulis kode program langsung
  • 1950anGenerasi awal interpreter dan bahasa macro
    Generasi pertama compiler Generasi kedua compiler
  • 1960anKomputer mainframe mulai dikomersialkan
    Pengembangan perangkat lunak pesanan Konsep
    Software Engineering mulai digunakan

39
PERKEMBANGAN REKAYASA PERANGKAT LUNAK (RPL)
  • 1970anPerangkat pengembang perangkat lunak
    Perangkat minicomputer komersial
  • 1980anPerangkat Komputer Personal (PC) komersial
    Peningkatan permintaan perangkat lunak
  • 1990anPemrograman berorientasi obyek (OOP) Agile
    Process dan Extreme Programming Peningkatan
    drastis kapasitas memori Peningkatan penggunaan
    internet
  • 2000anPlatform interpreter modern (Java, .Net,
    PHP, dll)Outsourcing

40
Permasalahan Perangkat Lunak
41
Problem dalam Pembuatan Software
  • Tidak memiliki waktu yang cukup dalam
    mengumpulkan data pada proses pembuatan perangkat
    lunak.
  • Ketidakpuasan user pada S/W yang dibuat
  • Kualitas S/W terkadang meragukan.
  • Sulit dalam memaintenance S/W sekarang

42
Problem Solving
COMPUTER SCIENCE
CUSTOMER
Fungsi Computer
Teori
Problem
SOFTWARE ENGINEERING
Tools dan Teknik utk Menyelesaikan Problem
43
Ongoing Problems (Masalah yang terus menerus ada)
  • Kemajuan perangkat keras melebihi kemampuan
    membuat software
  • Kemampuan membangun program baru tidak dapat
    memenuhi permintaan program-program baru, begitu
    juga kecepatan membangun program tidak dapat
    mnegikuti kebutuhan bisnis dan pasar
  • Penyebaran penggunaan computer telah membuat
    kebergantungan masyarakat thdp komputer
  • Tantangan untuk membangun software dengan
    reliability quality yang tinggi
  • Kemampuan men-support dan meningkatkan program
    terancam oleh design yang buruk dan keterbatasan
    sumberdaya

44
Persyaratan Perangkat Lunak
  • Perangkat lunak harus memberikan bantuan dalam
    merepresentasikan dan mengakses file-file
    eksternal yang dibuat dengan alat bantu lain.
  • Persyaratan Fungsional dan Non-Fungsional
  • Persyaratan User
  • Persyaratan Sistem
  • Dokumentasi Persyaratan Perangkat Lunak

45
Persyaratan Fungsional dan Non-Fungsional
  • Persyaratan Fungsional Pernyataan layanan
    tentang bagaimana sistem harus bereaksi terhadap
    input, sistem harus berlaku pada situasi-situasi
    tertentu. Secara khusus menyatakan apa yang tidak
    boleh dilakukan sistem.
  • Persyaratan Non Fungsional Pernyataan tentang
    batasan layanan dan fungsi yang diberikan sistem.
  • Persyaratan Domain Persyaratan yang datang dari
    domain aplikasi sistem dan merefleksikan
    karakteristik domain tersebut

46
Persyaratan Non Fungsional
  • Persyaratan Produk persyaratan yang diambil dari
    spesifikasi produk, seperti persyaratan hardware
    untuk mendukung kinerja.
  • Persyaratan Organisasi persyaratan yang berasal
    dari kebijakan dan prosedur pada organisasi.
  • Persyaratan Eksternal Persyaratan yang berasal
    dari faktor eksternal terhadap sistem dan proses
    pengembangannya.

47
Ukuran Persyaratan Non Fungsional
  • Kecepatan dalam Transaksi yang diproses/detik,
    waktu tanggal user/event atau waktu refresh layar
  • Ukuran dalam KB atau jumlah Chip RAM
  • Kemudahan penggunaan dalam waktu pelatihan atau
    jumlah frame help
  • Kehandalan dalam waktu rata-rata kegagalan,
    probabilitas ketidaksediaan, kecepatan terjadinya
    kegagalan, atau ketersediaan
  • Ketahanan dalam waktu start ulang setelah
    kegagalan, prosentase event yang gagal, atau
    probabilitas korupsi data
  • Portabilitas dalam prosentase pernyataan
    tergantung target, atau jumlah sistem target

48
Persyaratan User
  • Mendeskripsikan persyaratan fungsional dan
    non-fungsional sehingga dapat dipahami oleh user
    yang tidak memiliki pengetahuan teknik.
  • Persyaratan user harus ditulis memakai bahasa
    natural, formal dan diagram intuitif yang
    sederhana. Persyaratan user tidak boleh
    didefinisikan memakai model implementasi.
  • Masalah yang sering muncul
  • Tidak Adanya Kejelasan
  • Kesimpang-siuran Persyaratan
  • Penggabungan Persyaratan

49
Persyaratan Sistem
  • Persyaratan sistem ini lebih rinci dari
    persyaratan user, dan berfungsi sebagai dasar
    kontrak untuk implementasi sistem.
  • Persyaratan sistem ini digunakan sebagai titik
    awal perancangan sistem.
  • Bahasa natural banyak digunakan dalam
    mendefinisikan persyaratan sistem

50
Pentingnya Evolusi Perangkat Lunak
  • Perusahaan akan memberikan investasi yang besar
    pada sistem perangkat lunak mereka karena
    merupakan aset bisnis yang vital.
  • Untuk mempertahankan nilai aset tersebut untuk
    bisnis, sistem perangkat lunak harus diubah dan
    diperbaharui.
  • Mayoritas anggaran perangkat lunak dalam
    perusahaan besar dikhususkan untuk memperbarui
    perangkat lunak yang telah ada daripada
    mengembangkan perangkat lunak baru.

51
Alasan Perangkat Lunak Berevolusi
  • Kebutuhan cenderung berevolusi ketika sistem
    sedang dikembangkan karena lingkungannya berubah.
    Oleh karena itu, sistem yang dikirim tidak akan
    memenuhi harapan pengguna.
  • Sistem terkait erat dengan lingkungannya. Bila
    sistem dipasang di suatu lingkungan, sistem itu
    mengubah lingkungan nya sehingga perubahan juga
    terjadi pada kebutuhan sistem.

52
Pendorong Perangkat Lunak Berevolusi
  • Faktor Eksternal
  • Lingkungan Sistem, meliputi
  • Inovasi Kompetitor
  • Ancaman Keamanan
  • Meningkatnya Bandwith
  • Mobilitas
  • Legislasi (pengaruh dari pemerintah)
  • Perubahan Ekspektasi Pengguna, meliputi
  • Fungsionalitas
  • Usability
  • Keandalan
  • Waktu Respon
  • Faktor Internal
  • Kebutuhan Sistem yang Berubah-Ubah
  • Peraturan dan Prosedur Perusahaan
  • Proses Bisnis
  • Pergantian Sasaran Pengguna
  • Kondisi Operasional
  • Perbaikan bug
  • Perangkat Keras Baru
  • Pengingkatan Fitur Umum
  • Waktu Hidup
  • Degradasi Performa
  • Teknologi Kuno
  • Kompleksitas Berkembang di Luar Perkiraan

53
MITOS PERANGKAT LUNAK
  • Mitos dalam perangkat lunak berbeda dengan
    mitos-2 kuno. Mitos dalam PL memiliki sejumlah
    atribut yang membuat mereka tersembu-nyi dan
    berbahaya. Ada beberapa mitos dalam PL yang masih
    tetap dipercaya.
  • .Mitos Manajemen
  • Mitos Kita sudah memiliki buku-2 yang memenuhi
    SOP untuk buat PL. Apa ini
  • tidak membantu staf saya ?
  • Kenyataan Apakah buku-2 tsb mencerminkan
    perangkat lunak modern?
  • 2. Mitos Staf saya memiliki alat pengembang PL
    terkini. OSI saya membeli
  • komputer terbaru untuk mereka
  • Kenyataan Hardware tidak membantu, krn yang
    penting adalah CASE untuk
  • mencapai kualitas dan produktivitas

54
MITOS PERANGKAT LUNAK
2. Mitos Pelanggan Mitos Kebutuhan proyek
berubah-rubah terus dan pasti nantinya dapat
mengakomodir perubahan, karena PL
bersifat fleksibel kan ? Kenyataan
Perubahan-2 tsb akan berdampak ke bagian lain
(lihat gambar 1.5) 3. Mitos para Praktisi
Mitos Satu-2 nya yang dapat disampaikan untuk
sebuah proyek yang sukses adalah
bahwa program itu bekerja Kenyataan
Program yang bekerja hanya salah satu bagian
dalam PL, tapi masih ada
hal seperti dokumen, data, dokumentasi
55
Sasaran Proyek dan 3 Kendala (Triple Constraint)
Setiap Proyek memiliki tujuan khusus, didalam
proses pencapaian tujuan tersebut ada 3
constraint yang harus dipenuhi, yang dikenal
dengan Trade-off Triangle atau Triple Constraint
MUTU
ANGGARAN
JADWAL
56
Sasaran Proyek dan 3 Kendala (Triple Constraint)
MUTU
BIAYA
Sesuai Anggaran Tidak harus dicairkan sekaligus
Sesuai Target
WAKTU
On Time Delivery per Modul / Process / Phase
57
  • Anggaran (Cost)
  • Proyek harus diselesaikan dengan biaya yang tidak
    melebihi anggaran.
  • Untuk proyek-proyek yang melibatkan dana dalam
    jumlah yang besar dan jadwal bertahun-tahun,
    anggaran bukan hanya ditentukan untuk total
    proyek atau per periode tertentu (misalnya per
    kwartal) yang jumlahnya disesuaikan dengan
    keperluan.
  • Dengan demikian penyelesaian bagianbagian proyek
    pun harus memenuhi sasaran anggaran per periode.

58
  • Mutu (Quality)
  • Produk atau hasil kegiatan proyek harus memenuhi
    spesifikasi dan kriteria yang dipersyaratkan.
  • Sebagai contoh, bila hasil kegiatan proyek
    tersebut berupa instalasi pabrik, maka kriteria
    yang harus dipenuhi adalah pabrik harus mampu
    beroperasi secara memuaskan dalam kurun waktu
    yang telah ditentukan.
  • Jadi, memenuhi persyaratan mutu berarti mampu
    memenuhi tugas yang dimaksudkan atau sering
    disebut sebagai fit for the intended use.

59
  • Waktu (Time)
  • Proyek harus dikerjakan sesuai dengan kurun waktu
    dan tanggal akhir yang telah ditentukan.
  • Bila hasil akhir adalah produk baru, maka
    penyerahannya tidak boleh melewati batas waktu
    yang telah ditentukan.
  • Walaupun secara teoritis pelaksanaan proyek harus
    tepat waktu, namun sering terjadi pada waktu
    pelaksanaannya tidak berjalan sebagaimana yang
    diharapkan.
  • (Soeharto,I. 1995)

60
Biaya Rekayasa Perangkat Lunak
  • 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.

61
Metode-metode RPL
  • 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.

62
CASE (Computer-Aided Software Engineering)
  • Mencakup berbagai macam program yang digunakan
    untuk mendukung kegiatan PL seperti analisis
    persyaratan, pemodelan sistem, debugging, dan
    pengujian.

63
Tantangan Kunci yang dihadapi RPL ?
  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.

64
DOKUMEN PERANGKAT LUNAK
  • Software Project Management Plan (SPMP)
  • Software Requirement Specification (SRS)
  • Software Design Description (SDD)
  • Software Test Plan (STP)
  • Software Test Description (STD)
  • Software Test Result (STR)
  • Software Version
  • User Guide / User Manual
Write a Comment
User Comments (0)
About PowerShow.com