Pemodelan Perangkat Lunak - PowerPoint PPT Presentation

About This Presentation
Title:

Pemodelan Perangkat Lunak

Description:

Materi Pemodelan Perangkat Lunak SMK XI RPL – PowerPoint PPT presentation

Number of Views:1040
Slides: 48
Provided by: jono31
Tags:

less

Transcript and Presenter's Notes

Title: Pemodelan Perangkat Lunak


1
Pemodelan Perangkat Lunak
  • Lambok napitu Amd.kom

2
Referensi
  • Ian Somerville, Software Engineering, 6th
    Edition, Addison Wesley, 2001
  • Roger R. Pressman, Software Engineering, 6th
    Edition McGraw-Hill, 2005
  • Erich Gamma, Richard Helm, Ralph Johnson, John
    Vlissides, Design Patterns Elements of Reusable
    Object-Oriented Software, Addison-Wesley, 1995

3
Tools
  • Power Designer 6 / Power Designer 9
  • Rational Rose 7 / IBM Rational Software Architect
  • Java Compiler (Netbeans, Gel, Eclipse)

4
Topik dalam Pemodelan PL
  • Review RPL
  • Pemodelan PL
  • Pemodelan Data dan CASE Tool
  • UML in Depth ( Kelas, Use Case, State, dll)
  • Design Pattern

5
Lessons
  • Perangkat Lunak
  • Review Rekayasa Perangkat Lunak
  • Pemodelan Perangkat Lunak

6
Perangkat Lunak
7
Definisi Perangkat Lunak
  • Perangkat Lunak adalah suatu aplikasi program
    komputer yang di dalamnya terdapat
  • program itu sendiri,
  • konfigurasi yang digunakan,
  • dokumentasi yang menjelaskan struktur sistem,
  • dokumentasi yang menjelaskan bagaimana
    menggunakan sistem,
  • dan informasi tentang versi terbaru
  • Produk Perangkat Lunak dikembangkan sesuai dengan
    siapa pemakai perangkat lunak tersebut.
  • Produk Perangkat lunak dibagi menjadi
  • Produk Generik, yang dijual pada pasar terbuka
  • Produk Spesifik, yang dibuat dan dijual sesuai
    pesanan dari pemakai.

8
Karateristik Perangkat Lunak
  • Software is developed or engineered, not
    manufactured
  • Software doesnt wear out
  • Most software are custom built, not assembled
    from existing component

9
Problem dalam Pembuatan Perangkat Lunak
  • 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

10
Macam-Macam Perangkat Lunak
  • Perangkat Lunak Berdasarkan Pemakai
  • Generik Perangkat lunak yang bisa digunakan
    secara umum
  • Spesifik Perangkat lunak yang dibuat berdasarkan
    pesanan
  • Perangkat Lunak Berdasarkan Fungsional
  • Interfacing
  • Operating System
  • Perangkat Lunak Aplikasi
  • CASE Tools

11
Perangkat Lunak Berdasarkan Pemakai
  • Generik Perangkat lunak yang digunakan secara
    umum. Sebagai contoh
  • Operating System, seperti Microsoft Windows,
  • Word Processing, seperti Microsoft Word, WordPad
  • Spreadsheet, seperti Microsoft Excell
  • Beberapa aplikasi khusus bisa dibuat menjadi
    generik dengan membuatnya general dan mudah
    digunakan siapa saja seperti aplikasi akuntansi,
    aplikasi sekolah, dan lain-lain
  • Spesifik Perangkat lunak yang dibuat berdasarkan
    pesanan. Banyak Software House yang menghasilkan
    perangkat lunak ini berdasarkan proyek/pesanan
    tertentu. Sebagai contoh Aplikasi Rumah Sakit,
    Aplikasi Pendidikan, Aplikasi Kesehatan, dan
    lain-lain

12
Perangkat Lunak Berdasarkan Fungsionalnya
  • INTERFACING Perangkat lunak ini menghubungkan
    suatu perangkat keras tertentu, seperti hardware
    driver, interfaces dengan perangkat keras lain.
    Misal
  • Driver untuk Kamera, Handphone atau perangkat
    keras lainnya
  • Program interface seperti Sensor Suhu dengan
    LM555, PPI 8255, Komunikasi Serial RS232.

13
Perangkat Lunak Berdasarkan Fungsionalnya
  • OPERATING SYSTEM Perangkat lunak yang
    menjalankan sistem komputer dan merupakan
    interface dari sistem komputer dan program
    aplikasi yang berjalan diatasnya.
  • Beberapa OS yang dikenal secara luas
  • Microsoft Windows
  • Linux dan varians-nya, seperti Redhat, SuSE,
    Mandrake, Debian, dsb.
  • Unix
  • FreeBSD
  • Macintosh (Apple)

14
Perangkat Lunak Berdasarkan Fungsionalnya
  • PROGRAM APLIKASI program ini digunakan untuk
    keperluan tertentu, yang tujuannya membantu
    pekerjaan manusia menjadi lebih mudah. Program
    ini yang banyak dibahas dalam pembuatan perangkat
    lunak.
  • Program Aplikasi ini tergantung pada kebutuhan
    dari program itu sendiri, seperti
  • Program Office
  • Program Graphics Design
  • Program Multimedia
  • dan lain-lain

15
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

16
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

17
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.

18
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

19
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

20
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

21
Review Rekayasa Perangkat Lunak
22
Definisi Rekayasa Perangkat Lunak
  • Rekayasa Perangkat Lunak adalah disiplin ilmu
    yang membahas semua aspek produksi perangkat
    lunak, mulai tahap awal spesifikasi sistem sampai
    pemeliharaan sistem setelah digunakan.
  • Perekayasa Perangkat Lunak memakai pendekatan
    yang sistematis dan terorganisir untuk
    menghasilkan perangkat lunak berkualitas tinggi.

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

24
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.

25
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

26
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

27
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

28
Waterfall Development Model
29
Pendekatan Waterfall Model
  • Development activities are performed in
    sequential order, with possibly minor overlap,
    and minimal or no iteration between activities.
  • User needs are determined, requirements are
    defined, and the full system is designed, built,
    and tested for ultimate delivery at one point in
    time. Some people refer to this as a stage-wise
    model.

30
Evolutionary Development Model
  • Pengembangan Eksplorasi
  • Sistem berubah dengan adanya fitur-fitur tambahan
    dari user.
  • Prototype yang dapat dibuang (Throw-Away)
  • Memahami persyaratan user untuk mendapatkan
    definisi persyaratan yang lebih baik.

31
Evolutionary Development Model
32
Evolutionary Development Model
  • Masalah-masalah dalam Pengembangan Evolusioner
  • Proses tidak dapat dilihat
  • Sistem seringkali mempunyai struktur yang tidak
    baik
  • Mungkin diperlukan alat bantu khusus
  • Model pengembangan evolusioner ini cocok untuk
    aplikasi yang kecil dan life-cycle yang pendek.

33
Spiral Development Model
34
Spiral Development Model
  • Spiral Model Description
  • The development spiral consists of four quadrants
  • Quadrant 1 Determine objectives, alternatives,
    and constraints.
  • Quadrant 2 Evaluate alternatives, identify,
    resolve risks.
  • Quadrant 3 Develop, verify, next-level product.
  • Quadrant 4 Plan next phases.

35
Incremental Development Model
36
Incremental Development Model
  • Proses perangkat lunak dibagi menjadi serangkaian
    increment yang dikembangkan secara bergantian.
  • Keuntungan Pengembangan Incremental
  • User tidak perlu menunggu seluruh sistem
    dikirimkan, karena increment pertama mempunyai
    persyaratan kritis dan perangkat lunak segera
    dapat digunakan.
  • User dapat memakai increment pertama sebagai
    prototype
  • Resiko kegagalan proyek secara keseluruhan lebih
    rendah
  • Pengujian paling ketat diberlakukan pada
    increment pertama.

37
Fase Utama Persyaratan Perangkat Lunak
  • Studi Kelayakan
  • Elisitasi dan Analisis Persyaratan
  • Spesifikasi Persyaratan
  • Validasi Persyaratan

38
Spesifikasi Persyaratan Perangkat Lunak
39
Kegiatan Perancangan Perangkat Lunak
  • Perancangan Arsitektural
  • Spesifikasi Abstrak
  • Perancangan Interface
  • Perancangan Komponen
  • Perancangan Struktur Data
  • Perancangan Algoritma

40
Perancangan dan ImplementasiPerangkat Lunak
41
Validasi Perangkat Lunak
Pengujian Unit
Pengujian Modul
Pengujian Sub Sistem
Pengujian Sistem 1
Pengujian Sistem 2
Pengujian Komponen
Pengujian Integrasi
Pengujian User
42
Evolusi Perangkat Lunak
43
Pemodelan Perangkat Lunak
44
Pemodelan Perangkat Lunak
  • Pemodelan dan analisa dapat dianggap sebagai akar
    konsep dari semua displin teknik karena
    keutamaannya dalam mendokumentasikan dan
    mengevaluasi alternatif serta pilihan desain.
  • Pemodelan dilakukan pada awal analisa,
    spesifikasi dan validasi persyaratan.
  • Persyaratan yang dimaksud adalah semua kebutuhan
    pengguna, kustomer dan stakeholder yang harus
    dipenuhi oleh sistem.
  • Dalam pembuatan persyaratan melibatkan
  • Analisa studi kelayakan dari sistem yang akan
    dibuat,
  • Memperoleh dan menganalisa kebutuhan dari
    stakeholder
  • Pembuatan gambaran yang akurat terhadap sistem
    tentang apa yang harus dilakukan sistem dan apa
    yang tidak.
  • Validasi terhadap dokumen atau spesifikasi oleh
    stakeholder

45
Types of Models
  • Information modeling (e.g. entity-relationship
    modeling, class diagrams, etc.)
  • Behavioral modeling (e.g. structured analysis,
    state diagrams, use case analysis, interaction
    diagrams, failure modes and effects analysis,
    fault tree analysis etc.)
  • Structure modeling (e.g. architectural, etc.)
  • Domain modeling (e.g. domain engineering
    approaches, etc.)
  • Functional modeling (e.g. component diagrams,
    etc.)
  • Enterprise modeling (e.g. business processes,
    organizations, goals, etc.)
  • Modeling embedded systems (e.g. real-time
    schedulability analysis, external interface
    analysis, etc.)

46
Modeling CASE Tool
  • Rational Rose ? UML
  • PowerDesigner ? Data Modeling

47
Lambok Napitu A.md,kom
End Session
Write a Comment
User Comments (0)
About PowerShow.com