• Tidak ada hasil yang ditemukan

Object-Oriented Reengineering Patterns and Techniques Wahyu Andhyka Kusuma, S.Kom

N/A
N/A
Protected

Academic year: 2021

Membagikan "Object-Oriented Reengineering Patterns and Techniques Wahyu Andhyka Kusuma, S.Kom"

Copied!
40
0
0

Teks penuh

(1)

Object-Oriented Reengineering

Patterns and Techniques

Wahyu Andhyka Kusuma, S.Kom [email protected] 081233148591

(2)

Topik

• Elemen Perangkat Lunak

• Konsep Dasar Perangkat Lunak

• Perencanaan Proyek Perangkat Lunak • Konsep dan Prinsip Analisis

• Pemodelan Analisis

• Prinsip dan Konsep Desain

• Teknik Pengujian Perangkat Lunak • Strategi Pengujian Perangkat Lunak

(3)

Topik

• Elemen Perangkat Lunak

• Konsep Dasar Perangkat Lunak

• Perencanaan Proyek Perangkat Lunak • Konsep dan Prinsip Analisis

• Pemodelan Analisis

• Prinsip dan Konsep Desain

• Teknik Pengujian Perangkat Lunak • Strategi Pengujian Perangkat Lunak

(4)

Elemen Perangkat Lunak

• Terbagi atas 2 bagian, yaitu : – Hardware Engineering – Software Engineering

• Terkait dengan SISTEM BERBASIS KOMPUTER yang memiliki 5 elemen, yaitu : – Software. – Hardware. – Brainware. – Database. – Procedure.

(5)

Elemen Perangkat Lunak

• Dari kelima elemen tersebut dimasukan ke dalam kriteria pemilihan konfigurasi sistem berdasarkan alokasi fungsi dan performance, yaitu :

– Project Consideration. – Business Consideration. – Technical Consideration. – Manufacturing Evaluation. – Human Issues. – Environmental Interface. – Legal Consideration.

(6)

Topik

• Elemen Perangkat Lunak

• Konsep Dasar Perangkat Lunak

• Perencanaan Proyek Perangkat Lunak • Konsep dan Prinsip Analisis

• Pemodelan Analisis

• Prinsip dan Konsep Desain

• Teknik Pengujian Perangkat Lunak • Strategi Pengujian Perangkat Lunak

(7)

Konsep Dasar Perangkat Lunak

• Ilmu yang mempelajari tehnik pembuatan software yang baik dengan pendekatan tehnik (

Engineering ap-proach)

• Ada beberapa cara / fase – Fase Perencanaan – Fase Pengembangan – Fase Pemeliharaan

(8)

Evolusi Software

Era ke-1 : Era ke-2 :

- Batch orientation - Multi user - Limmited distribution - Real time - Custummer software - Database

Era ke-3 : Era ke-4 :

- Distibuted system - Expert system - Embedded intellegence - A I Machine

- Low cost hardware - Parallel architecture - Consumer infact

(9)

Instruksi

Atau program komputer yang ketika dieksekusi

akan memberi fungsi dan hasil yang diinginkan.

Struktur data

Yang memungkinkan program memanipulasi

informasi

Dokumen

Yang menggambarkan operasi dan penggunaan

(10)

• Software merupakan elemen sistem logik dan bukan elemen sistem fisik seperti hardware

• Elemen itu tidak aus, tetapi bisa rusak.

• Elemen software itu direkayasa atau dikembangkan dan bukan dibuat di pabrik seperti hardware

• Software itu tidak bisa dirakit.

(11)

• Bentuk Bahasa • Bentuk Translator • Bentuk Mesin :

Komponen Software ?

LANGUAGE FORM T RANSLAT OR MACHINE LANGUAGE HIGH LEVEL MIDDLE LEVEL

(12)

1. Sistem Software

2. Real Time Software

Perlu dicatat bahwa istilah real time berbeda dari istilah

interactive atau time sharing. Sistem real time harus

memberikan respons pada waktu yang ditentukan,

sedangkan pada sistem interactive atau time sharing

respons time biasanya melebihi batas waktu yang

ditentukan tanpa merusak hasil.

3. Business Software

4. Engineering and Sciencetific Sofware

5. Emdebed Software

6. PC Software

7. Artificial Intelegent Software

(13)

• Krisis Software ?

• Masalah ?

• Penyebab ?

Model Software Engineering

Fritz Badar (soft. yg ekonomis), terdiri dari 3 elemen :

1. Metode

2. Peralatan

3. Prosedur

(14)

Software engineering paradigma (ada 3) : 1. Classic Life Cycle Paradigma

Model Software Engineering

(cont.)

SIST EM ENGINEERING ANALYS DESIGN CODE T EST ING M AINT ENANCE

(15)

2. Prototype Paradigma

Model Software Engineering

(cont.)

REQUIM ENT S GAT HERING

"QUICK DESIGN"

BUILD PROT OT YPE

EVALUAT ED AND REFINEM ENT S

(16)

3. Fourth Generation Technique Paradigma

Model Software Engineering

(cont.)

REQUIM ENTS GAT HERING

"DESIGN STRAT EGICS"

IMPLEM ENTATION USING 4GT

(17)

4. Model Kombinasi

Model Software Engineering

(cont.)

REQUIMENTS GATHERINGS PROTOTYPING PROTOTYPE APPLY 4GL EVALUATE ENGINEER PRODUCT CLASSIC LIFE CYCLE DAPAT LANGSUNG JIKA PENDEKATANNYA JELAS

(18)

Topik

• Elemen Perangkat Lunak

• Konsep Dasar Perangkat Lunak

• Perencanaan Proyek Perangkat Lunak • Konsep dan Prinsip Analisis

• Pemodelan Analisis

• Prinsip dan Konsep Desain

• Teknik Pengujian Perangkat Lunak • Strategi Pengujian Perangkat Lunak

(19)

OBSERVASI PADA ESTIMASI

• Planning • Estimasi

– Project Complexity (kompleksitas proyek). – Project Size (ukuran proyek).

(20)

ESTIMASI PROYEK PERANGKAT LUNAK

• Akurasi estimasi proyek PL didasarkan pada :

• Tingkat dimana perencana telah dengan tepat mengestimasi ukuran produk yang akan dibuat .

• Kemampuan mengest imasi ukuran ke dalam kerja manusia, waktu kalender,dan dolar.

• Tingkat dimana rencana proyek mencerminkan kemampuan t im PL. • Stabilitas syarat produk serta lingkungan yang mendukung usaha

(21)

ESTIMASI PROYEK PERANGKAT LUNAK

Putnam dan Myers mengusulkan 4 masalah penentuan ukuran : • Fuzzy-logic sizing (logika kabur).

• Function point sizing.

• Standard component sizing. • Change sizing.

Barry Boehm memperkenalkan hirarki model estimasi PL dengan nama COCOMO (COnstructive COst MOdel = Model Biaya Konstruktif) : • Model COCOMO Dasar.

• Model COCOMO Intermediate. • Model COCOMO Advance.

(22)

ESTIMASI PROYEK PERANGKAT LUNAK

Pada aplikasi PL, dari segi biaya sering lebih efektif membeli daripada mengembangkan sendiri. Pada keputusan make-buy dengan pilihan : • PL dapat dibeli (atau lisensi) off-the-self.

• Komponen PL full-experience dan partial-experience. • PL dapat dibuat custom-built oleh kontraktor luar.

(23)

Topik

• Elemen Perangkat Lunak

• Konsep Dasar Perangkat Lunak

• Perencanaan Proyek Perangkat Lunak • Konsep dan Prinsip Analisis

• Pemodelan Analisis

• Prinsip dan Konsep Desain

• Teknik Pengujian Perangkat Lunak • Strategi Pengujian Perangkat Lunak

(24)

Jenis dan Tujuan Analisis

Analisis merupakan sebuah : • Penemuan

• Perbaikan • Pemodelan

• Spesifikasi (baru) Tujuan Analisis Sistem

• Mendefinisikan masalah secara tepat • Menyusun alternatif penyelesaian

• Memilih dan mempertimbangkan satu dari alternatif tersebut • Menyusun spesifikasi logis untuk penyelesaian

(25)

Topik

• Elemen Perangkat Lunak

• Konsep Dasar Perangkat Lunak

• Perencanaan Proyek Perangkat Lunak • Konsep dan Prinsip Analisis

• Pemodelan Analisis

• Prinsip dan Konsep Desain

• Teknik Pengujian Perangkat Lunak • Strategi Pengujian Perangkat Lunak

(26)

PEMODELAN ANALISIS

Perbedaan antara metoda analisis dan perancangan sistem dengan paradigma konvensional dibandingkan dengan paradigma berorientasi objek (OOAD) : 1. Paradigma Konvensional

• Fokus pada Proses (Input-Proses-Output); • Data terpisah dari Prosedur;

• Dekomposisi Fungsional. Sistem diurai menjadi sejumlah fungsi (prosedur, logika) dengan sistem tersentral isasi (struktur terhirarki) dimana data dapat dibagi dan digunakan secara bersama.

2. Paradigma Berorientasi Objek

• Fokus pada Domain Objek, tidak pada prosedur; • Data dan Prosedur disimpan dalam Objek;

• Dekomposisi Data. Sistem diurai kedalam sejumlah obyek (konsep, abstrak, benda) dalam dunia nyata yang saling berkomunikasi dan

(27)
(28)

PEMODELAN ANALISIS

• Paradigma Konvensional

(29)

Topik

• Elemen Perangkat Lunak

• Konsep Dasar Perangkat Lunak

• Perencanaan Proyek Perangkat Lunak • Konsep dan Prinsip Analisis

• Pemodelan Analisis

• Prinsip dan Konsep Desain

• Teknik Pengujian Perangkat Lunak • Strategi Pengujian Perangkat Lunak

(30)

FASE PENGEMBANGAN DAN DESAIN PERANGKAT LUNAK

Fase pengembangan terdiri dari 3 langkah : • Design

• Code Generation (manual or automatic) • Testing

Menggunakan metodelogi :

• Data Design -> difokuskan pada definisi dari struktur Data

• Architectural Design -> mendefinisikan hubungan antara elemen struktur utama dari program

• Procedural Design -> mengubah struktur elemen ke dalam prosedur software

(31)

Proses Design

Software design dibagi dalam 2 tahap :

• Preliminary Design. Pada tahap ini difokuskan dengan transformasidari keperluan / kebutuhan ke dalam data dan arsitektur software

• Detail Design. Difokuskan pada penghalusan representasi arsitektur yang berisi struktur data detail dan algoritma untuk software

(32)

Topik

• Elemen Perangkat Lunak

• Konsep Dasar Perangkat Lunak

• Perencanaan Proyek Perangkat Lunak • Konsep dan Prinsip Analisis

• Pemodelan Analisis

• Prinsip dan Konsep Desain

• Teknik Pengujian Perangkat Lunak • Strategi Pengujian Perangkat Lunak

(33)

Rencana Pengujian

• Proses testing

• Pelacakan Kebutuhan • Item yg diuji

• Jadwal Testing

• Prosedur Pencatatan Hasil dan Prosedur • Kebutuhan akan Hardware dan Software • Kendala-kendala

(34)

Test Data dan Kasus Test

• Test data: Input yang yang direncankan digunakan oleh sistem.

• Test cases: Input yang digunakan untuk menguji sistem dan memprediksi output dari input jika sistem beroperasi sesuai dengan spesifikasi

(35)

• Component Testing. Pengujian komponen-komponen program biasanya dilakukan oleh component developer (kecuali untuk system kritis). Terdiri dari :

– Unit Testing digunakan untuk menguji setiap modul untuk menjamin setiap modul menjalankan fungsinya dengan baik. Metode yang

dilakukan : Black Box Testing danWhite – Box Testing.

– Module Testing digunakan untuk mengecek apakah struktur kendali sudah memetakan kinerja kesuluruhan modul secara tepat.

– Path Testing. Tujuannya meyakinkan bahwa himpunan test case akan menguji setiap path pada suatu program paling sedikit satu kali.

(36)

Topik

• Elemen Perangkat Lunak

• Konsep Dasar Perangkat Lunak

• Perencanaan Proyek Perangkat Lunak • Konsep dan Prinsip Analisis

• Pemodelan Analisis

• Prinsip dan Konsep Desain

• Teknik Pengujian Perangkat Lunak • Strategi Pengujian Perangkat Lunak

(37)

SASARAN PENGUJIAN

• Pengujian adalah proses eksekusi suatu program dengan maksud menemukan kesalahan.

• Test case yang baik adalah test case yang memiliki probabilitas tinggi

untuk menemukan kesalahan yang belum pernah ditemukan sebelumnya. • Pengujian yang sukses adalah pengujian yang mengungkap semua

(38)

PRINSIP PENGUJIAN (Davis)

• Semua pengujian harus dapat ditelusuri sampai ke persyarat an pelanggan.

• Pengujian harus direncanakan lama sebelum pengujian itu dimulai. • Prinsip Pareto berlaku untuk pengujian PL.

• Pengujian harus mulai “dari yang kecil ” dan berkembang ke penguj ian “yang besar”.

• Pengujian yang mendalam t idak mungkin.

(39)

PENGUJIAN INTEGRASI

• Top Down Integration. Modul utama digunakan sebagai test driver dan stub yang menggantikan seluruh modul yang secara langsung berada di bawah modul kontrol utama.

• Bottom Up Integration. Modul tingkat bawah digabungkan ke dalam cluster yang memperlihatkan subfungsi PL.

(40)

PENGUJIAN VALIDASI

• Alpha Testing • Beta Testing • Recovery Testing • Security Testing • Strees Testing

Referensi

Dokumen terkait

Selanjutnya berdasarkan hasil pengolahan data, dapat diketahui gambaran masalah berat yang dirasakan oleh 5 orang siswa kelas VIII 4 sesudah diberikan layanan

bahwa berdasarkan hasil merger Perusahaan Daerah Bank Perkreditan Rakyat di Daerah Kabupaten Bekasi, Daerah Kabupaten Majalengka, Daerah Kabupaten Ciamis, dan Daerah

Hasil penelitian ini mendukung penelitian yang dilakukan oleh Schilder (2009) bahwa narsisme berhubungan positif signifikan terhadap pengambilan risiko dan

Metode peramalan deret waktu data historis dianalisa untuk mengidentifikasi pola data dan diasumsikan bahwa pola data tersebut akan terus berlanjut pada masa yang akan datang..

Organisasi sosial (social institution) dan pendidikan adalah suatu lembaga yang berkaitan dengan cara bagaimana seseorang berhubungan dengan orang lain,

Literasi Mikrobiologi pada Aspek “ Pengetahuan Dasar ” pada Siswa MA Program IPA [SMA], Mahasiswa yang Belum Mendapatkan Perkuliahan. Mikrobiologi [PT-Pra MO], dan Mahasiswa

Pengguna hak pilih dalam Daftar Pemilih Tambahan-2 (DPTb-2)/pengguna KTP atau identitas kependudukan lainnya4. Jumlah seluruh pengguna Hak Pilih

sosial terhadap kepatuhan pasien menjalankan hemodialisa di Rumah Sakit Umum.