SlideShare une entreprise Scribd logo
1  sur  66
Télécharger pour lire hors ligne
PERANCANGAN PERANGKAT LUNAK

1
Definisi :
 Perancangan perangkat lunak adalah
disiplin manajerial dan teknis yang
berkaitan dengan pembuatan dan
pemeliharaan produk perangkat lunak
secara sistematis, termasuk
pengembangan dan modifikasinya, yang
dilakukan pada waktu yang tepat dan
dengan mempertimbangkan faktor biaya.

2
 Tujuan : Memperbaiki kualitas produk

perangkat lunak, meningkatkan produktivitas

 Pengertian produk perangkat lunak :

perangkat lunak yang digunakan oleh berbagai
pengguna

 Hal-hal

yang perlu diperhatikan dalam
pengembangan sebuah produk perangkat
lunak : kebutuhan dan batasan-batasan
pengguna, mengakomodasi paling tidak
kepentingan tiga pihak, tahap ujicoba,
dokumen pendukung, pelatihan

3
Beberapa atribut yang merupakan ukuran
kualitas perangkat lunak adalah
 Maintainability, harus dapat dengan mudah

dirubah sesuai dengan perubahan kebutuhan
pengguna
 Dependability, harus dapat dipercaya
(trustworthy) sehingga pengguna dapat
menggantungkan sepenuhnya proses bisnis
mereka
 Eciency, harus esien dan tidak memakai resources
yang tinggi
 Usability, PL harus dapat digunakan(usable) oleh
penggunanya dalam memenuhi kebutuhan
mereka
4
Distribusi Upaya
 Masa hidup sebuah produk perangkat lunak
adalah 1 s/d 3 tahun dalam pengembangan
dan 5 s/d 15 tahun dalam pemakaiannya
(pemeliharannya).
 Distribusi upaya antara pengembangan dan
pemeliharaan bervariasi antara 40/60, 30/70, dan
bahkan 10/90.
 Tiga aktivitas pengembangan perangkat lunak
adalah : analisa dan perancangan, implementasi
dan pengujian.
 Tiga aktivitas pemeliharaan perangkat lunak
adalah : peningkatan kemampuan produk,
penyesuaian produk dengan lingkungan
pemrosesan baru, dan perbaikan
5
Pengemban
gan
(40%)

Pemeliharaan
(60%)

36%

16%

16%

12%

12%

8%

Analiisa
dan
peranca
ngan
6

impleme
ntasi

uji

penyesu
aian

peningk
atan

perbaik
an

Diagram distribusi upaya dalam putaran hidup sebuah
perangkat lunak (SLC)
APA YANG DISEBUT PERANGKAT
LUNAK?
 1) Instruksi (program komputer) yang bila

dieksekusi dapat menjalankan fungsi tertentu;
2) Struktur data yang dapat membuat
program memanipulasi informasi; dan 3)
Dokumen yang menjelaskan operasi dan
penggunaan program (Roger Pressman).

 Program komputer, prosedur, aturan, dan

dokumentasi yang berkaitan dengannya
serta data yang berkaitan dengan operasi
suatu sistem komputer (IEEE).

7
JENIS-JENIS PERANGKAT LUNAK
 Perangkat lunak sistem (system software)
 Perangkat lunak waktu nyata (real-time software)
 Perangkat lunak bisnis (business software)
 Perangkat lunak rekayasa dan ilmu pengetahuan

(engineering and scientific software)
 Embedded Software
 Perangkat lunak pribadi (personal software)

 Perangkat lunak intelegensia buatan (artificial

inteligent software)
 Perangkat lunak lainnya
8
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

9
SOFTWARE ENGINEERING BODY OF
KNOWLEDGE
SWEBOK Knowledge Areas:
 Software requirements
 Software design
 Software construction
 Software testing

 Software maintenance
 Software configuration management
 Software engineering management
 Software engineering process
 Software engineering tools and methods
 Software quality
10
PENGEMBANGAN PERANGKAT LUNAK
 Proses dimana persoalan/kebutuhan pemakai

(1)

diterjemahkan menjadi produk perangkat lunak
melalui suatu rangkaian aktivitas tertentu sesuai
model proses, metode, dan alat bantu yang
digunakan.

Mewakili persoalan yang akan
dibantu komputer

Produk yang dihasilkan sebagai
solusi persoalan
Proses yang dilaksanakan dengan urut-urutan
aktivitas tertentu
11
PENGEMBANGAN PERANGKAT LUNAK (2)
Elemen-elemen proses pengembangan:

12
MODEL PROSES PENGEMBANGAN
 Cara atau strategi bagaimana perangkat

lunak dibuat sedemikian rupa sehingga
produk perangkat lunak tersebut dapat
diwujudkan.

 Beberapa model proses pengembangan PL:
 Waterfall
 Incremental
 Prototyping Model
 Spiral Model
 Rational Unified Process (RUP)
 Extreme Programming (XP)
13
TUGAS :
Model Proses Pengembangan
Perangkat Lunak apa yang
pernah dikerjakan ? Uraikan,
Jelaskan dan Paparkan !!

14
BEBERAPA MODEL PROSES

 Waterfall Model

Analisis
Kebutuhan
Perancangan
Pengkodean
Pengujian
Pengoperasian
15
Kelebihan :
 Proses-prosesnya mudah dipahami dan
jelas
 Mudah dalam pengelolaan proyek
 Dokumen dihasilkan setiap akhir fase
 Sebuah fase dijalankan setelah fase
sebelumnya selesai
 Struktur sistem jelas
 Kondisi tepat SDLC Waterfall
 Kebutuhan user telah sangat dipahami
 Kemungkinan terjadinya perubahan
kebutuhan user kecil
16
Kelemahan Waterfall
 Proyek dunia nyata jarang mengikuti alur

proses
 Kesulitan jika terjadi perubahan kebutuhan
 Waktu pengerjaan bertambah
 Ada anggota tim yang harus menunggu
pekerjaan pekerja lain
 Kesabaran customer/klien

17
Incremental

18
Incremental (DEFINISI)
 Pengembangan dibagi menjadi bagian2 yang
dapat berkembang secara bertambah
(increments)
 Setiap bagian harus memenuhi fungsi-fungsi
yang diperlukan
 Kebutuhan pengguna diprioritaskan dan
prioritas tertinggi didahulukan dalam
pengembangan
 Begitu dimulai, kebutuhan yang telah
tertangani akan dibekukan sehingga
memberikan tempat bagi kebutuhan lain untuk
dapat berevolusi
19
Incremental : Kelebihan dan Kekurangan
 Kebutuhan pengguna / customer dipenuhi pada
setiap bagian yang selesai terlebih dahulu
 Bagian yang selesai terlebih dahulu menjadi
prototipe
 Resiko rendah
 Bagian yang punya prioritas tertinggi dapat dites
secara intensive
 Permasalahan
 Batasan proses tidak jelas
 Sistem kurang terstruktur
 Kemampuan aplikasi
 Untuk sistem dengan interaksi skala kecil dan
medium
 Untuk antarmuka user
20  Untuk sistem dengan masa penggunaan pendek
BEBERAPA MODEL PROSES (lanjutan)
 Prototyping Model

• Spiral Model
PERENCANAAN

ANALISIS RESIKO

Pengumpulan
Kebutuhan

Perbaikan
Prototype

Evaluasi
Prototype

Perancangan
Cepat

Bangun
Prototype
EVALUASI PEMAKAI

21

REKAYASA
Prototyping
 Membuat sebuah contoh prototipe untuk
menunjukkan kebutuhan dan desain ke
pemakai
 Harus ada versi yang dapat dijalankan
sebagai prototipe sebelum sistem
dikembangkan (bisa berupa contoh sistem
lain)
 Harus ada implementasi sistem yang
dikembangkan sebelum dibuat sebuah
sistem final

22
Spiral :
 Mendefinisikan kebutuhan dengan sedetail
mungkin
 Pembuatan desain untuk sistem yang baru
 Proses direpresentasikan dalam aktivitas
berbentuk spiral
 Setiap perulangan (loop) dalam spiral
merepresentasikan sebuah fase dalam proses
 Fase-fase tidak fix (spesikasi - design loop)
dipilih sesuai dengan yang diperlukan
 Resiko selalu secara transparan dimonitor dan
dipecahkan selama proses berlangsung
23
Spiral :
 Kelebihan
 Dapat digunakan untuk sistem yang besar
 Sangat cocok sebagai mekanisme
mengurangi resiko
 Kelemahan

 Terlalu banyak memikirkan resiko yang

akan terjadi
 Masih jarang digunakan

24
Spiral

25
BEBERAPA MODEL PROSES (lanjutan)

• Rational Unified Process

26
Rational Unified Process
 menggunakan konsep object oriented, dengan

aktifitas yang berfokus pada pengembangan
model dengan menggunakan Unified Model
Language (UML).
 Ada beberapa keuntungan dengan mengunakan
RUP di antaranya :
a. Menyediakan akses yang mudah terhadap
pengetahuan dasar bagi anggota tim.
b. Menyediakan petunjuk bagaimana
menggunakan UML secara efektif.
c. Mendukung proses pengulangan dalam
pengembangan software.
d. Memungkinkan adanya penambahan27
penambahan pada proses.
RUP (lanjutan)
e. Memungkinkan untuk secara sistematis
mengontrol perubahan- perubahan yang terjadi
pada software selama proses pengembangannya.
f. Memungkinkan untuk menjalankan test case
dengan menggunakan Rational Test
Kekurangan Pengembangan Perangkat Lunak RUP :
 Metodologi ini hanya dapat digunakan pada
pengembangan perangkat lunak yang
berorientasi objek dengan berfokus pada UML
(Unified Modeling Language

28
BEBERAPA MODEL PROSES (lanjutan)

29
Example user stories.

•Students can purchase monthly parking passes online.
•Parking passes can be paid via credit cards.
•Parking passes can be paid via PayPal ™.
•Professors can input student marks.
•Students can obtain their current seminar schedule.
•Students can order official transcripts.
•Students can only enroll in seminars for which they have
prerequisites.
•Transcripts will be available online via a standard browser.

30
Important considerations for writing user
stories:
http://www.agilemodeling.com/artifacts/us
erStory.htm
Stakeholders write user stories
Use the simplest tool.
Remember non-functional
requirements
Indicate the estimated size.
Indicate the priority.
Optionally include a unique identifier.
31
Extreme Programming (XP) adalah metode
 pengembangan perangkat lunak yang ringan dan
termasuk salah satu agile methods yang
dipelopori oleh Kent Beck, Ron Jeffries, dan Ward
Cunningham.
 XP merupakan agile methods yang paling banyak
digunakan dan menjadi sebuah pendekatan yang
sangat terkenal.
 Sasaran XP adalah tim yang dibentuk berukuran
antara kecil sampai medium saja, tidak perlu
menggunakan sebuah tim yang besar. Hal ini
dimaksudkan untuk menghadapi requirements
yang tidak jelas maupun terjadinya perubahanperubahan requirements yang sangat cepat.
32
Keunggulan:
1. Menjalin komunikasi yang baik dengan klien.
(Planning Phase)
2. Menurunkan biaya pengembangan
(Implementation Phase)
3. Meningkatkan komunikasi dan sifat saling
menghargai antar developer. (Implementation
Phase)
4. XP merupkan metodologi yang semi formal.
(Planning Phase)
5. Developer harus selalu siap dengan
perubahan karena perubahan akan selalu
diterima, atau dengan kata lain fleksibel.
(Maintenance Phase)
33
Kelemahan :
Tidak bisa membuat kode yang detail di awal
(prinsip simplicity dan juga anjuran untuk
melakukan apa yang diperlukan hari itu juga).
XP juga memiliki keunggulan yang sekaligus
menjadi kelemahannya, yaitu XP tidak memiliki
dokumentasi formal yang dibuat selama
pengembangan. Satu-satunya dokumentasi
adalah dokumentasi awal yang dilakukan oleh
user.

34
METODE PENGEMBANGAN
 Pendekatan, sudut pandang, atau kumpulan

aturan yang harus diikuti untuk menyelesaikan tahaptahap aktivitas pengembangan perangkat lunak.
 Beberapa metode pengembangan PL:
 Konvensional atau tradisional (1955)
 Berorientasi Data (1975)
 Berorientasi Aliran Data atau Proses (1976)
 Berorientasi Objek (1980an)

35
METODE KONVENSIONAL
 Sudut pandang pengembangan adalah alur (prosedur)

kerja pada sistem fisik organisasi.
 Prinsip pengembangan:
 Dokumen apa yang menjadi media data atau informasi

 Bagaimana dokumen tersebut terbentuk dan mengalir dari satu

bagian organisasi ke bagian organisasi yang lain
 Proses apa saja yang dilakukan terhadap dokumen tersebut

 Proses mana yang akan dibantu komputer

36
METODE BERORIENTASI DATA
 Sudut pandang pengembangan adalah struktur data dari

dokumen masukan/keluaran yang digunakan dalam sistem .
 Prinsip pengembangan:
 Mengidentifikasi entitas atau item-item yang menjadi objek informasi

berikut operasi-operasinya.
 Menyatakan struktur informasi secara hirarki dengan menggunakan
konstruksi sequence, selection dan repetition.
 Memetakan hirarki struktur informasi menjadi struktur program.

37
METODE BERORIENTASI FUNGSI
 Perangkat lunak dianggap sebagai kumpulan fungsi atau

proses transformasi data:
 data masukan
 proses transformasi
 data keluaran/hasil transformasi
 keadaan awal dan akhir
 perubahan (dari keadaan awal ke akhir)
 aksi untuk mengubah keadaan

38
METODE BERORIENTASI OBJEK
 Dekomposisi persoalan menjadi objek-objek yang

berkorespondensi dengan dunia nyata.

Persoalan: PERKULIAHAN

Objek:
• Dosen

• Mahasiswa
• Kuliah
• Nilai

39
OBJECT ORIENTED VS FUNCTIONAL

40
ALAT BANTU
 Perangkat bantu atau kakas otomatis dan semi-otomatis

yang akan digunakan untuk mendukung proses dan
metode.
 Bentuk-bentuk alat bantu pengembangan:
 Diagram-diagram untuk memodelkan hasil setiap tahap
pengembangan.
 Perangkat lunak untuk membantu pelaksanaan analisis,
perancangan, pembuatan program, atau pengelolaan proyek.
 Bahasa pemrograman untuk penulisan program.

41
ALAT BANTU PEMODELAN
PERSOALAN BISNIS
• Workflow Diagram
• Event Model
• Value Chain Diagram
• H – Method

• Business Modeling:
 Business Use Case Diagram
 Business Object Model
 Business Activity Diagram

42
CONTOH WORKFLOW DIAGRAM

pencatatan
kas/piutang

Bagian Keuangan

pemesanan
Bagian Penjualan

Customer

pengiriman

pemeriksaan
stok

pengepakan
Bagian Gudang

Bagian Ekspedisi

43
EVENT MODEL
• Prinsip pelaksanaan analisis seperti workflow, akan

tetapi fokus ke kejadian (event) bukan kronologis
pekerjaan.
• Contoh:
mulai

Pemesanan

Pemeriksaan
Stok

Pemeriksaan
Hutang

44

Pengepakan
Barang

Pengiriman
Barang

selesai
VALUE CHAIN
Support
activities

Primary
activities

Inbound Logistics
Operations
Outbound Logistics
Marketing and Sales
Service
Corporate Infrastructure
Human Resources Man.
Technology Development
Procurement
45

Materials receiving, storing, and distribution to manufacturing premises
Transforming inputs into finished products.
Storing and distributing products
Promotions and sales force
Service to maintain or enhance product value
Support of entire value chain, e.g. general management planning,
financing, accounting, legal services, government affairs, and QM
Recruiting, hiring, training, and development
Improving product and manufacturing process
Purchasing input
H – METHOD
 Inputs. What the person






needs to do their job.
Outputs. What the person
produces.
Functionality. What the
person does.
Business Rules. What
rules govern the way the
person works.
Data. The people places
and things the person needs
to keep track of.
46
CONTOH H – METHOD

47
CONTOH BUSINESS MODELING (1)

Business
Use Case Model

Money Transaction

Customer

Customer

Clerk

Loan Specialist

(from Use Case View)

Business
Object Model

customer frofile

48

Account

Loan
CONTOH BUSINESS MODELING (2)

49
ALAT BANTU PENGEMBANGAN
PERANGKAT LUNAK
Konvensional

Tahap Pengembangan

Alat Bantu

Analisis

Flowmap

Perancangan

System Flowchart, Program
Flowchart

Implementasi

Bahasa pemrograman

Tahap Pengembangan

Alat Bantu

Fungsi
Objek

Analisis

DFD, DD, p-spec, ERD

Perancangan

Structure chart, pseudo-code

Implementasi
Tahap Pengembangan

Bahasa pemrograman prosedural
Alat Bantu

Analisis dan Perancangan

UML

Implementasi/Pemrograman

Bahasa pemrograman objek
50
AKTIVITAS PENGEMBANGAN (1)
 Analisis dan pemodelan persoalan
 Analisis (pemahaman) persoalan
 Pemodelan persoalan
 Analisis dan perancangan sistem (jika sistem belum ada/belum

dibuat)
 Pembuatan perangkat lunak:
 Analisis Kebutuhan
 Perancangan
 Konstruksi / Implementasi / Coding
 Pengujian
 Deployment
51
AKTIVITAS PENGEMBANGAN (2)
Layer
Persoalan

Aktivitas
Analisis Persoalan
Pemodelan Persoalan

Sistem

Analisis Sistem
Perancangan Sistem

Perangkat Lunak

Analisis Kebutuhan

Pelaksana
Subject Matter Analyst,
System Analyst
System Analyst, DBA,
Network Engineer

Perancangan
Implementasi

Programmer

Pengujian

Software Tester

Deployment
52

System Analyst, Software
Architect

Deployment Team
PEMAHAMAN DAN PEMODELAN
PERSOALAN
 Mempelajari dan memahami persoalan yang akan dibuat

perangkat lunaknya sesuai domain atau ranah persoalannya.
 Memodelkan persoalan (yang sudah dipahami) dengan

menggunakan alat bantu pemodelan tertentu.
 Menentukan solusi (dan teknologi) untuk menyelesaikan

persoalan.

53
DOMAIN PERSOALAN
 Konteks atau ruang lingkup kajian persoalan pada dunia nyata:
 Bisnis
 Matematika
 Grafik, citra
 Artificial Intelligence (AI)
 Komunikasi data
 Multimedia
 Sistem operasi
 dll.
 Pemahaman persoalan untuk domain tertentu dapat melibatkan

disiplin ilmu diluar Informatika.

54
UNTUK DIINGAT


Perangkat lunak dibuat supaya bisa digunakan (oleh pemakai) untuk
membantu menyelesaikan masalah/ pekerjaan.



Oleh karena itu, hal pertama yang harus dilakukan saat membuat
perangkat lunak adalah memahami masalah/ pekerjaan yang
akan dibantu penyelesaiannya.

The first step in solving any problem is to understand it.We often propose solutions to
problems that we do not understand and then are surprised when the solutions fail to
have the anticipated effect.
55
CONTOH KASUS
 Membuat perangkat lunak untuk membantu

mengolah data promosi objek wisata dan
penawaran investasi potensi wisata.
 Domain persoalan: Bisnis.

56
PEMODELAN PERSOALAN - BUSINESS USE
CASE DIAGRAM

Wisatawan

Promosi Objek Wisata

Pengelolaan Potensi Wisata
Calon Investor

57
PEMODELAN PERSOALAN - BUSINESS OBJECT
MODEL
1. Promosi Objek Wisata

Objek Wisata

Wisatawan

Sie Promosi

Jadwal Pertunjukan

58
PEMODELAN PERSOALAN - BUSINESS OBJECT
MODEL
2. Pengelolaan Potensi Wisata

Regulasi

Calon Investor

Daftar Potensi Wisata
Sie Investasi

Proposal Penawaran
59
PEMODELAN PERSOALAN - BUSINESS ACTIVITY DIAGRAM
Wisataw an

Sie Promosi

front office system

insert, edit,
delete

1. Promosi Objek Wisata

Update Informasi
Objek Wisata

Upload Informasi
Objek Wisata

Browsing Informasi
Objek Wisata

back office system
60
PEMODELAN PERSOALAN - BUSINESS ACTIVITY DIAGRAM
Calon Inv estor

Sie Inv estasi

2. Pengelolaan Potensi Wisata

Susun
Regulasi

61

Inventarisasi
Potensi Wisata

Buka Penawaran
untuk Calon Investor

Terima Proposal
Penawaran
Terima Penawaran
dari Calon Investor
PENENTUAN SOLUSI (USER VIEW)

62
PENENTUAN SOLUSI (PLATFORM)

TCP/IP based intranet

Keterangan:
• Wireless internet
• Receiver and modem radio
• Windows 2000 server
• Tomcat web server
• MySQL database server
• Oracle application server
• J2EE application platform

63
Contoh: Kebutuhan Perangkat Lunak Aplikasi
No.

Nama Aplikasi

1

Promosi Online

2

Penawaran
Online

Peruntukan

Manfaat / Kegunaan

Wisatawan

Melihat informasi objek wisata dan
fasilitasnya

Calon Investor

• Melihat proposal penawaran
pengelolaan potensi wisata
• Mendaftar/mengajukan penawaran

Sie Promosi

• Mengelola data objek wisata dan
fasilitasnya
• Mengelola data jadwal pertunjukan
• Retrieval informasi objek wisata
• Mengelola data potensi wisata
• Mengelola data regulasi
• Mencatat penawaran dari investor

3

4

Content
Management
Investasi

Sie Investasi

5
64

Content
Management
Promosi

Report
Management

• Menyajikan laporan mengenai:
Kabag
Pengembangan
- Promosi objek wisata
Pariwisata
- Penawaran pengelolaan potensi wisata
UNTUK DIINGAT LAGI
 Perangkat lunak digunakan oleh pemakai di

lingkungan operasional dengan teknologi tertentu
sebagai bagian dari sistem yang lebih besar.
 Oleh karena itu, hal kedua yang harus dilakukan saat

membuat perangkat lunak adalah memahami
lingkungan operasional, teknologi dan sistem
yang menjadi tempat dimana perangkat lunak digunakan.

65
66

Contenu connexe

Tendances

Modul rekayasa-perangkat-lunak
Modul rekayasa-perangkat-lunakModul rekayasa-perangkat-lunak
Modul rekayasa-perangkat-lunakNita Resta Dewi
 
Proses Pengembangan Perangkat Lunak (SDLC)
Proses Pengembangan Perangkat Lunak (SDLC)Proses Pengembangan Perangkat Lunak (SDLC)
Proses Pengembangan Perangkat Lunak (SDLC)Rasyeda Aufa
 
Pertemuan 2 Pemodelan Perangkat Lunak
Pertemuan 2 Pemodelan Perangkat Lunak Pertemuan 2 Pemodelan Perangkat Lunak
Pertemuan 2 Pemodelan Perangkat Lunak Disma Ariyanti W
 
Bab 2 proses pembangunan perangkat lunak
Bab 2   proses pembangunan perangkat lunakBab 2   proses pembangunan perangkat lunak
Bab 2 proses pembangunan perangkat lunaksahrul salam
 
rekayasa perangkat lunak
rekayasa perangkat lunakrekayasa perangkat lunak
rekayasa perangkat lunakWandi Parlente
 
Rekayasa Perangkat Lunak
Rekayasa Perangkat LunakRekayasa Perangkat Lunak
Rekayasa Perangkat LunakYudi Purwanto
 
Metode pengembangan RPL dan DFD
Metode pengembangan RPL dan DFDMetode pengembangan RPL dan DFD
Metode pengembangan RPL dan DFDAyu Rahmala
 
Proses proses perangkat lunak
Proses proses perangkat lunakProses proses perangkat lunak
Proses proses perangkat lunakarfianti
 
Rpl 03 - proses proses perangkat lunak
Rpl   03 - proses proses perangkat lunakRpl   03 - proses proses perangkat lunak
Rpl 03 - proses proses perangkat lunakFebriyani Syafri
 
Final paper mkti_kelompok12
Final paper mkti_kelompok12Final paper mkti_kelompok12
Final paper mkti_kelompok12EM Nasrul
 
Rpl 07 - pembuatan prototipe perangkat lunak
Rpl   07 - pembuatan prototipe perangkat lunakRpl   07 - pembuatan prototipe perangkat lunak
Rpl 07 - pembuatan prototipe perangkat lunakFebriyani Syafri
 
Pemodelan perangkat lunak
Pemodelan perangkat lunakPemodelan perangkat lunak
Pemodelan perangkat lunakAdityaSaputra83
 

Tendances (19)

Modul rekayasa-perangkat-lunak
Modul rekayasa-perangkat-lunakModul rekayasa-perangkat-lunak
Modul rekayasa-perangkat-lunak
 
Proses Pengembangan Perangkat Lunak (SDLC)
Proses Pengembangan Perangkat Lunak (SDLC)Proses Pengembangan Perangkat Lunak (SDLC)
Proses Pengembangan Perangkat Lunak (SDLC)
 
Rangkuman SDLC
Rangkuman SDLCRangkuman SDLC
Rangkuman SDLC
 
Pertemuan 2 Pemodelan Perangkat Lunak
Pertemuan 2 Pemodelan Perangkat Lunak Pertemuan 2 Pemodelan Perangkat Lunak
Pertemuan 2 Pemodelan Perangkat Lunak
 
Bab 2 proses pembangunan perangkat lunak
Bab 2   proses pembangunan perangkat lunakBab 2   proses pembangunan perangkat lunak
Bab 2 proses pembangunan perangkat lunak
 
rekayasa perangkat lunak
rekayasa perangkat lunakrekayasa perangkat lunak
rekayasa perangkat lunak
 
Rpl upload #3
Rpl upload #3Rpl upload #3
Rpl upload #3
 
Ragam Model Proses Perangkat Lunak
Ragam Model Proses Perangkat LunakRagam Model Proses Perangkat Lunak
Ragam Model Proses Perangkat Lunak
 
Rekayasa Perangkat Lunak
Rekayasa Perangkat LunakRekayasa Perangkat Lunak
Rekayasa Perangkat Lunak
 
Metode pengembangan RPL dan DFD
Metode pengembangan RPL dan DFDMetode pengembangan RPL dan DFD
Metode pengembangan RPL dan DFD
 
Proses proses perangkat lunak
Proses proses perangkat lunakProses proses perangkat lunak
Proses proses perangkat lunak
 
Rpl 03 - proses proses perangkat lunak
Rpl   03 - proses proses perangkat lunakRpl   03 - proses proses perangkat lunak
Rpl 03 - proses proses perangkat lunak
 
Gis Bab9
Gis Bab9Gis Bab9
Gis Bab9
 
Final paper mkti_kelompok12
Final paper mkti_kelompok12Final paper mkti_kelompok12
Final paper mkti_kelompok12
 
Rpl 07 - pembuatan prototipe perangkat lunak
Rpl   07 - pembuatan prototipe perangkat lunakRpl   07 - pembuatan prototipe perangkat lunak
Rpl 07 - pembuatan prototipe perangkat lunak
 
Rpl
RplRpl
Rpl
 
Pemodelan perangkat lunak
Pemodelan perangkat lunakPemodelan perangkat lunak
Pemodelan perangkat lunak
 
Dwi h (09)
Dwi h (09)Dwi h (09)
Dwi h (09)
 
PowerPoint RPL Materi 7
PowerPoint RPL Materi 7PowerPoint RPL Materi 7
PowerPoint RPL Materi 7
 

En vedette

Q3 fy15 quarterly earnings presentation
Q3 fy15 quarterly earnings presentationQ3 fy15 quarterly earnings presentation
Q3 fy15 quarterly earnings presentationrockwell_collins
 
тз для съемок 3
тз для съемок 3тз для съемок 3
тз для съемок 3vred8
 
Joshua Pellicer Review
Joshua Pellicer ReviewJoshua Pellicer Review
Joshua Pellicer Reviewsliffebr
 
Myicourse kelompok 1
Myicourse kelompok 1Myicourse kelompok 1
Myicourse kelompok 1Asima Natalia
 
Giorth 25 Martiou
Giorth 25 MartiouGiorth 25 Martiou
Giorth 25 Martioupopimerg
 
Teaching children and young people at GPCC
Teaching children and young people at GPCCTeaching children and young people at GPCC
Teaching children and young people at GPCCKeepSinging
 
GSSD13 Solution Forum 6 (UNECE) - Action plan for Energy- efficient Housing i...
GSSD13 Solution Forum 6 (UNECE) - Action plan for Energy- efficient Housing i...GSSD13 Solution Forum 6 (UNECE) - Action plan for Energy- efficient Housing i...
GSSD13 Solution Forum 6 (UNECE) - Action plan for Energy- efficient Housing i...Global South-South Development Expo
 
Media homework daft punk
Media homework daft punkMedia homework daft punk
Media homework daft punk08burnsp
 
Ευρωπαϊκή Εβδομάδα Προγραμματισμού 2015
Ευρωπαϊκή Εβδομάδα Προγραμματισμού 2015Ευρωπαϊκή Εβδομάδα Προγραμματισμού 2015
Ευρωπαϊκή Εβδομάδα Προγραμματισμού 2015popimerg
 
Final q3 fy14 quarterly earnings presentation
Final q3 fy14 quarterly earnings presentationFinal q3 fy14 quarterly earnings presentation
Final q3 fy14 quarterly earnings presentationrockwell_collins
 

En vedette (18)

Fiive Guys
Fiive GuysFiive Guys
Fiive Guys
 
Spektrum
SpektrumSpektrum
Spektrum
 
Q3 fy15 quarterly earnings presentation
Q3 fy15 quarterly earnings presentationQ3 fy15 quarterly earnings presentation
Q3 fy15 quarterly earnings presentation
 
тз для съемок 3
тз для съемок 3тз для съемок 3
тз для съемок 3
 
Joshua Pellicer Review
Joshua Pellicer ReviewJoshua Pellicer Review
Joshua Pellicer Review
 
Yourprezi
YourpreziYourprezi
Yourprezi
 
Myicourse kelompok 1
Myicourse kelompok 1Myicourse kelompok 1
Myicourse kelompok 1
 
La Conquesta de la Lluna
La Conquesta de la LlunaLa Conquesta de la Lluna
La Conquesta de la Lluna
 
Giorth 25 Martiou
Giorth 25 MartiouGiorth 25 Martiou
Giorth 25 Martiou
 
Teaching children and young people at GPCC
Teaching children and young people at GPCCTeaching children and young people at GPCC
Teaching children and young people at GPCC
 
shashank watak_assignment 01
shashank watak_assignment 01shashank watak_assignment 01
shashank watak_assignment 01
 
NIKAIA
NIKAIANIKAIA
NIKAIA
 
GSSD13 Solution Forum 6 (UNECE) - Action plan for Energy- efficient Housing i...
GSSD13 Solution Forum 6 (UNECE) - Action plan for Energy- efficient Housing i...GSSD13 Solution Forum 6 (UNECE) - Action plan for Energy- efficient Housing i...
GSSD13 Solution Forum 6 (UNECE) - Action plan for Energy- efficient Housing i...
 
Media homework daft punk
Media homework daft punkMedia homework daft punk
Media homework daft punk
 
Stpaulmathconsultation(functions)
Stpaulmathconsultation(functions)Stpaulmathconsultation(functions)
Stpaulmathconsultation(functions)
 
Ευρωπαϊκή Εβδομάδα Προγραμματισμού 2015
Ευρωπαϊκή Εβδομάδα Προγραμματισμού 2015Ευρωπαϊκή Εβδομάδα Προγραμματισμού 2015
Ευρωπαϊκή Εβδομάδα Προγραμματισμού 2015
 
Askeb( kehamilan )
Askeb( kehamilan )Askeb( kehamilan )
Askeb( kehamilan )
 
Final q3 fy14 quarterly earnings presentation
Final q3 fy14 quarterly earnings presentationFinal q3 fy14 quarterly earnings presentation
Final q3 fy14 quarterly earnings presentation
 

Similaire à Materi ppl

Perancangan perangkat lunak
Perancangan perangkat lunakPerancangan perangkat lunak
Perancangan perangkat lunakSahrul Sindriana
 
Proses rekayasa perangkat lunak
Proses rekayasa perangkat lunakProses rekayasa perangkat lunak
Proses rekayasa perangkat lunakDavy Arya Atmaja
 
perangkat lunak Berbasis objek teori if.
perangkat lunak Berbasis objek teori if.perangkat lunak Berbasis objek teori if.
perangkat lunak Berbasis objek teori if.ummi1206
 
Sistem informasi sdlc
Sistem informasi sdlcSistem informasi sdlc
Sistem informasi sdlcmistertugas
 
Pemodelan perangkat lunak XI_ Pertemuan 2.pptx
Pemodelan perangkat lunak XI_ Pertemuan 2.pptxPemodelan perangkat lunak XI_ Pertemuan 2.pptx
Pemodelan perangkat lunak XI_ Pertemuan 2.pptxagusnugraha41
 
Pertemuan-7-Proses_Desain interaksi manusia dan komputer.ppt
Pertemuan-7-Proses_Desain interaksi manusia dan komputer.pptPertemuan-7-Proses_Desain interaksi manusia dan komputer.ppt
Pertemuan-7-Proses_Desain interaksi manusia dan komputer.pptBernad Bear
 
KUALITAS SOURCE CODE DAN PENGUJIAN PROGAM.pptx
KUALITAS SOURCE CODE DAN PENGUJIAN PROGAM.pptxKUALITAS SOURCE CODE DAN PENGUJIAN PROGAM.pptx
KUALITAS SOURCE CODE DAN PENGUJIAN PROGAM.pptxviierpii
 
Waterfall Process Model
Waterfall Process ModelWaterfall Process Model
Waterfall Process ModelSiska Amelia
 
MPPL Chapter 3
MPPL Chapter 3MPPL Chapter 3
MPPL Chapter 3beiharira
 
Pemodelan perangkat lunak 1
Pemodelan perangkat lunak 1Pemodelan perangkat lunak 1
Pemodelan perangkat lunak 1Kurjum Usman
 
Rekayasa perangkat lunak
Rekayasa perangkat lunakRekayasa perangkat lunak
Rekayasa perangkat lunakWandi Parlente
 
Model life cycle software
Model life cycle softwareModel life cycle software
Model life cycle softwareHarzalik Meank
 

Similaire à Materi ppl (20)

Perancangan perangkat lunak
Perancangan perangkat lunakPerancangan perangkat lunak
Perancangan perangkat lunak
 
11122636 (5).ppt
11122636 (5).ppt11122636 (5).ppt
11122636 (5).ppt
 
Proses rekayasa perangkat lunak
Proses rekayasa perangkat lunakProses rekayasa perangkat lunak
Proses rekayasa perangkat lunak
 
perangkat lunak Berbasis objek teori if.
perangkat lunak Berbasis objek teori if.perangkat lunak Berbasis objek teori if.
perangkat lunak Berbasis objek teori if.
 
Rpl 2017 b_k02_t04_a
Rpl 2017 b_k02_t04_aRpl 2017 b_k02_t04_a
Rpl 2017 b_k02_t04_a
 
Sistem informasi sdlc
Sistem informasi sdlcSistem informasi sdlc
Sistem informasi sdlc
 
Pemodelan perangkat lunak XI_ Pertemuan 2.pptx
Pemodelan perangkat lunak XI_ Pertemuan 2.pptxPemodelan perangkat lunak XI_ Pertemuan 2.pptx
Pemodelan perangkat lunak XI_ Pertemuan 2.pptx
 
Rekayasa Perangkat Lunak - Model Pengembangan Sistem
Rekayasa Perangkat Lunak - Model Pengembangan SistemRekayasa Perangkat Lunak - Model Pengembangan Sistem
Rekayasa Perangkat Lunak - Model Pengembangan Sistem
 
Pertemuan-7-Proses_Desain interaksi manusia dan komputer.ppt
Pertemuan-7-Proses_Desain interaksi manusia dan komputer.pptPertemuan-7-Proses_Desain interaksi manusia dan komputer.ppt
Pertemuan-7-Proses_Desain interaksi manusia dan komputer.ppt
 
Rekayasa perangkat lunak
Rekayasa perangkat lunakRekayasa perangkat lunak
Rekayasa perangkat lunak
 
Apsi (modul 2)
Apsi  (modul 2)Apsi  (modul 2)
Apsi (modul 2)
 
KUALITAS SOURCE CODE DAN PENGUJIAN PROGAM.pptx
KUALITAS SOURCE CODE DAN PENGUJIAN PROGAM.pptxKUALITAS SOURCE CODE DAN PENGUJIAN PROGAM.pptx
KUALITAS SOURCE CODE DAN PENGUJIAN PROGAM.pptx
 
Waterfall Process Model
Waterfall Process ModelWaterfall Process Model
Waterfall Process Model
 
RPL
RPLRPL
RPL
 
MPPL Chapter 3
MPPL Chapter 3MPPL Chapter 3
MPPL Chapter 3
 
Pemodelan perangkat lunak 1
Pemodelan perangkat lunak 1Pemodelan perangkat lunak 1
Pemodelan perangkat lunak 1
 
Rekayasa perangkat lunak
Rekayasa perangkat lunakRekayasa perangkat lunak
Rekayasa perangkat lunak
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 
Model life cycle software
Model life cycle softwareModel life cycle software
Model life cycle software
 
Meeting 3 metode pengembangan sistem
Meeting 3   metode pengembangan sistemMeeting 3   metode pengembangan sistem
Meeting 3 metode pengembangan sistem
 

Plus de dery laskar/ kahadari (20)

Propsal usaha aksesorois wanita
Propsal usaha aksesorois wanitaPropsal usaha aksesorois wanita
Propsal usaha aksesorois wanita
 
Teknik jitu-menguasai-photoshop-cs
Teknik jitu-menguasai-photoshop-csTeknik jitu-menguasai-photoshop-cs
Teknik jitu-menguasai-photoshop-cs
 
Abtrak deliana oke
Abtrak  deliana okeAbtrak  deliana oke
Abtrak deliana oke
 
Tugas hematologi
Tugas hematologiTugas hematologi
Tugas hematologi
 
KTI ISMA
KTI ISMAKTI ISMA
KTI ISMA
 
Sel-sel pada leukosit
Sel-sel pada leukositSel-sel pada leukosit
Sel-sel pada leukosit
 
Abstrakdevi dan inggrisnya
Abstrakdevi dan inggrisnyaAbstrakdevi dan inggrisnya
Abstrakdevi dan inggrisnya
 
Abstrak deli BIDAN
Abstrak deli BIDANAbstrak deli BIDAN
Abstrak deli BIDAN
 
Daftar pustaka
Daftar pustaka Daftar pustaka
Daftar pustaka
 
Contoh surat lamaran kerja
Contoh surat lamaran kerja Contoh surat lamaran kerja
Contoh surat lamaran kerja
 
Bersih itu indan
Bersih itu indan Bersih itu indan
Bersih itu indan
 
Autobiografi
AutobiografiAutobiografi
Autobiografi
 
Surat pernyataan bukan perokok aktif
Surat pernyataan bukan perokok aktif Surat pernyataan bukan perokok aktif
Surat pernyataan bukan perokok aktif
 
Serahterima
SerahterimaSerahterima
Serahterima
 
Femeriksaan fisik pada bayi
Femeriksaan fisik pada bayiFemeriksaan fisik pada bayi
Femeriksaan fisik pada bayi
 
Gambaran Pengetahuan Masyarakat Tentang Manfaat daun sukun Bagi Kesehatan
Gambaran Pengetahuan Masyarakat Tentang Manfaat daun sukun Bagi Kesehatan Gambaran Pengetahuan Masyarakat Tentang Manfaat daun sukun Bagi Kesehatan
Gambaran Pengetahuan Masyarakat Tentang Manfaat daun sukun Bagi Kesehatan
 
Lamaran kerja
Lamaran kerjaLamaran kerja
Lamaran kerja
 
Daftar hadir responden
Daftar hadir respondenDaftar hadir responden
Daftar hadir responden
 
Kamar hitung trambosit
Kamar hitung trambositKamar hitung trambosit
Kamar hitung trambosit
 
Daftar isi
Daftar isiDaftar isi
Daftar isi
 

Materi ppl

  • 2. Definisi :  Perancangan perangkat lunak adalah disiplin manajerial dan teknis yang berkaitan dengan pembuatan dan pemeliharaan produk perangkat lunak secara sistematis, termasuk pengembangan dan modifikasinya, yang dilakukan pada waktu yang tepat dan dengan mempertimbangkan faktor biaya. 2
  • 3.  Tujuan : Memperbaiki kualitas produk perangkat lunak, meningkatkan produktivitas  Pengertian produk perangkat lunak : perangkat lunak yang digunakan oleh berbagai pengguna  Hal-hal yang perlu diperhatikan dalam pengembangan sebuah produk perangkat lunak : kebutuhan dan batasan-batasan pengguna, mengakomodasi paling tidak kepentingan tiga pihak, tahap ujicoba, dokumen pendukung, pelatihan 3
  • 4. Beberapa atribut yang merupakan ukuran kualitas perangkat lunak adalah  Maintainability, harus dapat dengan mudah dirubah sesuai dengan perubahan kebutuhan pengguna  Dependability, harus dapat dipercaya (trustworthy) sehingga pengguna dapat menggantungkan sepenuhnya proses bisnis mereka  Eciency, harus esien dan tidak memakai resources yang tinggi  Usability, PL harus dapat digunakan(usable) oleh penggunanya dalam memenuhi kebutuhan mereka 4
  • 5. Distribusi Upaya  Masa hidup sebuah produk perangkat lunak adalah 1 s/d 3 tahun dalam pengembangan dan 5 s/d 15 tahun dalam pemakaiannya (pemeliharannya).  Distribusi upaya antara pengembangan dan pemeliharaan bervariasi antara 40/60, 30/70, dan bahkan 10/90.  Tiga aktivitas pengembangan perangkat lunak adalah : analisa dan perancangan, implementasi dan pengujian.  Tiga aktivitas pemeliharaan perangkat lunak adalah : peningkatan kemampuan produk, penyesuaian produk dengan lingkungan pemrosesan baru, dan perbaikan 5
  • 7. APA YANG DISEBUT PERANGKAT LUNAK?  1) Instruksi (program komputer) yang bila dieksekusi dapat menjalankan fungsi tertentu; 2) Struktur data yang dapat membuat program memanipulasi informasi; dan 3) Dokumen yang menjelaskan operasi dan penggunaan program (Roger Pressman).  Program komputer, prosedur, aturan, dan dokumentasi yang berkaitan dengannya serta data yang berkaitan dengan operasi suatu sistem komputer (IEEE). 7
  • 8. JENIS-JENIS PERANGKAT LUNAK  Perangkat lunak sistem (system software)  Perangkat lunak waktu nyata (real-time software)  Perangkat lunak bisnis (business software)  Perangkat lunak rekayasa dan ilmu pengetahuan (engineering and scientific software)  Embedded Software  Perangkat lunak pribadi (personal software)  Perangkat lunak intelegensia buatan (artificial inteligent software)  Perangkat lunak lainnya 8
  • 9. 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 9
  • 10. SOFTWARE ENGINEERING BODY OF KNOWLEDGE SWEBOK Knowledge Areas:  Software requirements  Software design  Software construction  Software testing  Software maintenance  Software configuration management  Software engineering management  Software engineering process  Software engineering tools and methods  Software quality 10
  • 11. PENGEMBANGAN PERANGKAT LUNAK  Proses dimana persoalan/kebutuhan pemakai (1) diterjemahkan menjadi produk perangkat lunak melalui suatu rangkaian aktivitas tertentu sesuai model proses, metode, dan alat bantu yang digunakan. Mewakili persoalan yang akan dibantu komputer Produk yang dihasilkan sebagai solusi persoalan Proses yang dilaksanakan dengan urut-urutan aktivitas tertentu 11
  • 12. PENGEMBANGAN PERANGKAT LUNAK (2) Elemen-elemen proses pengembangan: 12
  • 13. MODEL PROSES PENGEMBANGAN  Cara atau strategi bagaimana perangkat lunak dibuat sedemikian rupa sehingga produk perangkat lunak tersebut dapat diwujudkan.  Beberapa model proses pengembangan PL:  Waterfall  Incremental  Prototyping Model  Spiral Model  Rational Unified Process (RUP)  Extreme Programming (XP) 13
  • 14. TUGAS : Model Proses Pengembangan Perangkat Lunak apa yang pernah dikerjakan ? Uraikan, Jelaskan dan Paparkan !! 14
  • 15. BEBERAPA MODEL PROSES  Waterfall Model Analisis Kebutuhan Perancangan Pengkodean Pengujian Pengoperasian 15
  • 16. Kelebihan :  Proses-prosesnya mudah dipahami dan jelas  Mudah dalam pengelolaan proyek  Dokumen dihasilkan setiap akhir fase  Sebuah fase dijalankan setelah fase sebelumnya selesai  Struktur sistem jelas  Kondisi tepat SDLC Waterfall  Kebutuhan user telah sangat dipahami  Kemungkinan terjadinya perubahan kebutuhan user kecil 16
  • 17. Kelemahan Waterfall  Proyek dunia nyata jarang mengikuti alur proses  Kesulitan jika terjadi perubahan kebutuhan  Waktu pengerjaan bertambah  Ada anggota tim yang harus menunggu pekerjaan pekerja lain  Kesabaran customer/klien 17
  • 19. Incremental (DEFINISI)  Pengembangan dibagi menjadi bagian2 yang dapat berkembang secara bertambah (increments)  Setiap bagian harus memenuhi fungsi-fungsi yang diperlukan  Kebutuhan pengguna diprioritaskan dan prioritas tertinggi didahulukan dalam pengembangan  Begitu dimulai, kebutuhan yang telah tertangani akan dibekukan sehingga memberikan tempat bagi kebutuhan lain untuk dapat berevolusi 19
  • 20. Incremental : Kelebihan dan Kekurangan  Kebutuhan pengguna / customer dipenuhi pada setiap bagian yang selesai terlebih dahulu  Bagian yang selesai terlebih dahulu menjadi prototipe  Resiko rendah  Bagian yang punya prioritas tertinggi dapat dites secara intensive  Permasalahan  Batasan proses tidak jelas  Sistem kurang terstruktur  Kemampuan aplikasi  Untuk sistem dengan interaksi skala kecil dan medium  Untuk antarmuka user 20  Untuk sistem dengan masa penggunaan pendek
  • 21. BEBERAPA MODEL PROSES (lanjutan)  Prototyping Model • Spiral Model PERENCANAAN ANALISIS RESIKO Pengumpulan Kebutuhan Perbaikan Prototype Evaluasi Prototype Perancangan Cepat Bangun Prototype EVALUASI PEMAKAI 21 REKAYASA
  • 22. Prototyping  Membuat sebuah contoh prototipe untuk menunjukkan kebutuhan dan desain ke pemakai  Harus ada versi yang dapat dijalankan sebagai prototipe sebelum sistem dikembangkan (bisa berupa contoh sistem lain)  Harus ada implementasi sistem yang dikembangkan sebelum dibuat sebuah sistem final 22
  • 23. Spiral :  Mendefinisikan kebutuhan dengan sedetail mungkin  Pembuatan desain untuk sistem yang baru  Proses direpresentasikan dalam aktivitas berbentuk spiral  Setiap perulangan (loop) dalam spiral merepresentasikan sebuah fase dalam proses  Fase-fase tidak fix (spesikasi - design loop) dipilih sesuai dengan yang diperlukan  Resiko selalu secara transparan dimonitor dan dipecahkan selama proses berlangsung 23
  • 24. Spiral :  Kelebihan  Dapat digunakan untuk sistem yang besar  Sangat cocok sebagai mekanisme mengurangi resiko  Kelemahan  Terlalu banyak memikirkan resiko yang akan terjadi  Masih jarang digunakan 24
  • 26. BEBERAPA MODEL PROSES (lanjutan) • Rational Unified Process 26
  • 27. Rational Unified Process  menggunakan konsep object oriented, dengan aktifitas yang berfokus pada pengembangan model dengan menggunakan Unified Model Language (UML).  Ada beberapa keuntungan dengan mengunakan RUP di antaranya : a. Menyediakan akses yang mudah terhadap pengetahuan dasar bagi anggota tim. b. Menyediakan petunjuk bagaimana menggunakan UML secara efektif. c. Mendukung proses pengulangan dalam pengembangan software. d. Memungkinkan adanya penambahan27 penambahan pada proses.
  • 28. RUP (lanjutan) e. Memungkinkan untuk secara sistematis mengontrol perubahan- perubahan yang terjadi pada software selama proses pengembangannya. f. Memungkinkan untuk menjalankan test case dengan menggunakan Rational Test Kekurangan Pengembangan Perangkat Lunak RUP :  Metodologi ini hanya dapat digunakan pada pengembangan perangkat lunak yang berorientasi objek dengan berfokus pada UML (Unified Modeling Language 28
  • 29. BEBERAPA MODEL PROSES (lanjutan) 29
  • 30. Example user stories. •Students can purchase monthly parking passes online. •Parking passes can be paid via credit cards. •Parking passes can be paid via PayPal ™. •Professors can input student marks. •Students can obtain their current seminar schedule. •Students can order official transcripts. •Students can only enroll in seminars for which they have prerequisites. •Transcripts will be available online via a standard browser. 30
  • 31. Important considerations for writing user stories: http://www.agilemodeling.com/artifacts/us erStory.htm Stakeholders write user stories Use the simplest tool. Remember non-functional requirements Indicate the estimated size. Indicate the priority. Optionally include a unique identifier. 31
  • 32. Extreme Programming (XP) adalah metode  pengembangan perangkat lunak yang ringan dan termasuk salah satu agile methods yang dipelopori oleh Kent Beck, Ron Jeffries, dan Ward Cunningham.  XP merupakan agile methods yang paling banyak digunakan dan menjadi sebuah pendekatan yang sangat terkenal.  Sasaran XP adalah tim yang dibentuk berukuran antara kecil sampai medium saja, tidak perlu menggunakan sebuah tim yang besar. Hal ini dimaksudkan untuk menghadapi requirements yang tidak jelas maupun terjadinya perubahanperubahan requirements yang sangat cepat. 32
  • 33. Keunggulan: 1. Menjalin komunikasi yang baik dengan klien. (Planning Phase) 2. Menurunkan biaya pengembangan (Implementation Phase) 3. Meningkatkan komunikasi dan sifat saling menghargai antar developer. (Implementation Phase) 4. XP merupkan metodologi yang semi formal. (Planning Phase) 5. Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima, atau dengan kata lain fleksibel. (Maintenance Phase) 33
  • 34. Kelemahan : Tidak bisa membuat kode yang detail di awal (prinsip simplicity dan juga anjuran untuk melakukan apa yang diperlukan hari itu juga). XP juga memiliki keunggulan yang sekaligus menjadi kelemahannya, yaitu XP tidak memiliki dokumentasi formal yang dibuat selama pengembangan. Satu-satunya dokumentasi adalah dokumentasi awal yang dilakukan oleh user. 34
  • 35. METODE PENGEMBANGAN  Pendekatan, sudut pandang, atau kumpulan aturan yang harus diikuti untuk menyelesaikan tahaptahap aktivitas pengembangan perangkat lunak.  Beberapa metode pengembangan PL:  Konvensional atau tradisional (1955)  Berorientasi Data (1975)  Berorientasi Aliran Data atau Proses (1976)  Berorientasi Objek (1980an) 35
  • 36. METODE KONVENSIONAL  Sudut pandang pengembangan adalah alur (prosedur) kerja pada sistem fisik organisasi.  Prinsip pengembangan:  Dokumen apa yang menjadi media data atau informasi  Bagaimana dokumen tersebut terbentuk dan mengalir dari satu bagian organisasi ke bagian organisasi yang lain  Proses apa saja yang dilakukan terhadap dokumen tersebut  Proses mana yang akan dibantu komputer 36
  • 37. METODE BERORIENTASI DATA  Sudut pandang pengembangan adalah struktur data dari dokumen masukan/keluaran yang digunakan dalam sistem .  Prinsip pengembangan:  Mengidentifikasi entitas atau item-item yang menjadi objek informasi berikut operasi-operasinya.  Menyatakan struktur informasi secara hirarki dengan menggunakan konstruksi sequence, selection dan repetition.  Memetakan hirarki struktur informasi menjadi struktur program. 37
  • 38. METODE BERORIENTASI FUNGSI  Perangkat lunak dianggap sebagai kumpulan fungsi atau proses transformasi data:  data masukan  proses transformasi  data keluaran/hasil transformasi  keadaan awal dan akhir  perubahan (dari keadaan awal ke akhir)  aksi untuk mengubah keadaan 38
  • 39. METODE BERORIENTASI OBJEK  Dekomposisi persoalan menjadi objek-objek yang berkorespondensi dengan dunia nyata. Persoalan: PERKULIAHAN Objek: • Dosen • Mahasiswa • Kuliah • Nilai 39
  • 40. OBJECT ORIENTED VS FUNCTIONAL 40
  • 41. ALAT BANTU  Perangkat bantu atau kakas otomatis dan semi-otomatis yang akan digunakan untuk mendukung proses dan metode.  Bentuk-bentuk alat bantu pengembangan:  Diagram-diagram untuk memodelkan hasil setiap tahap pengembangan.  Perangkat lunak untuk membantu pelaksanaan analisis, perancangan, pembuatan program, atau pengelolaan proyek.  Bahasa pemrograman untuk penulisan program. 41
  • 42. ALAT BANTU PEMODELAN PERSOALAN BISNIS • Workflow Diagram • Event Model • Value Chain Diagram • H – Method • Business Modeling:  Business Use Case Diagram  Business Object Model  Business Activity Diagram 42
  • 43. CONTOH WORKFLOW DIAGRAM pencatatan kas/piutang Bagian Keuangan pemesanan Bagian Penjualan Customer pengiriman pemeriksaan stok pengepakan Bagian Gudang Bagian Ekspedisi 43
  • 44. EVENT MODEL • Prinsip pelaksanaan analisis seperti workflow, akan tetapi fokus ke kejadian (event) bukan kronologis pekerjaan. • Contoh: mulai Pemesanan Pemeriksaan Stok Pemeriksaan Hutang 44 Pengepakan Barang Pengiriman Barang selesai
  • 45. VALUE CHAIN Support activities Primary activities Inbound Logistics Operations Outbound Logistics Marketing and Sales Service Corporate Infrastructure Human Resources Man. Technology Development Procurement 45 Materials receiving, storing, and distribution to manufacturing premises Transforming inputs into finished products. Storing and distributing products Promotions and sales force Service to maintain or enhance product value Support of entire value chain, e.g. general management planning, financing, accounting, legal services, government affairs, and QM Recruiting, hiring, training, and development Improving product and manufacturing process Purchasing input
  • 46. H – METHOD  Inputs. What the person     needs to do their job. Outputs. What the person produces. Functionality. What the person does. Business Rules. What rules govern the way the person works. Data. The people places and things the person needs to keep track of. 46
  • 47. CONTOH H – METHOD 47
  • 48. CONTOH BUSINESS MODELING (1) Business Use Case Model Money Transaction Customer Customer Clerk Loan Specialist (from Use Case View) Business Object Model customer frofile 48 Account Loan
  • 50. ALAT BANTU PENGEMBANGAN PERANGKAT LUNAK Konvensional Tahap Pengembangan Alat Bantu Analisis Flowmap Perancangan System Flowchart, Program Flowchart Implementasi Bahasa pemrograman Tahap Pengembangan Alat Bantu Fungsi Objek Analisis DFD, DD, p-spec, ERD Perancangan Structure chart, pseudo-code Implementasi Tahap Pengembangan Bahasa pemrograman prosedural Alat Bantu Analisis dan Perancangan UML Implementasi/Pemrograman Bahasa pemrograman objek 50
  • 51. AKTIVITAS PENGEMBANGAN (1)  Analisis dan pemodelan persoalan  Analisis (pemahaman) persoalan  Pemodelan persoalan  Analisis dan perancangan sistem (jika sistem belum ada/belum dibuat)  Pembuatan perangkat lunak:  Analisis Kebutuhan  Perancangan  Konstruksi / Implementasi / Coding  Pengujian  Deployment 51
  • 52. AKTIVITAS PENGEMBANGAN (2) Layer Persoalan Aktivitas Analisis Persoalan Pemodelan Persoalan Sistem Analisis Sistem Perancangan Sistem Perangkat Lunak Analisis Kebutuhan Pelaksana Subject Matter Analyst, System Analyst System Analyst, DBA, Network Engineer Perancangan Implementasi Programmer Pengujian Software Tester Deployment 52 System Analyst, Software Architect Deployment Team
  • 53. PEMAHAMAN DAN PEMODELAN PERSOALAN  Mempelajari dan memahami persoalan yang akan dibuat perangkat lunaknya sesuai domain atau ranah persoalannya.  Memodelkan persoalan (yang sudah dipahami) dengan menggunakan alat bantu pemodelan tertentu.  Menentukan solusi (dan teknologi) untuk menyelesaikan persoalan. 53
  • 54. DOMAIN PERSOALAN  Konteks atau ruang lingkup kajian persoalan pada dunia nyata:  Bisnis  Matematika  Grafik, citra  Artificial Intelligence (AI)  Komunikasi data  Multimedia  Sistem operasi  dll.  Pemahaman persoalan untuk domain tertentu dapat melibatkan disiplin ilmu diluar Informatika. 54
  • 55. UNTUK DIINGAT  Perangkat lunak dibuat supaya bisa digunakan (oleh pemakai) untuk membantu menyelesaikan masalah/ pekerjaan.  Oleh karena itu, hal pertama yang harus dilakukan saat membuat perangkat lunak adalah memahami masalah/ pekerjaan yang akan dibantu penyelesaiannya. The first step in solving any problem is to understand it.We often propose solutions to problems that we do not understand and then are surprised when the solutions fail to have the anticipated effect. 55
  • 56. CONTOH KASUS  Membuat perangkat lunak untuk membantu mengolah data promosi objek wisata dan penawaran investasi potensi wisata.  Domain persoalan: Bisnis. 56
  • 57. PEMODELAN PERSOALAN - BUSINESS USE CASE DIAGRAM Wisatawan Promosi Objek Wisata Pengelolaan Potensi Wisata Calon Investor 57
  • 58. PEMODELAN PERSOALAN - BUSINESS OBJECT MODEL 1. Promosi Objek Wisata Objek Wisata Wisatawan Sie Promosi Jadwal Pertunjukan 58
  • 59. PEMODELAN PERSOALAN - BUSINESS OBJECT MODEL 2. Pengelolaan Potensi Wisata Regulasi Calon Investor Daftar Potensi Wisata Sie Investasi Proposal Penawaran 59
  • 60. PEMODELAN PERSOALAN - BUSINESS ACTIVITY DIAGRAM Wisataw an Sie Promosi front office system insert, edit, delete 1. Promosi Objek Wisata Update Informasi Objek Wisata Upload Informasi Objek Wisata Browsing Informasi Objek Wisata back office system 60
  • 61. PEMODELAN PERSOALAN - BUSINESS ACTIVITY DIAGRAM Calon Inv estor Sie Inv estasi 2. Pengelolaan Potensi Wisata Susun Regulasi 61 Inventarisasi Potensi Wisata Buka Penawaran untuk Calon Investor Terima Proposal Penawaran Terima Penawaran dari Calon Investor
  • 63. PENENTUAN SOLUSI (PLATFORM) TCP/IP based intranet Keterangan: • Wireless internet • Receiver and modem radio • Windows 2000 server • Tomcat web server • MySQL database server • Oracle application server • J2EE application platform 63
  • 64. Contoh: Kebutuhan Perangkat Lunak Aplikasi No. Nama Aplikasi 1 Promosi Online 2 Penawaran Online Peruntukan Manfaat / Kegunaan Wisatawan Melihat informasi objek wisata dan fasilitasnya Calon Investor • Melihat proposal penawaran pengelolaan potensi wisata • Mendaftar/mengajukan penawaran Sie Promosi • Mengelola data objek wisata dan fasilitasnya • Mengelola data jadwal pertunjukan • Retrieval informasi objek wisata • Mengelola data potensi wisata • Mengelola data regulasi • Mencatat penawaran dari investor 3 4 Content Management Investasi Sie Investasi 5 64 Content Management Promosi Report Management • Menyajikan laporan mengenai: Kabag Pengembangan - Promosi objek wisata Pariwisata - Penawaran pengelolaan potensi wisata
  • 65. UNTUK DIINGAT LAGI  Perangkat lunak digunakan oleh pemakai di lingkungan operasional dengan teknologi tertentu sebagai bagian dari sistem yang lebih besar.  Oleh karena itu, hal kedua yang harus dilakukan saat membuat perangkat lunak adalah memahami lingkungan operasional, teknologi dan sistem yang menjadi tempat dimana perangkat lunak digunakan. 65
  • 66. 66