pendahuluan rekayasa perangkat lunak ii

32
Alif Finandhita Teknik Informatika UNIKOM [email protected] Pendahuluan Rekayasa Perangkat Lunak II

Upload: others

Post on 18-Feb-2022

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Pendahuluan Rekayasa Perangkat Lunak II

Alif Finandhita

Teknik Informatika UNIKOM

[email protected]

Pendahuluan Rekayasa Perangkat Lunak II

Page 2: Pendahuluan Rekayasa Perangkat Lunak II

AGENDA PERKULIAHAN

Deskripsi dan Silabus Mata Kuliah

Penilaian dan Referensi

Pengantar Rekayasa Perangkat Lunak II

2

Page 3: Pendahuluan Rekayasa Perangkat Lunak II

3

Page 4: Pendahuluan Rekayasa Perangkat Lunak II

Deskripsi Mata Kuliah

4

Sifat : Wajib

Prasyarat : Rekayasa Perangkat Lunak I

Waktu : 3 SKS

Page 5: Pendahuluan Rekayasa Perangkat Lunak II

Silabus Mata Kuliah

5

Pendahuluan Rekayasa Perangkat Lunak II

Pengantar OOAD

UML (Per diagram untuk analisis dan desain)

Page 6: Pendahuluan Rekayasa Perangkat Lunak II

6

Page 7: Pendahuluan Rekayasa Perangkat Lunak II

Komponen Penilaian

7

30% TUGAS + 30% UTS + 40% UAS

Indeks Nilai

A 80 < NA < 100

B 68 < NA < 79

C 56 < NA < 67

D 45 < NA < 55

E 0 < NA < 44

Page 8: Pendahuluan Rekayasa Perangkat Lunak II

Referensi

8

Roger S. Pressman, Software Engineering: A Practitioner’s Approach, 7th

edition.

Bernd Bruegge & Allen H. Dutoit, Object-Oriented Software Engineering

Using UML, Patterns, and Java

Kendall, System Analysis and Design, 8th edition.

Slide perkuliahan.

Page 9: Pendahuluan Rekayasa Perangkat Lunak II

9

Page 10: Pendahuluan Rekayasa Perangkat Lunak II

AGENDA PERKULIAHAN

OOAD

Objek VS Kelas

OOAD VS OOP

Konsep Dasar OOAD

UML Sebagai tools OOAD

10

Page 11: Pendahuluan Rekayasa Perangkat Lunak II

OOAD

Singkatan dari Object Oriented Analysis and Design

Salah satu pendekatan analisis dan desain yang bisa digunakan selain

analisis terstruktur.

OOAD bukan dipilih berdasarkan bahasa pemrograman yang digunakan.

Pola pikir yang menitik beratkan pada perekayasaan objek beserta relasinya.

11

Page 12: Pendahuluan Rekayasa Perangkat Lunak II

Pengertian OOAD

Analysis - Pemahaman, menemukan, dan mendeskripsikan konsep di dalam satu

domain masalah.

Design - Pemahaman dan pendeskripsian solusi dari perangkat lunak yang

merepresentasikan konsep analisis dan akan diimplementasikan pada kode program

yang dibuat.

OOAD - Analisis dan Desain menggunakan pendekatan orientasi objek. Sebuah

pendekatan pembangunan perangkat lunak yang menekankan pada solusi logika

berbasis objek.

12

Page 13: Pendahuluan Rekayasa Perangkat Lunak II

Objek

13

Page 14: Pendahuluan Rekayasa Perangkat Lunak II

Definisi Objek

Objek adalah konsepsi atau benda di dunia nyata yang bisa dibedakan

satu dengan yang lainnya.

Objek dapat dibentuk dari domain permasalahan yang diambil.

Objek mempunyai identitas, properti, dan tingkah laku.

Objek merupakan hasil instansiasi dari kelas.

14

Page 15: Pendahuluan Rekayasa Perangkat Lunak II

Definisi Kelas

Sekumpulan objek yang memiliki kemiripan dalam hal properti, atribut,

behavior, dan semantik.

Proses klasifikasi dilakukan untuk membentuk kelompok dari beberapa

objek yang memiliki kemiripan.

15

Page 16: Pendahuluan Rekayasa Perangkat Lunak II

Ilustrasi Kelas

16

Buku

-Kode_Buku:integer-Judul_Buku:string-Pengarang: string-ISBN: string

+munculkanJudul(): string+dipinjam(): void+dibaca(): void

Nama Kelas

Atribut

Method/Behavior

Page 17: Pendahuluan Rekayasa Perangkat Lunak II

Objek VS Kelas

17

Kelas

1st instansiasi

objek

2nd instansiasi

objek

nth instansiasi

objek

Page 18: Pendahuluan Rekayasa Perangkat Lunak II

OOAD VS OOP

18

S

T

A

R

T

F

I

N

I

S

H

OOAD

Objek

OOP

Kelas

OOAD

Kelas

OOP

Objek

Klasifikasi dan Abstraksi

Instansiasi

Page 19: Pendahuluan Rekayasa Perangkat Lunak II

Konsep Dasar OOAD

Abstraksi

Encapsulation

Inheritance

Polimorphisme

19

KEBUTUHAN

DOMAIN PERMASALAHAN (Objek Dunia Nyata)

DOMAIN SOLUSI (Interface Objects, Application

Objects, Utility Objects)

Analisis

Desain

Page 20: Pendahuluan Rekayasa Perangkat Lunak II

Definisi Abstraksi

Fokus terhadap esensi.

Menghilangkan sejumlah detail

Fokus terhadap “is and does” dari sebuah objek.

20

Page 21: Pendahuluan Rekayasa Perangkat Lunak II

Definisi Encapsulation

Lebih dikenal sebagai information hiding.

Melakukan pembungkusan atribut dan method pada sebuah kelas.

21

Page 22: Pendahuluan Rekayasa Perangkat Lunak II

Ilustrasi Abstraksi dan Encapsulation

22

Page 23: Pendahuluan Rekayasa Perangkat Lunak II

Definisi Inheritance

Menyatakan pewarisan atribut atau method dari super class ke sub class.

Digunakan untuk mendukung konsep reusable code.

Hak akses dari suatu atribut dan method memberikan pengaruh terhadap

pewarisan.

23

Page 24: Pendahuluan Rekayasa Perangkat Lunak II

Ilustrasi Inheritance

24

PersegiPanjang

#panjang: integer#lebar: integer

+PersegiPanjang()+void setPanjang(int panjang)+int getPanjang()+void setLebar(int lebar)+int getLebar()+int hitungKeliling()+int hitungLuas()

Balok

-tinggi: integer

+Balok()+void setTinggi(int tinggi)+int getTinggi()+int hitungLuasPermukaan()+int hitungVolume()

Page 25: Pendahuluan Rekayasa Perangkat Lunak II

Definisi Polimorphisme

Perbedaan konten method yang ada pada dua buah objek atau lebih pada

esensi method yang sama.

Konsep overloading dan overriding digunakan sebagai implementasi

polimorphisme.

Sub class diizinkan mempunyai isi method yang berbeda dari method

super classnya.

25

Page 26: Pendahuluan Rekayasa Perangkat Lunak II

Ilustrasi Polimorphisme

26

Page 27: Pendahuluan Rekayasa Perangkat Lunak II

UML Sebagai Tools OOAD

OOAD

27

UML

Page 28: Pendahuluan Rekayasa Perangkat Lunak II

Sejarah UML

OO languages muncul pada pertengahan tahun 70 sampai 80.

Dicetuskan oleh “Three Amigos” yang terdiri dari Grady Booch, James

Rumbaugh, Ivar Jacobson.

UML digunakan sebagai alat bantu dalam pemodelan di OOAD.

28

Page 29: Pendahuluan Rekayasa Perangkat Lunak II

Perbedaan Cara Pandang Analisis

29

Business Process

Places Order

Item

via

Fulfill Order

Customer

Sales

Representative

OOAD

Page 30: Pendahuluan Rekayasa Perangkat Lunak II

UML Untuk Visual Modelling

30

Page 31: Pendahuluan Rekayasa Perangkat Lunak II

UML 1.0 VS UML 2

31

31

UML 2.0: 12 diagram types

Behavioral Diagrams

Represent the dynamic aspects.

Use case

Sequence;

Collaboration

Statechart

Activity

Structural Diagrams

Represent the static aspects of a

system.

Class;

Object

Component

Deployment

Behavioral Diagrams

Use case

Statechart

Activity

Structural Diagrams

Class;

Object

Component

Deployment

Composite Structure

Package

Interaction Diagrams

Sequence;

Communication

Interaction

Overview

Timing

UML 1.x: 9 diagram types.

Page 32: Pendahuluan Rekayasa Perangkat Lunak II

32