Software Architecture

dokumen-dokumen yang mirip
Configuration Management

Software Development Life Cycle (SDLC)

Agile Planning and Estimation

Pengenalan Rekayasa Perangkat Lunak (RPL)

DAFTAR ISI. KATA PENGANTAR... i. DAFTAR ISI... iii. DAFTAR GAMBAR... viii. DAFTAR TABEL... xii. DAFTAR LAMPIRAN... xiii

PENGANTAR RUP & UML. Pertemuan 2

Analisis dan Perancangan Sistem II T02 Use Case

SI402 Arsitektur Enterprise Pertemuan #4 Suryo Widiantoro, ST, MMSI, M.Com(IS)

BAB I PENDAHULUAN. media pembelajaran itu adalah e-learning. E-learning merupakan suatu teknologi informasi

DAFTAR ISI. KATA PENGANTAR... i. DAFTAR ISI... iii. DAFTAR GAMBAR... vii. DAFTAR TABEL... ix. DAFTAR LAMPIRAN... x Latar Belakang Masalah...

PRAKTIKUM REKAYASA PERANGKAT LUNAK MODUL KE - 2 PENGENALAN UML dengan RATIONAL ROSE OLEH: ANISA ISTIQOMAH (KELAS 5 B)

REKAYASA PERANGKAT LUNAK LANJUT ANALYSIS WEB E. Defri Kurniawan M.Kom

MODUL 4 Unified Software Development Process (USDP)

BAB III METODE PENELITIAN

Arsitektur Aplikasi Web

3. BAB III METODE PENELITIAN

BAB III OBJEK DAN METODE PENELITIAN. domain & Web Hosting. Untuk lebih jelas mengenai gambaran umum perusahaan,

METODE DAN TEKNIK PENGEMBANGAN SISTEM INFORMASI

Equipment Monitoring Control Manajemen System Berbasis Web Application

BAB 1 PENDAHULUAN 1.1 Latar Belakang

BAB IV ANALISIS DAN PERANCANGAN SISTEM. hasil analisis ini digambarkan dan didokumentasiakan dengan metodologi

BAB III METODE PENELITIAN. berjalannya perancangan dan implementasi aplikasi. (RAM), Sistem Operasi Windows 8.

HALAMAN PENGESAHAN PEMBIMBING...

DAFTAR ISI HALAMAN JUDUL PERTAMA

BAB III ANALISIS DAN PERANCANGAN SISTEM. menentukan kebutuhan dari sistem yang akan dibuat.

BAB 1 PENDAHULUAN. tersebut adalah metode pemodelan (notation), proses (process) dan tool yang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

II.3.5 Statechart Diagram... II-14 II.3.6 Activity Diagram... II-15 II.3.7 Component Diagram... II-16 II.3.8 Deployment Diagram... II-16 II.3.

BAB IV ANALISIS DAN PERANCANGAN SISTEM. dimaksudkan untuk menitik beratkan kepada fungsi sistem yang berjalan dengan

BAB IV ANALISIS DAN PERANCANGAN SISTEM

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB II LANDASAN TEORI

BAB 1 PENDAHULUAN. memasuki berbagai aspek kehidupan. Salah satunya adalah semakin banyak

DAFTAR ISTILAH. Activity Diagram

BAB III OBJEK DAN METODE PENELITIAN

BAB II LANDASAN TEORI. Pada tahap ini berisi pengertian dan penjelasan teori-teori yang digunakan penulis untuk pembangunan sistem.

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI. Unified Modeling Language (UML) merupakan sistem arsitektur yang bekerja dalam

BAB 1 PENDAHULUAN. masyarakat dengan Kuliah Kerja Nyata (KKN) merupakan suatu bentuk kegiatan

PERANCANGAN SISTEM INFORMASI MANAJEMEN PERPUSTAKAAN MENGGUNAKAN POLA MODEL-VIEW- CONTROLLER (MVC)

Arsitektur Aplikasi Web

BAB 3 METODOLOGI PENELITIAN

Review Rekayasa Perangkat Lunak. Nisa ul Hafidhoh

BAB IV ANALISIS DAN PERANCANGAN SISTEM. terkomputerisasi. Berikut adalah uraian proses dari kegiatan pemesanan makanan

Pemodelan Berorientasi Objek

Bab 3 Metode dan Perancangan Sistem

DAFTAR ISI. KATA PENGANTAR... iii. DAFTAR SIMBOL... xix

Catatan: Teks yang berwarna biru adalah teks yang harus dihapus dan diganti dengan isi yang sebenarnya.

DAFTAR ISI... HALAMAN JUDUL... HALAMAN PERNYATAAN PERSETUJUAN... HALAMAN PENGESAHAN... MOTTO DAN PERSEMBAHAN... RINGKASAN... KATA PENGANTAR...

Pendahuluan. 1 Pengenalan UML

Proses Pengembangan 1

Basis Data 2. Database Client / Server. Arif Basofi, S.Kom. MT. Teknik Informatika, PENS

ARSITEKTUR INFORMASI PENJUALAN & PEMBELIAN KAMERA

BAB V ANALISIS DAN INTEPRETASI HASIL

BAB II LANDASAN TEORI

BAB III OBJEK DAN METODE PENELITIAN. Universitas Padjadjaran yang beralamat di Jl. Ir H. Djuanda No 4 Bandung.

BAB II ANALISIS DAN PERANCANGAN

BAB II DASAR TEORI...

MATERI PEMODELAN PERANGKAT LUNAK KELAS XI RPL

Lampiran 1 - Pengenalan terhadap UML (Unified Model Language)

BAB IV ANALISA DAN PERANCANGAN SISTEM. Adapun analisis sistem akan dilakukan pada bagian gudang ruang lingkup

BAB II ANALISIS DAN PERANCANGAN. Sistem informasi penjualan dan pembelian Tissue SMART NARENA

BAB III METODE PENELITIAN. (Software Development Life Cycle). System Development Life Cycle (SDLC) adalah

DAFTAR ISI. ABSTRAKSI... iv. KATA PENGANTAR... vi. DAFTAR ISI... viii. DAFTAR TABEL... xii. DAFTAR GAMBAR... xiii BAB I PENDAHULUAN...

DAFTAR ISI. HALAMAN PENGESAHAN ABSTRAK... i KATA PENGANTAR... ii DAFTAR ISI... iii DAFTAR GAMBAR... vii DAFTAR TABEL... xi

DAFTAR ISI. Abstraksi... Kata Pengantar... Daftar Isi... Daftar Tabel... Daftar Gambar... Daftar Lampiran... BAB I PENDAHULUAN...

BAB I PENDAHULUAN. memungkinkan pengembangan sistem informasi berbasis komputer. Sistem informasi

Bab 3 Metode dan Perancangan Sistem

SESI PERTAMA. 1.1 UML sebagai standarisasi. 1.2 UML, asal usul INFORMATION SYSTEM DESIGN USING UML YUDHO

ABSTRACT. Keywords: JSF, Primefaces, Spring Framework, Java, ibatis, Property Reservation, MVC, Java Enterprise Edition, Web Mobile, PDA.

BAB 1 PENDAHULUAN. berbangsa dan bernegara, karena pendidikan dapat mengembangkan kualitas sumber

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

DAFTAR ISI. BAB II : LANDASAN TEORI Konsep Dasar Sistem Karateristik Sistem... 11

BAB II ANALISIS DAN PERANCANGAN. pendekatan perancangan sistem berorientasi objek. Perancangan sistem

53 Gambar 4. 1 Proses Bisnis sistem yang sedang berjalan Keterangan: 1. Peminjam wajib menyerahkan kwitansi atau bukti transaksi. 2. Staff admin memer

BAB III METODOLOGI PENELITIAN

DASAR REKAYASA PERANGKAT LUNAK

DAFTAR ISI LEMBAR PENGESAHAN SURAT PERNYATAAN

BAB III METODE PENELITIAN. 3.1 Metode Pengembangan Sistem

DAFTAR ISI. HALAMAN JUDUL... i. HALAMAN PERSETUJUAN... ii. HALAMAN PENGESAHAN... iii. HALAMAN MOTTO... iv. HALAMAN PERSEMBAHAN... v. INTISARI...

PERANGKAT LUNAK PENGOLAHAN NILAI SISWA PADA SEKOLAH MENENGAH ATAS (STUDI KASUS DI SMA YADIKA SUMEDANG)

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

BAB III METODOLOGI PENELITIAN

IV. HASIL DAN PEMBAHASAN. Rancung bangun sistem permainan game puzzle pada handphone berbasis java

BAB 3 METODOLOGI PEMECAHAN MASALAH

GAMBAR... BAB I PENDAHULUAN...

BAB 3 METODE PENELITIAN

U M L. Unified Modeling Language

BAB III. Metode Penelitian

BAB I PENDAHULUAN. I.1. Latar Belakang

BAB II LANDASAN TEORI

ARSITEKTUR INFORMASI PENJUALAN TRAKTOR, ALAT PANEN DAN SPARE PART

2.4.1 Pemodelan Proses Behaviour Diagram Implementation Diagram Bahasa pemrograman PHP

Yuli Purwati, M.Kom USE CASE DIAGRAM

PENERAPAN JAVA SERVER FACES UNTUK DESIGN PATTERN WEB

BAB 1 PENDAHULUAN 1.1. Latar Belakang

LEMBAR JUDUL LEMBAR PENGESAHAN

BAB II LANDASAN TEORI. Sistem adalah suatu jaringan kerja dari prosedur-prosedur yang saling

1 BAB 1 PENDAHULUAN 1.1 Latar Belakang

BAB 2 LANDASAN TEORI

Transkripsi:

Software Architecture Budi Irawan facebook.com/deerawan @masbugan blog.budiirawan.com Kenapa Harus Pusing Mikirin Software Architecture? 1

Arsitektur yang baik adalah kunci dari suksesnya suatu software Arsitektur Pada Rumah 2

Apa itu Software Architecture? Rancangan sistem dalam bentuk komponen-komponen serta bagaimana komponen2 tersebut berinteraksi Contoh Komponen Rumah Pintu Genteng Jendela Tembok Lantai Perabotan 3

Tujuan dari Software Architecture Alat komunikasi antar stakeholders Membantu dalam proses desain software Mengidentifikasi komponen software serta interaksinya dalam sistem Untuk digunakan kembali (jika bidangnya sama misal: rumah sakit) Yg Mempengaruhi Arsitektur Lingkungan development misalnya penggunaan hardware, integrasi dengan software lain Kemampuan dari sang arsitek 4

Kaitan Software Requirement dengan Software Architecture Kaitan antara Software Requirements dengan Software Architecture itu erat. Software Architecture berusaha untuk memastikan functional dan non functional requirement dapat terealisasikan 5

Saya mau buat fitur login yang terintegrasi dengan Facebook dan Twitter Oh! Berarti nanti desain arsitekturnya harus ada hubungan dengan Facebook dan Twitter User Team Saya mau buat fitur login terintegrasi dengan forum Kaskus sehingga saya login bisa pakai loginnya Kaskus Hmm, susah nih karena arsitektur si kaskus tidak bisa diintegrasikan dalam fitur login. Saya mau nego ulang fitur ini. User Team 6

Dalam requirement engineering, kita harus selalu memikirkan apakah arsitekturnya dapat dibuat apa tidak Architectural Design 7

Architectural Design merupakan sekumpulan keputusan terkait desain Sang Arsitek Ridwan Kamil (RK) 8

Rancangan Denah Rumah RK Tempat tidur saya taruh dekat taman biar nanti ada udara segar yang masuk Kamar Mandi saya taruh di tengah2 dua kamar untuk nanti memudahkan ketika ke kamar mandi Keputusan2 Sang Arsitek RK 9

Jika kita ingin mendokumentasikan arsitektur berarti kita mendokumentasikan keputusan2 tersebut. Apa alasan dibalik keputusan tsb. Biasanya dokumentasi keputusan desain jarang dilakukan 10

3 Alasan Keputusan Desain Tidak Terdokumentasi Keputusan bersifat implisit: biasanya karena pengalaman arsitek Keputusan bersifat eksplisit tapi tidak terdokumentasi: biasanya karena mepet waktu Keputusan eksplisit dan tidak terdokumentasi eksplisit: biasanya karena si arsitek cari aman di posisinya biar ga kena pecat Cara Dokumentasi Keputusan Desain Elemen Issues Decision Status Assumptions Alternatives Rationale Implications Notes Deskripsi Isu yang sedang ingin diselesaikan Keputusan yang diambil Pending atau disetujui Asumsi terkait environment pengembangan Alternatif lain dari keputusan yang diambil Alasan kuat dari keputusan yang diambil Implikasi dari keputusan yang diambil Catatan jika ada 11

Contoh Dokumentasi Keputusan Desain Elemen Issues Decision Status Assumptions Alternatives Rationale Implications Notes Deskripsi Sistem yang dibuat harus menggunakan database open source Menggunakan MySQL Disetujui Sistem tidak diakses oleh puluhan juta pengguna PostgreSQL namun banyak hosting yang tidak support Programmer sudah familiar, banyak hosting yang mendukung dan lebih mudah digunakan Kinerja MySQL harus diuji coba sekuat apa untuk sistem ini Tidak ada Architectural View 12

Software Architecture digunakan untuk komunikasi diantara para stakeholders Siapa Stakeholder? End User Pengguna sistem lain Pakar security Arsitek itu Sendiri manager programmer 13

Tiap Stakeholder memiliki kepentingan yang berbeda Contoh Perbedaan Programmer ingin tahu dimana dia bisa implementasi suatu fitur Pakar security ingin tahu keterkaitan sistem ini dengan jaringan gimana 14

Butuh untuk membuat tampilan gambar arsitektur yang berbeda untuk stakeholder yang berbeda. Ini yang disebut Architectural View Elemen Dasar Software Architecture (IEEE standard 1471) 1. Stakeholder: pihak yang berkepentingan dengan sistem 2. View: representasi sistem dari perspektif kepentingan stakeholder 3. Viewpoint: teknik untuk membangun view 15

4+1 Model Viewpoints 1. Logical viewpoint 2. Development viewpoint 3. Process viewpoint 4. Physical viewpoint 5. Scenarios 1) Logical Viewpoint Terkait dengan fungsionalitas yang diberikan sistem ke pengguna 16

Logical view direprentasikan dengan diagram UML seperti Class Diagrams, Sequence Diagram, dsb Contoh Class Diagram 17

2) Development Viewpoint Ilustrasi sistem dari perspektif programmer dan terkait dengan software management Development view direprentasikan dengan diagram UML seperti Package Diagram atau Component Diagram 18

Contoh Package Diagram 3) Process Viewpoint Menggambarkan aspek dinamis dari sistem meliputi proses dan interaksinya 19

Process view direprentasikan dengan diagram UML seperti Activity Diagram Contoh Activity Diagram 20

4) Physical Viewpoint Menggambarkan topologi komponen dari software dalam physical layer (bentuk fisik seperti server dsb) Physical view direprentasikan dengan diagram UML seperti Deployment Diagram 21

Contoh Deployment Diagram 5) Scenarios Menggambarkan interaksi antara proses dengan objek (objek bisa user, sistem, dsb) 22

Scenario direprentasikan dengan diagram UML seperti Use Case Diagram Contoh Use Case Diagram 23

Class Diagram untuk Stakeholder siapa? programmer Use Case Diagram untuk Stakeholder siapa? End user 24

Architectural Pattern/Styles Architecture Pattern Pola arsitektur yang menjadi solusi untuk memecahkan masalah desain software 25

Analogi Pola Baju Contoh Architecture Pattern 1. Three-tier Architecture 2. MVC architecture 3. dsb...total ada 21 arsitektur bo! 26

1) Three-tier Architecture Memperlihatkan adanya pemisahan (separation) modules Diagram Three-tier Architecture 27

Three Tier 1. Presentation tier: ngurusin tampilan 2. Logic tier: ngurusin kalkulasi, pemrosesan data 3. Data tier: ngambil dan nyimpan data 2) MVC Architecture Memperlihatkan adanya pemisahan (separation) interaksi 28

Diagram MVC Architecture MVC 1. Model: ngambil dan nyimpan data, logika aplikasi 2. Controller: penghubung antara model dan view 3. View: menampilkan tampilan ke user 29

What we have learned? What we Have Learned? Apa itu Software Architecture? Kaitannya dengan Rumah apa? 4+1 Viewpoints? Activity Diagram masuk ke viewpoint apa? Contoh architectural pattern 30

Review Mission The Mission Misi Quiz Kelompok Use Case Diagram Misi 4 31

Your Mission The Mission James Bond butuh persiapan misi penting yaitu misi UTS Misi UTS hanya one time mission 32

Thank You 33