SlideShare una empresa de Scribd logo
1 de 35
Descargar para leer sin conexión
Perancangan dengan Pemakaian Ulang
       Proses perancangan ulang pada sebagian besar disiplin
    ilmu ditekankan pada pemakaian ulang komponen.

       Perangkat lunak harus dianggap sebagai suatu aset, dan
    pemakaian ulang aset sangat penting untuk menaikkan
    pengembangan dari biaya pengembangnya.

       Rekayasa perangkat lunak berbasis pemakaian ulang
    adalah pendekatan terhadap pengembangan yang mencoba
    memaksimalkan pemakaian perangkat lunak yang ada. Unit
    perangkat lunak yang dipakai ulang bisa berukuran sangat
    berbeda.
KELOMPOK 2              Perancangan dan Pemakaian Ulang         2
Contoh
    • Pemakaian ulang sistem aplikasi, yaitu seluruh
      sistem aplikasi dapat dipakai ulang dengan
      menggabungkannya tanpa perubahan dengan
      sistem lain.
    • Pemakaian ulang komponen. Komponen subsistem
      atau satu objek tunggal aplikasi dapat dipakai
      ulang.
    • Pemakaian ulang fungsi. Komponen perangkat
      lunak yang menggunakan satu fungsi (contohnya
      fungsi matematik) dapat dipakai ulang.
KELOMPOK 2           Perancangan dan Pemakaian Ulang   3
Keuntungan
    Keuntungan            Keterangan
    Keandalan             Komponen yang dipakai ulang telah diuji pada berbagai lingkungan, sehingga
    bertambah             komponen tersebut lebih dapat diandalkan daripada komponen baru.


    Resiko         proses Jika komponen telah ada, ketidakpastian biaya pemakaian ulang menjadi lebih
    diperke-cil           kecil daripada biaya pengembangan.
    Pemakaian spesialis Spesialis aplikasi tidak melakukan pekerjaan yang sama pada berbagai proyek,
    yang efektif          tapi mereka dapat mengembangkan komponen-komponen yang dipakai ulang,
                          yang sesuai dengan pengetahuan mereka.


    Pemenuhan             Pemakaian tampilan antarmuka standar memperbaiki kehandalan, karena
    Standar               pemakai lebih terbiasa menggunakan tampilan antarmuka yang mereka kenal
                          sejak lama.
    Pengembangan          Pemakaian ulang komponen mempercepat proses produksi karena waktu
    yang dipercepat       pengembangan dan waktu validasi bisa dipersingkat.

KELOMPOK 2                              Perancangan dan Pemakaian Ulang                                 4
Syarat kritis Pengembangan
    • Komponen yang dapat dipakai ulang dan sesuai,
      harus dimiliki dan bisa ditemukan.
    • Pemakaian ulang komponen harus memastikan
      komponen-komponen tersebut bisa bekerja
      dengan andal dan sebagaimana mestinya.
    • Komponen tersebut harus memiliki dokumentasi
      yang sesuai untuk membantu pemakai ulang
      memahaminya dan mengadaptasinya ke aplikasi
      baru.
KELOMPOK 2           Perancangan dan Pemakaian Ulang   5
Masalah dan Hambatan
    Masalah                               Keterangan
    Biaya pengembangan perangkat Jika source code untuk komponen tidak tersedia, maka biaya pemeliharaan
    lunak                                 bertambah besar, karena elemen sistem yang dipakai ulang bisa makin tidak
                                          kompatibel dengan perubahan sistem.
    Tidak    adanya   duku-ngan      alat Toolset CASE tidak mendukung pengembangan dengan pemakaian ulang.
    bantu                                 Integrasi alat bantu ini dengan sistem library sulit bahkan tidak mungkin.


    Sindrom tidak dibuat disini.          Beberapa perekayasa perangkat lunak kadang-kadang lebih suka menulis kembali
                                          komponen karena mereka yakin dapat membuat kembali suatu komponen yang
                                          dipakai ulang.
    Mempertahankan                 library Memenuhi library komponen dan menjamin pengembang perangkat lunak dapat
    komponen                              memakai library ini mungkin akan mahal. Teknik terbaru untuk klasifikasi,
                                          katalog, dan mengambil komponen perangkat lunak belum matang.


    Menemukan      dan   mengadaptasi Komponen perangkat lunak harus ditemukan pada suatu library, dipahami, dan
    komponen perangkat lunak belum diadaptasi untuk bekerja pada lingkungan yang baru.
    matang


KELOMPOK 2                                    Perancangan dan Pemakaian Ulang                                            6
Pandangan Generator
        Alternatif untuk pandangan berorientasi
    komponen pemakaian ulang adalah pandangan
    generator. Pada pendekatan ini, pengetahuan
    yang dapat dipakai ulang ditangkap pada sistem
    generator program yang dapat diprogram dalam
    bahasa berorientasi domain. Pemakaian berbasis
    generator hanya mungkin jika abstraksi domain
    dan pemetaannya pada kode eksekusi dapat
    diidentifikasi.
KELOMPOK 2          Perancangan dan Pemakaian Ulang   7
Pemakaian Ulang Berbasis Generator




KELOMPOK 2      Perancangan dan Pemakaian Ulang   8
Pemakaian Berbasis Generator yang
             Berhasil digunakan
    • Generator aplikasi untuk pemetaan bisnis. Inputnya
      berupa 4GL atau interaktif seluruhnya dimana pengguna
      mendefinisikan tampilan dan aksi pemrosesan.
      Outputnya berupa program seperti COBOL atau SQL.
    • Generator parser untuk pemrosesan bahasa. Inputnya
      berupa Grammar yang mendeskripsikan bahasa dan
      Outputnya berupa parser bahasa.
    • Generator kode pada CASE tool. Inputnya berupa desain
      perangkat lunak, dan Outputnya berupa program yang
      mengimplementasikan sistem yang dirancang.
KELOMPOK 2             Perancangan dan Pemakaian Ulang        9
Keuntungan Pandangan Generator

        Lebih mudah bagi pemakai untuk
    mengembangkan program dengan menggunakan
    generator dibandingkan dengan pendekatan
    berbasis komponen lainnya terhadap pemakaian
    ulang.



KELOMPOK 2         Perancangan dan Pemakaian Ulang   10
Pengembangan Berbasis Komponen
          Pengembangan berbasis komponen atau rekayasa perangkat lunak
    berbasis komponen muncul pada akhir tahun 1990-an sebagai pendekatan
    berbasis pemakaian ulang terhadap pengembangan sistem perangkat
    lunak. Motivasinya adalah kefrustrasian bahwa pengembangan
    berorientasi objek tidak berkembang menjadi pemakaian ulang yang
    ekstensif sebagaimana diperkirakan pada awalnya.

         Komponennya lebih abstrak dari kelas objek dan dapat dianggap
    sebagai penyedia layanan yang berdiri sendiri. Ketika sistem
    membutuhkan layanan, sistem memanggil komponen untuk menyediakan
    layanan tersebut tanpa peduli di mana komponen tersebut berjalan atau
    bahasa pemrograman yang dipakai untuk mengembangkannya.

KELOMPOK 2                  Perancangan dan Pemakaian Ulang                 11
Karakteristik Komponen yang dapat
                 dipakai ulang
    1. Komponen merupakan entitas yang dapat
       dieksekusi dan independen. Source code tidak
       tersedia sehingga komponen tidak dikompilasi
       dengan komponen sistem lain.
    2. Komponen mengeluarkan interface mereka dan
       semua interaksi melalui inter-face tersebut.
       Interface komponen dinyatakan dalam operasi
       yang diparamete-risasi dan status internalnya
       tidak pernah diperlihatkan.
KELOMPOK 2          Perancangan dan Pemakaian Ulang    12
Komponen didefinisikan oleh interfacenya dan, dalam
    kasus yang paling umum, dapat dianggap memiliki dua
    interface yang berhubungan

    • Interface provides, yaitu interface yang mendefinisikan
      layanan yang disediakan oleh komponen tersebut
    • Interface requires, yaitu interface yang menspesifikasi
      layanan apa yang harus tersedia dari sistem yang
      memakai komponen itu. Jika ini tidak disediakan,
      maka komponen tidak akan bekerja.

KELOMPOK 2              Perancangan dan Pemakaian Ulang         13
Contoh : Komponen layanan
                      pencetakan
                                       Print Sevice
        Interface requires                                                 Interface provides

                       GetPDfile                                   Print

                       PrinterInt                            GetQueue

                                                              Remove

                                                              Transfer

                                                                  Register

                                                             UnRegister


KELOMPOK 2                      Perancangan dan Pemakaian Ulang                                 14
Tingkat Abstaksi
    Meyer (1999) mengidentifikasi lima tingkat abstraksi:

    1.       Abstraksi fungsional dimana komponen mengimplementasi satu
             fungsi, misalnya fungsi matematika.
    2.       Pengelompokan kasual dimana komponen merupakan sekumpulan
             entitas yang ber-hubungan longgar (loosely related) yang mungkin
             berupa deklarasi data, fungsi, dsb.
    3.       Abstraksi data dimana komponen merepresentasikan abstraksi data
             atau kelas pe-rangkat lunak bahasa berorientasi objek.
    4.       Abstraksi cluster dimana komponen merupakan sekumpulan kelas
             yang berhubungan yang bekerja sama. Kelas-kelas ini kadang-kadang
             dinamakan kerangka kerja.
    5.       Abstraksi sistem dimana komponen merupakan sistem yang
             sepenuhnya berdiri sendiri.

KELOMPOK 2                      Perancangan dan Pemakaian Ulang                  15
Pengembangan Berorientasi Komponen
    Pengembangan berorientasi komponen dapat
    diintegrasikan ke dalam proses pengembangan
    sistem dengan menggunakan kegiatan pemakaian
    ulang yang spesifik

       Rancangan                            Cari komponen
                    Spesifikasi                                Pakai komponen
       arsitektur                         yang dapat dipakai
                    Komponen                                   yang ditemukan
         sistem                                  ulang


                    Proses pemakaian ulang oportunistik


KELOMPOK 2                 Perancangan dan Pemakaian Ulang                      16
Proses implementasi sistem dengan menggunakan
    komponen biasanya merupa-kan proses pembuatan
    prototipe atau proses pengembangan inkremental.
    Bahasa pemrograman standar seperti Java dapat
    digunakan dengan komponen pada library yang
    direferensi dari program. Alternatifnya (dan lebih
    umum) digunakan bahasa scripting yang khusus
    dirancang untuk integrasi komponen yang dapat
    dipakai ulang untuk mendukung pengembangan
    program yang cepat.


KELOMPOK 2           Perancangan dan Pemakaian Ulang     17
Pengembangan dengan Pemakaian Ulang

                                                                    Modifikasi
         Buat garis besar        Cari komponen
                                                               persyaratan menurut
           persyaratan             yang dapat
                                                                 komponen yang
             sistem               dipakai ulang
                                                                     didapat




                                                                 Rancang sistem
                                 Cari komponen
             Perancangan                                        dengan memakai
                                   yang dapat
              arsitektural                                      komponen yang
                                  dipakai ulang
                                                               dapat dipakai ulang




KELOMPOK 2                   Perancangan dan Pemakaian Ulang                         18
Kerangka Kerja Aplikasi
        Pemakaian ulang paling baik didukung pada
    proses pengembangan berorientasi objek melalui
    abstraksi yang tidak terlalu detil, yang disebut
    sebagai kerangka kerja (framework)
        Kerangka kerja (atau kerangka kerja aplikasi)
    merupakan desain subsistem yang terdiri dari
    sekumpulan kelas yang abstrak dan konkret, dan
    berbagai interface di antara mereka (Wirfs-Brock
    dan Johnson, 1990).
KELOMPOK 2           Perancangan dan Pemakaian Ulang    19
Kelas Kerangka Kerja
    Fayad dan Schmidt (1997) mengidentifikasi tiga kelas kerangka kerja:
    1. Kerangka kerja infrastruktur sistem yang mendukung pengembangan
        infrastruktur sistem seperti komunikasi, interface user dan compiler
        (Schmidt, 1997).
    2. Kerangka kerja integrasi middleware (perangkat menengah) yang
        terdiri dari satu set standar dan kelas objek yang berhubungan yang
        mendukung komunikasi dan pertukaran informasi komponen.
    3. Kerangka kerja aplikasi perusahaan yang berhubungan dengan
        domain aplikasi yang spesifik seperti sistem telekomunikasi atau
        finansial (Baumer et al., 1997).

    Kerangka-kerangka kerja ini memiliki pengetahuan domain aplikasi dan
    mendukung pengembangan aplikasi end-user.


KELOMPOK 2                   Perancangan dan Pemakaian Ulang                   20
Kerangka Kerja Model-View-Controller

                            Lihat message                                    Input user
             Status view    modifikasi                Status kontroler

         Metode View                                 Metode kontroler


    Query dan                                                   Edit model
    update
    model
                           Status model

                           Metode model




KELOMPOK 2                    Perancangan dan Pemakaian Ulang                             21
MVC
        Kerangka kerja ini pada awalnya diusulkan pada
    tahun 1980-an sebagai pendekatan terhadap
    perancangan GUI yang memungkinkan presen-tasi
    multipel dart sebuah objek dan gaya interaksi yang
    berbeda dengan setiap presentasi ini.
        Kerangka kerja MVC mendukung presentasi data
    dengan cara-cara yang berbeda dan interaksi yang
    terpisah dengan setiap presentasi ini. Ketika data
    dimodifikasi melalui salah satu part presentasi
    tersebut, semua presentasi lain di-update.
KELOMPOK 2           Perancangan dan Pemakaian Ulang     22
Pemakaian Ulang Produk COST

       COST, Commercial Off-The-Shelf
    Systems    merupakan      komponen-
    komponen dari sistem pemakaian ulang
    yang ditawarkan oleh vendor pihak
    ketiga.


KELOMPOK 2           Perancangan dan Pemakaian Ulang   23
Masalah Integrasi COST
    Boehm (1999) membahas empat masalah dengan integrasi
    sistem COTS :

    1. Tidak adanya kontrol terhadap fungsionalitas dan
       kinerja.
    2. Masalah dengan kemampuan antar operasi sistem
       COTS.
    3. Tidak ada kontrol terhadap evolusi sistem.
    4. Dukungan dari vendor COTS.
KELOMPOK 2             Perancangan dan Pemakaian Ulang     24
Keuntungan COST
        Keuntungan pemakaian ulang produk COTS
    sangat signifikan karena sistem-sistem ini
    memberikan begitu banyak fungsio-nalitas bagi
    pemakai ulang. Usaha implementasi yang
    berbulan-bulan atau bahkan bertahun-tahun
    dapat dipersingkat jika sistem yang ada dipakai
    ulang dan waktu pengembangan sistem pun
    diperkecil secara drastis.

KELOMPOK 2          Perancangan dan Pemakaian Ulang   25
Pengembangan Komponen Untuk Pemakaian
                    Ulang
        Proses pengembangan komponen yang ideal harus
    merupakan proses berbasis pengalaman, di mana
    komponen pemakaian ulang khusus dibuat dari
    komponen yang ada yang telah dipakai ulang dengan
    cara yang oportunis. Dengan meng-gunakan
    pengetahuan mengenai masalah pemakaian ulang dan
    adaptasi komponen yang dibutuhkan untuk
    mendukung pemakaian ulang, versi komponen yang
    lebih generik, yang lebih dapat dipakai ulang, dapat
    dibuat.
KELOMPOK 2            Perancangan dan Pemakaian Ulang      26
Karakteristik Komponen yang Dapat
                       Dipakai Ulang
    1. Komponen harus merefleksikan abstraksi domain yang
       stabil. Abstraksi do-main yang stabil merupakan konsep
       mendasar pada domain aplikasi yang berubah perlahan.
    2. Komponen harus menyembunyikan cara statusnya
       direpresentasikan dan harus menyediakan operasi yang
       memungkinkan status tersebut diakses dan di-up-date.
    3. Komponen harus seindependen mungkin. Idealnya, sebuah
       komponen harus berdiri sendiri sehingga komponen tidak
       memerlukan komponen lain untuk beroperasi.
    4. Semua eksepsi harus merupakan bagian dari interface
       komponen. Komponen tidak boleh menangani eksepsi sendiri
       karena aplikasi yang berbeda akan memiliki persyaratan
       yang berbeda untuk penanganan eksepsi.
KELOMPOK 2              Perancangan dan Pemakaian Ulang           27
Kerabat Aplikasi
         Salah satu pendekatan yang paling efektif bagi
    pemakaian ulang didasarkan sekitar kerabat aplikasi.
    Sebuah kerabat aplikasi atau jalur produk merupakan satu
    set aplikasi yang memiliki arsitektur spesifik domain

         Namun demikian, setiap aplikasi khusus merupakan
    spesialisasi dalam satu hal. Inti umum dari kerabat aplikasi
    dipakai ulang setiap kali dibutuhkan aplikasi bare.
    Pengembangan barn bisa melibatkan penulisan beberapa
    komponen tambahan dan adaptasi beberapa komponen pada
    aplikasi untuk memenuhi permintaan baru.
KELOMPOK 2               Perancangan dan Pemakaian Ulang           28
Kerabat Aplikasi yang dapat Dikembangkan

    1. Spesialisasi platform, di mana berbagai versi
       aplikasi dikembangkan untuk ber-bagai
       platform.
    2. Spesialisasi konfigurasi, di mana berbagai versi
       aplikasi dibuat untuk menangani berbagai
       peranti periferal.
    3. Spesialisasi fungsional, di mana berbagai versi
       aplikasi dibuat untuk pelanggan dengan
       persyaratan yang berbeda.
KELOMPOK 2            Perancangan dan Pemakaian Ulang     29
Library user access



        Add   Delete    Query     Browse      Admin       Report    Issue      Return   Users




                       Resource
                                         Screen spec.           Report spec.
                         desc.



                           Library Holdings Database


                                    Sistem perpustakaan

KELOMPOK 2                        Perancangan dan Pemakaian Ulang                               30
Lankah-Langkah Proses Generik
    1.       Elisitasi persyaratan stakeholder yang didasarkan atas proses
             rekayasa persyaratan normal.
    2.       Pilih anggota kerabat yang paling sesuai. Persyaratan dianalisis dan
             anggota kerabat yang paling sesuai untuk persyaratan-persyaratan
             ini dipilih untuk dimodifikasi.
    3.       Negosiasi ulang persyaratan. Sementara makin banyak muncul detil
             perubahan yang dibutuhkan bagi sistem yang telah ada dan proyek
             direncanakan
    4.       Adaptasi sistem yang sudah ada. Modul-modul baru dikembangkan
             untuk sistem yang sudah ada dan modul-modul sistem yang telah
             ada, diadaptasi untuk memenuhi persyaratan-persyaratan baru.
    5.       Serahkan anggota kerabat yang baru. Anggota kerabat aplikasi yang
             baru diserahkan kepada pelanggan.


KELOMPOK 2                       Perancangan dan Pemakaian Ulang                    31
Pengembangan Anggota Kerabat

                                               Negosiasi ulang
                                                persyaratan


        Esilitasi   Pilih anggota
      persyaratan   kerabat yang
      stakeholder   paling sesuai


                                                                   Serahkan
                                               Adaptasi sistem
                                                                    anggota
                                               yang sudah ada
                                                                 kerabat baru




KELOMPOK 2                  Perancangan dan Pemakaian Ulang                     32
Pola Perancangan
         Pola rancangan (Gamma et al., 1995) diturunkan dari
    ide yang dikemukakan oleh Christopher Alexander
    (Alexander et al., 1977), yang mengusulkan bahwa ada pola
    tertentu pada rancangan pembangunan yang umum dan
    sekaligus memaskan dan efektif.
         'Pola' merupakan deskripsi masalah dan inti solusinya
    sehingga solusi tersebut dapat dipakai ulang pada setting
    yang berbeda. Pola ini tidak merupakan spesifikasi yang
    rinci. Melainkan, Anda dapat menganggapnya sebagai
    deskripsi dari kebijaksanaan dan pengalaman yang
    terakumulasi. Pola ini merupakan solusi terhadap masalah
    umum yang telah diuji dengan baik.

KELOMPOK 2              Perancangan dan Pemakaian Ulang          33
Elemen Penting Pola Rancangan
    Gamma et al. (1995) mendefinisikan empat elemen yang penting
    pada pola rancangan:

    1. Nama yang merupakan referensi yang bermakna terhadap
       pola.
    2. Deskripsi area masalah yang menjelaskan kapan pola
       tersebut dapat diterapkan.
    3. Deskripsi solusi yang mendeskripsikan bagian-bagian solusi
       perancangan, hu-bungannya dan tanggung jawabnya.
    4. Pernyataan konsekuensi-hasil dan pertukaran-penerapan
       pola tersebut. Pernyataan ini digunakan untuk membantu
       perancang memahami apakah suatu pola dapat diterapkan
       secara efektif pada suatu situasi tertentu.
KELOMPOK 2               Perancangan dan Pemakaian Ulang            34
RPL | PERANCANGAN PERANGKAT LUNAK
                                    35
             REAL-TIME

Más contenido relacionado

La actualidad más candente

Rencana Induk Sistem Pengelolaan Air Limbah (SPAL) - Rencana Sistem Terpusat ...
Rencana Induk Sistem Pengelolaan Air Limbah (SPAL) - Rencana Sistem Terpusat ...Rencana Induk Sistem Pengelolaan Air Limbah (SPAL) - Rencana Sistem Terpusat ...
Rencana Induk Sistem Pengelolaan Air Limbah (SPAL) - Rencana Sistem Terpusat ...Joy Irman
 
Rencana Tata Ruang Wilayah Kabupaten Wonosobo
Rencana Tata Ruang Wilayah Kabupaten WonosoboRencana Tata Ruang Wilayah Kabupaten Wonosobo
Rencana Tata Ruang Wilayah Kabupaten WonosoboPenataan Ruang
 
Project charter-Contoh
Project charter-ContohProject charter-Contoh
Project charter-ContohFajar Baskoro
 
Buku Panduan Pengembangan Air Minum
Buku Panduan Pengembangan Air MinumBuku Panduan Pengembangan Air Minum
Buku Panduan Pengembangan Air MinumJoy Irman
 
fbb8a_3._PERSIAPAN_PELAKSANAAN_PEKERJAAN.PPT
fbb8a_3._PERSIAPAN_PELAKSANAAN_PEKERJAAN.PPTfbb8a_3._PERSIAPAN_PELAKSANAAN_PEKERJAAN.PPT
fbb8a_3._PERSIAPAN_PELAKSANAAN_PEKERJAAN.PPTArDiAn719274
 
209921115 justifikasi-teknis-cco1
209921115 justifikasi-teknis-cco1209921115 justifikasi-teknis-cco1
209921115 justifikasi-teknis-cco1Dafa Adunt
 
Tn 2012 sisjar fungsi status jalan
Tn 2012 sisjar fungsi status jalanTn 2012 sisjar fungsi status jalan
Tn 2012 sisjar fungsi status jalanhendro51
 
Contoh laporan kerja praktek ti
Contoh laporan kerja praktek tiContoh laporan kerja praktek ti
Contoh laporan kerja praktek tialvinsadega
 
Kriteria disain ipal medis
Kriteria disain ipal medisKriteria disain ipal medis
Kriteria disain ipal medisAngga Riefdianto
 
Tinjauan Manajemen Proyek
Tinjauan Manajemen ProyekTinjauan Manajemen Proyek
Tinjauan Manajemen Proyekwildancuk
 
Panduan Analisis dan Penyajian Data EHRA (Environmental Health Risk Assessment)
Panduan Analisis dan Penyajian Data EHRA (Environmental Health Risk Assessment)Panduan Analisis dan Penyajian Data EHRA (Environmental Health Risk Assessment)
Panduan Analisis dan Penyajian Data EHRA (Environmental Health Risk Assessment)infosanitasi
 
KAK Sistem Informasi Manajemen Layanan TI
KAK Sistem Informasi Manajemen Layanan TIKAK Sistem Informasi Manajemen Layanan TI
KAK Sistem Informasi Manajemen Layanan TIIvanda Zevi Amalia
 
Tahap Pra Konstruksi SPAL - Pekerjaan Persiapan
Tahap Pra Konstruksi SPAL - Pekerjaan PersiapanTahap Pra Konstruksi SPAL - Pekerjaan Persiapan
Tahap Pra Konstruksi SPAL - Pekerjaan PersiapanJoy Irman
 
Project charter kelompok 5 kelompok 6
Project charter kelompok 5 kelompok 6Project charter kelompok 5 kelompok 6
Project charter kelompok 5 kelompok 6VincentTanujaya1
 
Survei Sambungan Rumah Pelayanan Air Limbah (SR)
Survei Sambungan Rumah Pelayanan Air Limbah (SR)Survei Sambungan Rumah Pelayanan Air Limbah (SR)
Survei Sambungan Rumah Pelayanan Air Limbah (SR)Joy Irman
 
Project Charter Human Resource Information System
Project Charter Human Resource Information SystemProject Charter Human Resource Information System
Project Charter Human Resource Information SystemIvanda Zevi Amalia
 

La actualidad más candente (20)

Rencana Induk Sistem Pengelolaan Air Limbah (SPAL) - Rencana Sistem Terpusat ...
Rencana Induk Sistem Pengelolaan Air Limbah (SPAL) - Rencana Sistem Terpusat ...Rencana Induk Sistem Pengelolaan Air Limbah (SPAL) - Rencana Sistem Terpusat ...
Rencana Induk Sistem Pengelolaan Air Limbah (SPAL) - Rencana Sistem Terpusat ...
 
Rencana Tata Ruang Wilayah Kabupaten Wonosobo
Rencana Tata Ruang Wilayah Kabupaten WonosoboRencana Tata Ruang Wilayah Kabupaten Wonosobo
Rencana Tata Ruang Wilayah Kabupaten Wonosobo
 
Draf Dokumen RMK
Draf Dokumen RMKDraf Dokumen RMK
Draf Dokumen RMK
 
Pedoman Mereview Master Plan
Pedoman Mereview Master PlanPedoman Mereview Master Plan
Pedoman Mereview Master Plan
 
Project charter-Contoh
Project charter-ContohProject charter-Contoh
Project charter-Contoh
 
Buku Panduan Pengembangan Air Minum
Buku Panduan Pengembangan Air MinumBuku Panduan Pengembangan Air Minum
Buku Panduan Pengembangan Air Minum
 
fbb8a_3._PERSIAPAN_PELAKSANAAN_PEKERJAAN.PPT
fbb8a_3._PERSIAPAN_PELAKSANAAN_PEKERJAAN.PPTfbb8a_3._PERSIAPAN_PELAKSANAAN_PEKERJAAN.PPT
fbb8a_3._PERSIAPAN_PELAKSANAAN_PEKERJAAN.PPT
 
209921115 justifikasi-teknis-cco1
209921115 justifikasi-teknis-cco1209921115 justifikasi-teknis-cco1
209921115 justifikasi-teknis-cco1
 
Tn 2012 sisjar fungsi status jalan
Tn 2012 sisjar fungsi status jalanTn 2012 sisjar fungsi status jalan
Tn 2012 sisjar fungsi status jalan
 
Contoh laporan kerja praktek ti
Contoh laporan kerja praktek tiContoh laporan kerja praktek ti
Contoh laporan kerja praktek ti
 
Kriteria disain ipal medis
Kriteria disain ipal medisKriteria disain ipal medis
Kriteria disain ipal medis
 
Tinjauan Manajemen Proyek
Tinjauan Manajemen ProyekTinjauan Manajemen Proyek
Tinjauan Manajemen Proyek
 
Panduan Analisis dan Penyajian Data EHRA (Environmental Health Risk Assessment)
Panduan Analisis dan Penyajian Data EHRA (Environmental Health Risk Assessment)Panduan Analisis dan Penyajian Data EHRA (Environmental Health Risk Assessment)
Panduan Analisis dan Penyajian Data EHRA (Environmental Health Risk Assessment)
 
KAK Sistem Informasi Manajemen Layanan TI
KAK Sistem Informasi Manajemen Layanan TIKAK Sistem Informasi Manajemen Layanan TI
KAK Sistem Informasi Manajemen Layanan TI
 
Kurva s jasa konsultansi
Kurva s jasa konsultansiKurva s jasa konsultansi
Kurva s jasa konsultansi
 
Ruang Terbuka Hijau
Ruang Terbuka HijauRuang Terbuka Hijau
Ruang Terbuka Hijau
 
Tahap Pra Konstruksi SPAL - Pekerjaan Persiapan
Tahap Pra Konstruksi SPAL - Pekerjaan PersiapanTahap Pra Konstruksi SPAL - Pekerjaan Persiapan
Tahap Pra Konstruksi SPAL - Pekerjaan Persiapan
 
Project charter kelompok 5 kelompok 6
Project charter kelompok 5 kelompok 6Project charter kelompok 5 kelompok 6
Project charter kelompok 5 kelompok 6
 
Survei Sambungan Rumah Pelayanan Air Limbah (SR)
Survei Sambungan Rumah Pelayanan Air Limbah (SR)Survei Sambungan Rumah Pelayanan Air Limbah (SR)
Survei Sambungan Rumah Pelayanan Air Limbah (SR)
 
Project Charter Human Resource Information System
Project Charter Human Resource Information SystemProject Charter Human Resource Information System
Project Charter Human Resource Information System
 

Destacado

Rpl 010 - perancangan arsitektural
Rpl   010 - perancangan arsitekturalRpl   010 - perancangan arsitektural
Rpl 010 - perancangan arsitekturalFebriyani Syafri
 
Rpl 9-perancangan arsitektural
Rpl 9-perancangan arsitekturalRpl 9-perancangan arsitektural
Rpl 9-perancangan arsitekturalf' yagami
 
Desain arsitektur
Desain arsitekturDesain arsitektur
Desain arsitekturqwiew
 
Rpl 10-perancangan user interface
Rpl 10-perancangan user interfaceRpl 10-perancangan user interface
Rpl 10-perancangan user interfacef' yagami
 
Contoh Desain Web yang Baik dan Buruk
Contoh Desain Web yang Baik dan BurukContoh Desain Web yang Baik dan Buruk
Contoh Desain Web yang Baik dan BurukSiska Amelia
 
Contoh interface yang baik
Contoh interface yang baikContoh interface yang baik
Contoh interface yang baikHibaten Wafiroh
 
ppt_IMK-design-interface
ppt_IMK-design-interfaceppt_IMK-design-interface
ppt_IMK-design-interfaceyusuf09
 
Contoh Interface Website yang baik
Contoh Interface Website yang baikContoh Interface Website yang baik
Contoh Interface Website yang baikLilik Maysarah
 
2 08 client-server architecture
2 08 client-server architecture2 08 client-server architecture
2 08 client-server architecturejit_123
 
Client server architecture
Client server architectureClient server architecture
Client server architectureBhargav Amin
 
DFD, Decision Table, Decision Chart, Structure Charts
DFD, Decision Table, Decision Chart, Structure ChartsDFD, Decision Table, Decision Chart, Structure Charts
DFD, Decision Table, Decision Chart, Structure ChartsSOuvagya Kumar Jena
 

Destacado (14)

Rpl 010 - perancangan arsitektural
Rpl   010 - perancangan arsitekturalRpl   010 - perancangan arsitektural
Rpl 010 - perancangan arsitektural
 
Rpl 9-perancangan arsitektural
Rpl 9-perancangan arsitekturalRpl 9-perancangan arsitektural
Rpl 9-perancangan arsitektural
 
Contoh pembljr KBK Arsitektur
Contoh pembljr KBK ArsitekturContoh pembljr KBK Arsitektur
Contoh pembljr KBK Arsitektur
 
Desain arsitektur
Desain arsitekturDesain arsitektur
Desain arsitektur
 
Rpl 10-perancangan user interface
Rpl 10-perancangan user interfaceRpl 10-perancangan user interface
Rpl 10-perancangan user interface
 
Contoh Desain Web yang Baik dan Buruk
Contoh Desain Web yang Baik dan BurukContoh Desain Web yang Baik dan Buruk
Contoh Desain Web yang Baik dan Buruk
 
Contoh interface yang baik
Contoh interface yang baikContoh interface yang baik
Contoh interface yang baik
 
ppt_IMK-design-interface
ppt_IMK-design-interfaceppt_IMK-design-interface
ppt_IMK-design-interface
 
Contoh Interface Website yang baik
Contoh Interface Website yang baikContoh Interface Website yang baik
Contoh Interface Website yang baik
 
Structure chart
Structure chartStructure chart
Structure chart
 
2 08 client-server architecture
2 08 client-server architecture2 08 client-server architecture
2 08 client-server architecture
 
Client server architecture
Client server architectureClient server architecture
Client server architecture
 
Structured Analysis and Structured Design
Structured Analysis and Structured DesignStructured Analysis and Structured Design
Structured Analysis and Structured Design
 
DFD, Decision Table, Decision Chart, Structure Charts
DFD, Decision Table, Decision Chart, Structure ChartsDFD, Decision Table, Decision Chart, Structure Charts
DFD, Decision Table, Decision Chart, Structure Charts
 

Similar a REKAYASA PERANGKAT LUNAK BERBASIS PEMAKAIAN ULANG

Perancangan dengan pemakaian ulang
Perancangan dengan pemakaian ulangPerancangan dengan pemakaian ulang
Perancangan dengan pemakaian ulangarfianti
 
Rekayasa perangkat lunak (dha14)
Rekayasa perangkat lunak (dha14)Rekayasa perangkat lunak (dha14)
Rekayasa perangkat lunak (dha14)Mawaddah Warahmah
 
Rpl 07 - pembuatan prototipe perangkat lunak
Rpl   07 - pembuatan prototipe perangkat lunakRpl   07 - pembuatan prototipe perangkat lunak
Rpl 07 - pembuatan prototipe perangkat lunakFebriyani Syafri
 
2. distributed system
2. distributed system2. distributed system
2. distributed systemDony Riyanto
 
Rekayasa perangkat lunak (dha3)
Rekayasa perangkat lunak (dha3)Rekayasa perangkat lunak (dha3)
Rekayasa perangkat lunak (dha3)Mawaddah Warahmah
 
KONSEP DAN PENERAPAN MODEL-MODEL PROSES PEMBANGUNAN PERANGKAT LUNAK
KONSEP DAN PENERAPAN MODEL-MODEL PROSES  PEMBANGUNAN PERANGKAT LUNAK KONSEP DAN PENERAPAN MODEL-MODEL PROSES  PEMBANGUNAN PERANGKAT LUNAK
KONSEP DAN PENERAPAN MODEL-MODEL PROSES PEMBANGUNAN PERANGKAT LUNAK fajrillah
 
Perancangan perangkat lunak
Perancangan perangkat lunakPerancangan perangkat lunak
Perancangan perangkat lunakSahrul Sindriana
 
Implementasi perangkat-lunak
Implementasi perangkat-lunakImplementasi perangkat-lunak
Implementasi perangkat-lunakbenzy swaroes
 
Buku ajar kecil 01
Buku ajar kecil 01Buku ajar kecil 01
Buku ajar kecil 01Ainul Yaqin
 
Perangkat lunak dan rekayasa perangkat lunak - Andini Izza Safitri
Perangkat lunak dan rekayasa perangkat lunak - Andini Izza SafitriPerangkat lunak dan rekayasa perangkat lunak - Andini Izza Safitri
Perangkat lunak dan rekayasa perangkat lunak - Andini Izza SafitriSandra Vio
 
Pemodelan perangkat lunak
Pemodelan perangkat lunakPemodelan perangkat lunak
Pemodelan perangkat lunakAdityaSaputra83
 
T U G A S R P L Kel U M L (System Design With Reuse)
T U G A S  R P L Kel  U M L (System Design With Reuse)T U G A S  R P L Kel  U M L (System Design With Reuse)
T U G A S R P L Kel U M L (System Design With Reuse)nafrilyan
 
04 Software Design Strategies and Methods
04 Software Design Strategies and Methods04 Software Design Strategies and Methods
04 Software Design Strategies and MethodsAinul Yaqin
 
Sistem informasi sdlc
Sistem informasi sdlcSistem informasi sdlc
Sistem informasi sdlcmistertugas
 

Similar a REKAYASA PERANGKAT LUNAK BERBASIS PEMAKAIAN ULANG (20)

Perancangan dengan pemakaian ulang
Perancangan dengan pemakaian ulangPerancangan dengan pemakaian ulang
Perancangan dengan pemakaian ulang
 
Rekayasa perangkat lunak (dha14)
Rekayasa perangkat lunak (dha14)Rekayasa perangkat lunak (dha14)
Rekayasa perangkat lunak (dha14)
 
Software reuse
Software reuseSoftware reuse
Software reuse
 
Software reuse
Software reuseSoftware reuse
Software reuse
 
Rpl 07 - pembuatan prototipe perangkat lunak
Rpl   07 - pembuatan prototipe perangkat lunakRpl   07 - pembuatan prototipe perangkat lunak
Rpl 07 - pembuatan prototipe perangkat lunak
 
2. distributed system
2. distributed system2. distributed system
2. distributed system
 
Rekayasa perangkat lunak (dha3)
Rekayasa perangkat lunak (dha3)Rekayasa perangkat lunak (dha3)
Rekayasa perangkat lunak (dha3)
 
KONSEP DAN PENERAPAN MODEL-MODEL PROSES PEMBANGUNAN PERANGKAT LUNAK
KONSEP DAN PENERAPAN MODEL-MODEL PROSES  PEMBANGUNAN PERANGKAT LUNAK KONSEP DAN PENERAPAN MODEL-MODEL PROSES  PEMBANGUNAN PERANGKAT LUNAK
KONSEP DAN PENERAPAN MODEL-MODEL PROSES PEMBANGUNAN PERANGKAT LUNAK
 
Perancangan perangkat lunak
Perancangan perangkat lunakPerancangan perangkat lunak
Perancangan perangkat lunak
 
Implementasi perangkat-lunak
Implementasi perangkat-lunakImplementasi perangkat-lunak
Implementasi perangkat-lunak
 
Buku ajar kecil 01
Buku ajar kecil 01Buku ajar kecil 01
Buku ajar kecil 01
 
Perangkat lunak dan rekayasa perangkat lunak - Andini Izza Safitri
Perangkat lunak dan rekayasa perangkat lunak - Andini Izza SafitriPerangkat lunak dan rekayasa perangkat lunak - Andini Izza Safitri
Perangkat lunak dan rekayasa perangkat lunak - Andini Izza Safitri
 
Pemodelan perangkat lunak
Pemodelan perangkat lunakPemodelan perangkat lunak
Pemodelan perangkat lunak
 
Materi ppl
Materi pplMateri ppl
Materi ppl
 
RPL
RPLRPL
RPL
 
T U G A S R P L Kel U M L (System Design With Reuse)
T U G A S  R P L Kel  U M L (System Design With Reuse)T U G A S  R P L Kel  U M L (System Design With Reuse)
T U G A S R P L Kel U M L (System Design With Reuse)
 
Rangkuman SDLC
Rangkuman SDLCRangkuman SDLC
Rangkuman SDLC
 
04 Software Design Strategies and Methods
04 Software Design Strategies and Methods04 Software Design Strategies and Methods
04 Software Design Strategies and Methods
 
Rpl
RplRpl
Rpl
 
Sistem informasi sdlc
Sistem informasi sdlcSistem informasi sdlc
Sistem informasi sdlc
 

Más de Febriyani Syafri

Rpl 013 - perancangan perangkat lunak real time
Rpl   013 - perancangan perangkat lunak real timeRpl   013 - perancangan perangkat lunak real time
Rpl 013 - perancangan perangkat lunak real timeFebriyani Syafri
 
Rpl 012 - perancangan berorientasi objek
Rpl   012 - perancangan berorientasi objekRpl   012 - perancangan berorientasi objek
Rpl 012 - perancangan berorientasi objekFebriyani Syafri
 
Rpl 011 - arsitektur sistem terdistribusi
Rpl   011 - arsitektur sistem terdistribusiRpl   011 - arsitektur sistem terdistribusi
Rpl 011 - arsitektur sistem terdistribusiFebriyani Syafri
 
Rpl 09 - spesifikasi formal
Rpl   09 - spesifikasi  formalRpl   09 - spesifikasi  formal
Rpl 09 - spesifikasi formalFebriyani Syafri
 
Rpl 06 - proses rekayasa persyaratan
Rpl   06 - proses rekayasa persyaratanRpl   06 - proses rekayasa persyaratan
Rpl 06 - proses rekayasa persyaratanFebriyani Syafri
 
Sister 01 - pengenalan sister
Sister   01 - pengenalan sisterSister   01 - pengenalan sister
Sister 01 - pengenalan sisterFebriyani Syafri
 
Sister 02 - model dan permasalahan sister
Sister   02 - model dan permasalahan sisterSister   02 - model dan permasalahan sister
Sister 02 - model dan permasalahan sisterFebriyani Syafri
 
Sister 03 - komunikasi data
Sister   03 - komunikasi dataSister   03 - komunikasi data
Sister 03 - komunikasi dataFebriyani Syafri
 
Sister 04 - remote procedure call (rpc)
Sister   04 - remote procedure call (rpc)Sister   04 - remote procedure call (rpc)
Sister 04 - remote procedure call (rpc)Febriyani Syafri
 
Sister 07 - os client server
Sister   07 - os client serverSister   07 - os client server
Sister 07 - os client serverFebriyani Syafri
 
Sister 09 - jenis os client server
Sister   09 - jenis os client serverSister   09 - jenis os client server
Sister 09 - jenis os client serverFebriyani Syafri
 
Sister 011 - network file system
Sister   011 - network file systemSister   011 - network file system
Sister 011 - network file systemFebriyani Syafri
 
Sister 013 - database terdistribusi
Sister   013 - database terdistribusiSister   013 - database terdistribusi
Sister 013 - database terdistribusiFebriyani Syafri
 

Más de Febriyani Syafri (20)

Rpl 016 - uas
Rpl   016 - uasRpl   016 - uas
Rpl 016 - uas
 
Rpl 015 - interface user
Rpl   015 - interface userRpl   015 - interface user
Rpl 015 - interface user
 
Rpl 013 - perancangan perangkat lunak real time
Rpl   013 - perancangan perangkat lunak real timeRpl   013 - perancangan perangkat lunak real time
Rpl 013 - perancangan perangkat lunak real time
 
Rpl 012 - perancangan berorientasi objek
Rpl   012 - perancangan berorientasi objekRpl   012 - perancangan berorientasi objek
Rpl 012 - perancangan berorientasi objek
 
Rpl 011 - arsitektur sistem terdistribusi
Rpl   011 - arsitektur sistem terdistribusiRpl   011 - arsitektur sistem terdistribusi
Rpl 011 - arsitektur sistem terdistribusi
 
Rpl 09 - spesifikasi formal
Rpl   09 - spesifikasi  formalRpl   09 - spesifikasi  formal
Rpl 09 - spesifikasi formal
 
Rpl 08 - uts
Rpl   08 - utsRpl   08 - uts
Rpl 08 - uts
 
Rpl 06 - proses rekayasa persyaratan
Rpl   06 - proses rekayasa persyaratanRpl   06 - proses rekayasa persyaratan
Rpl 06 - proses rekayasa persyaratan
 
Sister 01 - pengenalan sister
Sister   01 - pengenalan sisterSister   01 - pengenalan sister
Sister 01 - pengenalan sister
 
Sister 02 - model dan permasalahan sister
Sister   02 - model dan permasalahan sisterSister   02 - model dan permasalahan sister
Sister 02 - model dan permasalahan sister
 
Sister 03 - komunikasi data
Sister   03 - komunikasi dataSister   03 - komunikasi data
Sister 03 - komunikasi data
 
Sister 04 - remote procedure call (rpc)
Sister   04 - remote procedure call (rpc)Sister   04 - remote procedure call (rpc)
Sister 04 - remote procedure call (rpc)
 
Sister 05 - proses
Sister   05 - prosesSister   05 - proses
Sister 05 - proses
 
Sister 06 - client server
Sister   06 - client serverSister   06 - client server
Sister 06 - client server
 
Sister 07 - os client server
Sister   07 - os client serverSister   07 - os client server
Sister 07 - os client server
 
Sister 09 - jenis os client server
Sister   09 - jenis os client serverSister   09 - jenis os client server
Sister 09 - jenis os client server
 
Sister 010 - file service
Sister   010 - file serviceSister   010 - file service
Sister 010 - file service
 
Sister 011 - network file system
Sister   011 - network file systemSister   011 - network file system
Sister 011 - network file system
 
Sister 012 - name service
Sister   012 - name serviceSister   012 - name service
Sister 012 - name service
 
Sister 013 - database terdistribusi
Sister   013 - database terdistribusiSister   013 - database terdistribusi
Sister 013 - database terdistribusi
 

REKAYASA PERANGKAT LUNAK BERBASIS PEMAKAIAN ULANG

  • 1.
  • 2. Perancangan dengan Pemakaian Ulang Proses perancangan ulang pada sebagian besar disiplin ilmu ditekankan pada pemakaian ulang komponen. Perangkat lunak harus dianggap sebagai suatu aset, dan pemakaian ulang aset sangat penting untuk menaikkan pengembangan dari biaya pengembangnya. Rekayasa perangkat lunak berbasis pemakaian ulang adalah pendekatan terhadap pengembangan yang mencoba memaksimalkan pemakaian perangkat lunak yang ada. Unit perangkat lunak yang dipakai ulang bisa berukuran sangat berbeda. KELOMPOK 2 Perancangan dan Pemakaian Ulang 2
  • 3. Contoh • Pemakaian ulang sistem aplikasi, yaitu seluruh sistem aplikasi dapat dipakai ulang dengan menggabungkannya tanpa perubahan dengan sistem lain. • Pemakaian ulang komponen. Komponen subsistem atau satu objek tunggal aplikasi dapat dipakai ulang. • Pemakaian ulang fungsi. Komponen perangkat lunak yang menggunakan satu fungsi (contohnya fungsi matematik) dapat dipakai ulang. KELOMPOK 2 Perancangan dan Pemakaian Ulang 3
  • 4. Keuntungan Keuntungan Keterangan Keandalan Komponen yang dipakai ulang telah diuji pada berbagai lingkungan, sehingga bertambah komponen tersebut lebih dapat diandalkan daripada komponen baru. Resiko proses Jika komponen telah ada, ketidakpastian biaya pemakaian ulang menjadi lebih diperke-cil kecil daripada biaya pengembangan. Pemakaian spesialis Spesialis aplikasi tidak melakukan pekerjaan yang sama pada berbagai proyek, yang efektif tapi mereka dapat mengembangkan komponen-komponen yang dipakai ulang, yang sesuai dengan pengetahuan mereka. Pemenuhan Pemakaian tampilan antarmuka standar memperbaiki kehandalan, karena Standar pemakai lebih terbiasa menggunakan tampilan antarmuka yang mereka kenal sejak lama. Pengembangan Pemakaian ulang komponen mempercepat proses produksi karena waktu yang dipercepat pengembangan dan waktu validasi bisa dipersingkat. KELOMPOK 2 Perancangan dan Pemakaian Ulang 4
  • 5. Syarat kritis Pengembangan • Komponen yang dapat dipakai ulang dan sesuai, harus dimiliki dan bisa ditemukan. • Pemakaian ulang komponen harus memastikan komponen-komponen tersebut bisa bekerja dengan andal dan sebagaimana mestinya. • Komponen tersebut harus memiliki dokumentasi yang sesuai untuk membantu pemakai ulang memahaminya dan mengadaptasinya ke aplikasi baru. KELOMPOK 2 Perancangan dan Pemakaian Ulang 5
  • 6. Masalah dan Hambatan Masalah Keterangan Biaya pengembangan perangkat Jika source code untuk komponen tidak tersedia, maka biaya pemeliharaan lunak bertambah besar, karena elemen sistem yang dipakai ulang bisa makin tidak kompatibel dengan perubahan sistem. Tidak adanya duku-ngan alat Toolset CASE tidak mendukung pengembangan dengan pemakaian ulang. bantu Integrasi alat bantu ini dengan sistem library sulit bahkan tidak mungkin. Sindrom tidak dibuat disini. Beberapa perekayasa perangkat lunak kadang-kadang lebih suka menulis kembali komponen karena mereka yakin dapat membuat kembali suatu komponen yang dipakai ulang. Mempertahankan library Memenuhi library komponen dan menjamin pengembang perangkat lunak dapat komponen memakai library ini mungkin akan mahal. Teknik terbaru untuk klasifikasi, katalog, dan mengambil komponen perangkat lunak belum matang. Menemukan dan mengadaptasi Komponen perangkat lunak harus ditemukan pada suatu library, dipahami, dan komponen perangkat lunak belum diadaptasi untuk bekerja pada lingkungan yang baru. matang KELOMPOK 2 Perancangan dan Pemakaian Ulang 6
  • 7. Pandangan Generator Alternatif untuk pandangan berorientasi komponen pemakaian ulang adalah pandangan generator. Pada pendekatan ini, pengetahuan yang dapat dipakai ulang ditangkap pada sistem generator program yang dapat diprogram dalam bahasa berorientasi domain. Pemakaian berbasis generator hanya mungkin jika abstraksi domain dan pemetaannya pada kode eksekusi dapat diidentifikasi. KELOMPOK 2 Perancangan dan Pemakaian Ulang 7
  • 8. Pemakaian Ulang Berbasis Generator KELOMPOK 2 Perancangan dan Pemakaian Ulang 8
  • 9. Pemakaian Berbasis Generator yang Berhasil digunakan • Generator aplikasi untuk pemetaan bisnis. Inputnya berupa 4GL atau interaktif seluruhnya dimana pengguna mendefinisikan tampilan dan aksi pemrosesan. Outputnya berupa program seperti COBOL atau SQL. • Generator parser untuk pemrosesan bahasa. Inputnya berupa Grammar yang mendeskripsikan bahasa dan Outputnya berupa parser bahasa. • Generator kode pada CASE tool. Inputnya berupa desain perangkat lunak, dan Outputnya berupa program yang mengimplementasikan sistem yang dirancang. KELOMPOK 2 Perancangan dan Pemakaian Ulang 9
  • 10. Keuntungan Pandangan Generator Lebih mudah bagi pemakai untuk mengembangkan program dengan menggunakan generator dibandingkan dengan pendekatan berbasis komponen lainnya terhadap pemakaian ulang. KELOMPOK 2 Perancangan dan Pemakaian Ulang 10
  • 11. Pengembangan Berbasis Komponen Pengembangan berbasis komponen atau rekayasa perangkat lunak berbasis komponen muncul pada akhir tahun 1990-an sebagai pendekatan berbasis pemakaian ulang terhadap pengembangan sistem perangkat lunak. Motivasinya adalah kefrustrasian bahwa pengembangan berorientasi objek tidak berkembang menjadi pemakaian ulang yang ekstensif sebagaimana diperkirakan pada awalnya. Komponennya lebih abstrak dari kelas objek dan dapat dianggap sebagai penyedia layanan yang berdiri sendiri. Ketika sistem membutuhkan layanan, sistem memanggil komponen untuk menyediakan layanan tersebut tanpa peduli di mana komponen tersebut berjalan atau bahasa pemrograman yang dipakai untuk mengembangkannya. KELOMPOK 2 Perancangan dan Pemakaian Ulang 11
  • 12. Karakteristik Komponen yang dapat dipakai ulang 1. Komponen merupakan entitas yang dapat dieksekusi dan independen. Source code tidak tersedia sehingga komponen tidak dikompilasi dengan komponen sistem lain. 2. Komponen mengeluarkan interface mereka dan semua interaksi melalui inter-face tersebut. Interface komponen dinyatakan dalam operasi yang diparamete-risasi dan status internalnya tidak pernah diperlihatkan. KELOMPOK 2 Perancangan dan Pemakaian Ulang 12
  • 13. Komponen didefinisikan oleh interfacenya dan, dalam kasus yang paling umum, dapat dianggap memiliki dua interface yang berhubungan • Interface provides, yaitu interface yang mendefinisikan layanan yang disediakan oleh komponen tersebut • Interface requires, yaitu interface yang menspesifikasi layanan apa yang harus tersedia dari sistem yang memakai komponen itu. Jika ini tidak disediakan, maka komponen tidak akan bekerja. KELOMPOK 2 Perancangan dan Pemakaian Ulang 13
  • 14. Contoh : Komponen layanan pencetakan Print Sevice Interface requires Interface provides GetPDfile Print PrinterInt GetQueue Remove Transfer Register UnRegister KELOMPOK 2 Perancangan dan Pemakaian Ulang 14
  • 15. Tingkat Abstaksi Meyer (1999) mengidentifikasi lima tingkat abstraksi: 1. Abstraksi fungsional dimana komponen mengimplementasi satu fungsi, misalnya fungsi matematika. 2. Pengelompokan kasual dimana komponen merupakan sekumpulan entitas yang ber-hubungan longgar (loosely related) yang mungkin berupa deklarasi data, fungsi, dsb. 3. Abstraksi data dimana komponen merepresentasikan abstraksi data atau kelas pe-rangkat lunak bahasa berorientasi objek. 4. Abstraksi cluster dimana komponen merupakan sekumpulan kelas yang berhubungan yang bekerja sama. Kelas-kelas ini kadang-kadang dinamakan kerangka kerja. 5. Abstraksi sistem dimana komponen merupakan sistem yang sepenuhnya berdiri sendiri. KELOMPOK 2 Perancangan dan Pemakaian Ulang 15
  • 16. Pengembangan Berorientasi Komponen Pengembangan berorientasi komponen dapat diintegrasikan ke dalam proses pengembangan sistem dengan menggunakan kegiatan pemakaian ulang yang spesifik Rancangan Cari komponen Spesifikasi Pakai komponen arsitektur yang dapat dipakai Komponen yang ditemukan sistem ulang Proses pemakaian ulang oportunistik KELOMPOK 2 Perancangan dan Pemakaian Ulang 16
  • 17. Proses implementasi sistem dengan menggunakan komponen biasanya merupa-kan proses pembuatan prototipe atau proses pengembangan inkremental. Bahasa pemrograman standar seperti Java dapat digunakan dengan komponen pada library yang direferensi dari program. Alternatifnya (dan lebih umum) digunakan bahasa scripting yang khusus dirancang untuk integrasi komponen yang dapat dipakai ulang untuk mendukung pengembangan program yang cepat. KELOMPOK 2 Perancangan dan Pemakaian Ulang 17
  • 18. Pengembangan dengan Pemakaian Ulang Modifikasi Buat garis besar Cari komponen persyaratan menurut persyaratan yang dapat komponen yang sistem dipakai ulang didapat Rancang sistem Cari komponen Perancangan dengan memakai yang dapat arsitektural komponen yang dipakai ulang dapat dipakai ulang KELOMPOK 2 Perancangan dan Pemakaian Ulang 18
  • 19. Kerangka Kerja Aplikasi Pemakaian ulang paling baik didukung pada proses pengembangan berorientasi objek melalui abstraksi yang tidak terlalu detil, yang disebut sebagai kerangka kerja (framework) Kerangka kerja (atau kerangka kerja aplikasi) merupakan desain subsistem yang terdiri dari sekumpulan kelas yang abstrak dan konkret, dan berbagai interface di antara mereka (Wirfs-Brock dan Johnson, 1990). KELOMPOK 2 Perancangan dan Pemakaian Ulang 19
  • 20. Kelas Kerangka Kerja Fayad dan Schmidt (1997) mengidentifikasi tiga kelas kerangka kerja: 1. Kerangka kerja infrastruktur sistem yang mendukung pengembangan infrastruktur sistem seperti komunikasi, interface user dan compiler (Schmidt, 1997). 2. Kerangka kerja integrasi middleware (perangkat menengah) yang terdiri dari satu set standar dan kelas objek yang berhubungan yang mendukung komunikasi dan pertukaran informasi komponen. 3. Kerangka kerja aplikasi perusahaan yang berhubungan dengan domain aplikasi yang spesifik seperti sistem telekomunikasi atau finansial (Baumer et al., 1997). Kerangka-kerangka kerja ini memiliki pengetahuan domain aplikasi dan mendukung pengembangan aplikasi end-user. KELOMPOK 2 Perancangan dan Pemakaian Ulang 20
  • 21. Kerangka Kerja Model-View-Controller Lihat message Input user Status view modifikasi Status kontroler Metode View Metode kontroler Query dan Edit model update model Status model Metode model KELOMPOK 2 Perancangan dan Pemakaian Ulang 21
  • 22. MVC Kerangka kerja ini pada awalnya diusulkan pada tahun 1980-an sebagai pendekatan terhadap perancangan GUI yang memungkinkan presen-tasi multipel dart sebuah objek dan gaya interaksi yang berbeda dengan setiap presentasi ini. Kerangka kerja MVC mendukung presentasi data dengan cara-cara yang berbeda dan interaksi yang terpisah dengan setiap presentasi ini. Ketika data dimodifikasi melalui salah satu part presentasi tersebut, semua presentasi lain di-update. KELOMPOK 2 Perancangan dan Pemakaian Ulang 22
  • 23. Pemakaian Ulang Produk COST COST, Commercial Off-The-Shelf Systems merupakan komponen- komponen dari sistem pemakaian ulang yang ditawarkan oleh vendor pihak ketiga. KELOMPOK 2 Perancangan dan Pemakaian Ulang 23
  • 24. Masalah Integrasi COST Boehm (1999) membahas empat masalah dengan integrasi sistem COTS : 1. Tidak adanya kontrol terhadap fungsionalitas dan kinerja. 2. Masalah dengan kemampuan antar operasi sistem COTS. 3. Tidak ada kontrol terhadap evolusi sistem. 4. Dukungan dari vendor COTS. KELOMPOK 2 Perancangan dan Pemakaian Ulang 24
  • 25. Keuntungan COST Keuntungan pemakaian ulang produk COTS sangat signifikan karena sistem-sistem ini memberikan begitu banyak fungsio-nalitas bagi pemakai ulang. Usaha implementasi yang berbulan-bulan atau bahkan bertahun-tahun dapat dipersingkat jika sistem yang ada dipakai ulang dan waktu pengembangan sistem pun diperkecil secara drastis. KELOMPOK 2 Perancangan dan Pemakaian Ulang 25
  • 26. Pengembangan Komponen Untuk Pemakaian Ulang Proses pengembangan komponen yang ideal harus merupakan proses berbasis pengalaman, di mana komponen pemakaian ulang khusus dibuat dari komponen yang ada yang telah dipakai ulang dengan cara yang oportunis. Dengan meng-gunakan pengetahuan mengenai masalah pemakaian ulang dan adaptasi komponen yang dibutuhkan untuk mendukung pemakaian ulang, versi komponen yang lebih generik, yang lebih dapat dipakai ulang, dapat dibuat. KELOMPOK 2 Perancangan dan Pemakaian Ulang 26
  • 27. Karakteristik Komponen yang Dapat Dipakai Ulang 1. Komponen harus merefleksikan abstraksi domain yang stabil. Abstraksi do-main yang stabil merupakan konsep mendasar pada domain aplikasi yang berubah perlahan. 2. Komponen harus menyembunyikan cara statusnya direpresentasikan dan harus menyediakan operasi yang memungkinkan status tersebut diakses dan di-up-date. 3. Komponen harus seindependen mungkin. Idealnya, sebuah komponen harus berdiri sendiri sehingga komponen tidak memerlukan komponen lain untuk beroperasi. 4. Semua eksepsi harus merupakan bagian dari interface komponen. Komponen tidak boleh menangani eksepsi sendiri karena aplikasi yang berbeda akan memiliki persyaratan yang berbeda untuk penanganan eksepsi. KELOMPOK 2 Perancangan dan Pemakaian Ulang 27
  • 28. Kerabat Aplikasi Salah satu pendekatan yang paling efektif bagi pemakaian ulang didasarkan sekitar kerabat aplikasi. Sebuah kerabat aplikasi atau jalur produk merupakan satu set aplikasi yang memiliki arsitektur spesifik domain Namun demikian, setiap aplikasi khusus merupakan spesialisasi dalam satu hal. Inti umum dari kerabat aplikasi dipakai ulang setiap kali dibutuhkan aplikasi bare. Pengembangan barn bisa melibatkan penulisan beberapa komponen tambahan dan adaptasi beberapa komponen pada aplikasi untuk memenuhi permintaan baru. KELOMPOK 2 Perancangan dan Pemakaian Ulang 28
  • 29. Kerabat Aplikasi yang dapat Dikembangkan 1. Spesialisasi platform, di mana berbagai versi aplikasi dikembangkan untuk ber-bagai platform. 2. Spesialisasi konfigurasi, di mana berbagai versi aplikasi dibuat untuk menangani berbagai peranti periferal. 3. Spesialisasi fungsional, di mana berbagai versi aplikasi dibuat untuk pelanggan dengan persyaratan yang berbeda. KELOMPOK 2 Perancangan dan Pemakaian Ulang 29
  • 30. Library user access Add Delete Query Browse Admin Report Issue Return Users Resource Screen spec. Report spec. desc. Library Holdings Database Sistem perpustakaan KELOMPOK 2 Perancangan dan Pemakaian Ulang 30
  • 31. Lankah-Langkah Proses Generik 1. Elisitasi persyaratan stakeholder yang didasarkan atas proses rekayasa persyaratan normal. 2. Pilih anggota kerabat yang paling sesuai. Persyaratan dianalisis dan anggota kerabat yang paling sesuai untuk persyaratan-persyaratan ini dipilih untuk dimodifikasi. 3. Negosiasi ulang persyaratan. Sementara makin banyak muncul detil perubahan yang dibutuhkan bagi sistem yang telah ada dan proyek direncanakan 4. Adaptasi sistem yang sudah ada. Modul-modul baru dikembangkan untuk sistem yang sudah ada dan modul-modul sistem yang telah ada, diadaptasi untuk memenuhi persyaratan-persyaratan baru. 5. Serahkan anggota kerabat yang baru. Anggota kerabat aplikasi yang baru diserahkan kepada pelanggan. KELOMPOK 2 Perancangan dan Pemakaian Ulang 31
  • 32. Pengembangan Anggota Kerabat Negosiasi ulang persyaratan Esilitasi Pilih anggota persyaratan kerabat yang stakeholder paling sesuai Serahkan Adaptasi sistem anggota yang sudah ada kerabat baru KELOMPOK 2 Perancangan dan Pemakaian Ulang 32
  • 33. Pola Perancangan Pola rancangan (Gamma et al., 1995) diturunkan dari ide yang dikemukakan oleh Christopher Alexander (Alexander et al., 1977), yang mengusulkan bahwa ada pola tertentu pada rancangan pembangunan yang umum dan sekaligus memaskan dan efektif. 'Pola' merupakan deskripsi masalah dan inti solusinya sehingga solusi tersebut dapat dipakai ulang pada setting yang berbeda. Pola ini tidak merupakan spesifikasi yang rinci. Melainkan, Anda dapat menganggapnya sebagai deskripsi dari kebijaksanaan dan pengalaman yang terakumulasi. Pola ini merupakan solusi terhadap masalah umum yang telah diuji dengan baik. KELOMPOK 2 Perancangan dan Pemakaian Ulang 33
  • 34. Elemen Penting Pola Rancangan Gamma et al. (1995) mendefinisikan empat elemen yang penting pada pola rancangan: 1. Nama yang merupakan referensi yang bermakna terhadap pola. 2. Deskripsi area masalah yang menjelaskan kapan pola tersebut dapat diterapkan. 3. Deskripsi solusi yang mendeskripsikan bagian-bagian solusi perancangan, hu-bungannya dan tanggung jawabnya. 4. Pernyataan konsekuensi-hasil dan pertukaran-penerapan pola tersebut. Pernyataan ini digunakan untuk membantu perancang memahami apakah suatu pola dapat diterapkan secara efektif pada suatu situasi tertentu. KELOMPOK 2 Perancangan dan Pemakaian Ulang 34
  • 35. RPL | PERANCANGAN PERANGKAT LUNAK 35 REAL-TIME