Bab 5 Pandangan Umum Praktek

dokumen-dokumen yang mirip
Catatan Kuliah Rekayasa Perangkat Lunak (Software Engineering) Bagian 2

REKAYASA SISTEM. Konsep dan Prinsip Analisis

Catatan Kuliah Rekayasa Perangkat Lunak (Software Engineering) Bagian 2

Praktik Rekayasa Perangkat Lunak

(Source: Pressman, R. Software Engineering: A Practitioner s Approach. McGraw-Hill, 2010)

III. METODE KONVENS IONAL 11. REKAYASA SISTEM BERBASIS KOMPUTER

Testing dan Implementasi Sistem

Ratna Wardani. Department of Electronic Engineering Yogyakarta State University

COMPUTER SYSTEM ENGINEERING

DASAR REKAYASA PERANGKAT LUNAK

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

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


Review Rekayasa Perangkat Lunak. Nisa ul Hafidhoh

Tugas Rekayasa Perangkat Lunak

Pemrograman Web Berbasis Framework. Pertemuan 13 : Pengembangan Project (Bag. 1) Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD

Gambar 4.1 Flowchart

BAB III KONSEP DAN PRINSIP ANALISIS

2. BAB II LANDASAN TEORI. lanjut sehingga terbentuk suatu aplikasi yang sesuai dengan tujuan awal.

BAB II LANDASAN TEORI

3. ANALISA KEPERLUAN PERANGKAT LUNAK

Kegunaan tahap ini adalah untuk memobilisasi dan mengorganisir g SDM yang akan melakukan Reengineering

Dibuat Oleh : 1. Andrey ( )

BAB II TINJAUAN PUSTAKA. yang ditandai dengan saling berhubungan dan mempunyai satu fungsi atau tujuan

TESTING DAN IMPLEMENTASI SISTEM. WAHYU PRATAMA, S.Kom., MMSI.

BAB III OBJEK DAN METODE PENELITIAN. Dengan demikian objek yang akan penulis kaji adalah Sistem Informasi

BAB III METODOLOGI PENELITIAN. dalam pengumpulan data atau informasi guna memecahkan permasalahan dan

Bab V Perancangan Model Ensiklopedia

MAKALAH DESAIN PERANGKAT LUNAK. NAMA : RANI JUITA NIM : DOSEN : WACHYU HARI HAJI. S.Kom.MM

BAB II LANDASAN TEORI. sehingga komputer dapat memproses input menjadi output.

TUGAS KELOMPOK MANAJEMEN PROYEK SOFTWARE ENGINEERING. Disusun oleh :

Analisis Model Perangkat Lunak

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

Rekayasa Perangkat Lunak (Software Engineering)

REKAYASA PERANGKAT LUNAK LANJUT DESIGN ENGINEERING. Defri Kurniawan M.Kom

BAB III. Metode Penelitian

3. BAB III METODE PENELITIAN

BAB II LANDASAN TEORI

BAB I PENDAHULUAN. 1.1 Latar Belakang

SOFTWARE TESTING. Ratna Wardani

Metrik Proses dan Proyek Perangkat Lunak KARMILASARI

Rekayasa Perangkat Lunak

BAB II LANDASAN TEORI. pendekatan komponen.dengan pendekatan prosedur, sistem dapat didefinisikan

Nama : Rendi Setiawan Nim :

REKAYASA PERANGKAT LUNAK

A. Pengujian Perangkat Lunak

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

PENGEMBANGAN PERANGKAT LUNAK

BAB II LANDASAN TEORI

BAB IV ANALISIS DAN PERANCANGAN SISTEM. mampu memperkirakan dan merincikan seluruh dokumen ataupun prosedur yang

BAB II LANDASAN TEORI. pengertian. Secara garis besar ada dua kelompok pendekatan, yaitu:

BAB III METODOLOGI PENELITIAN

PENGANTAR RUP & UML. Pertemuan 2

BAB III LANDASAN TEORI

5. Aktivitas generic dalam semua proses perangkat lunak antara lain adalah : a. Spesifikasi dan pengembangan b. Validasi dan evolusi c.

BAB II LANDASAN TEORI

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

BAB III METODOLOGI PENELITIAN

BAB II LANDASAN TEORI. harapan akan memperoleh laba dari adanya transaksi-transaksi tersebut dan. atas barang atau jasa dari pihak penjual ke pembeli.

Bab 3 Metode dan Perancangan Sistem

Bab 3 Metodologi Penelitian

BAB I PENDAHULUAN. dalam suatu perusahaan, karena persediaan akan dijual secara terus menerus untuk

BAB I PENDAHULUAN. (SIG) adalah salah satu sistem informasi yang dibahas dalam ilmu komputer, yang

BAB III ANALISA DAN PERANCANGAN SISTEM. permasalahan yang ada sebagai dasar untuk membuat sebuah solusi yang

BAB IV ANALISIS DAN PERANCANGAN SISTEM. yang utuh ke dalam bagian-bagian komponennya dengan maksud untuk

BAB I PENDAHULUAN 1.1. Latar Belakang

PERANCANGAN SISTEM INFORMASI ABSENSI SISWA PADA BAGIAN AKADEMIK STUDI KASUS DI SMK MEDIKACOM BANDUNG. Abstrak

BAB I PENDAHULUAN. Dinas Pendidikan, Pemuda dan Olahraga Kota Tanjungpinang merupakan

BAB III METODE PENELITIAN

BAB II LANDASAN TEORI

BAB III METODOLOGI PENELITIAN. Gambar 3.1 merupakan desain penelitian yang akan digunakan dalam

BAB II LANDASAN TEORI. implementasi serta pasca implementasi.(rizky, 2011:21). performasi dan fungsi yang diinginkan.

BAB I PENDAHULUAN. Semakin berkembangnya teknologi saat ini, memacu Perusahaan PT. DASS

Unified Modelling Language (UML)

BAB III LANDASAN TEORI

OOAD (Object Oriented Analysis and Design) UML part 2 (Activity diagram, Class diagram, Sequence diagram)

BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah

BAB IV ANALISIS DAN PERANCANGAN SISTEM

PEMODELAN ANALISIS PL

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

BAB II LANDASAN TEORI

BAB III LANDASAN TEORI

METODE DAN TEKNIK PENGEMBANGAN SISTEM INFORMASI

BAB III METODE PENELITIAN

Pertemuan 3. Manajemen Proyek Perangkat Lunak. Proses Dalam Manajemen PL

BAB I PENDAHULUAN.

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

BAB III METODOLOGI PENELITIAN. Desain penelitian disusun berdasarkan tahapan sebagai berikut:

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

BAB 1 PENDAHULUAN Latar Belakang

MATERI PEMODELAN PERANGKAT LUNAK KELAS XI RPL

BAB 2 LANDASAN TEORI

BAB I PENDAHULUAN. 1.1 Latar Belakang

Hanif Fakhrurroja, MT

BAB I PENDAHULUAN. pesat, salah satunya adalah teknologi komputer. Komputer merupakan alat bantu

MODEL DESAIN & DOKUMENTASI DESAIN

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

Transkripsi:

Bab 5 Pandangan Umum Praktek Tujuan Pembelajaran Umum Menjelaskan Perangkat Lunak Sebagai Proses Tujuan Pembelajaran Khusus Mampu Menjelaskan Pandangan Umum Praktik Di dalam melakukan praktek terdiri dari : konsep prinsip metode alat Sesuatu yang harus diperhatikan ketika software direncanakan dan dikembangkan. Dia menunjukkan detail-bagaimana peralatan dari proses perangkat lunak. Esseni Praktek George Polya, dalam sebuah buku yang ditulis pada tahun 1945 (!), Menggambarkan esensi dari praktek rekayasa perangkat lunak... Memahami masalah (komunikasi dan analisis). Merencanakan solusi (pemodelan dan desain PL). Melaksanakan rencana (pembuatan kode). Memeriksa akurasi hasil (menguji dan QA). Pada intinya, praktik yang baik adalah pemecahan masalah yang masuk akal Pertimbangkan kerangka proses generik komunikasi Perencanaan modeling analisis Pemodelan desain Modeling konstruksi coding pengujian penyebaran Dalam mengembangkan perangkat lunak diperlukan kemampuan praktis. Prinsip-prinsip praktis yang ada di dalam pengembangan perangkat lunak antara lain : komunikasi praktis, perencanaan praktis, model praktis, model perancangan, model agile, mengkode dan mendeployment.

Prinsip-prinsip Komunikasi Praktis Mendengarkan secara efektif Siapkan sebelum Anda berkomunikasi Seseorang harus memfasilitasi kegiatan Komunikasi tatap muka adalah yang terbaik Mencatat dan mendokumentasikan keputusan Upayakan untuk kolaborasi Tetap fokus, diskusi modularize Jika ada sesuatu yang tidak jelas, gambarkan Tahu kapan untuk melanjutkan Negosiasi bekerja paling baik maka kedua belah pihak menang Prinisp-prinsip Perencanaan Praktis Memahami ruang lingkup proyek Libatkan konsumen dalam perencanaan Mengakui bahwa perencanaan adalah iteratif Perkiraan didasarkan pada apa yang Anda tahu Pertimbangkan risiko sebagai Anda mendefinisikan rencana Bersikaplah realistis Sesuaikan granularity saat Anda mendefinisikan rencana Tentukan bagaimana Anda berniat untuk memastikan kualitas Jelaskan bagaimana Anda berniat untuk mengakomodasi perubahan Melacak rencana sering dan membuat penyesuaian yang diperlukan Pengorganisasian Prinsip Bohem W5HH itu. Jawaban untuk pertanyaan-pertanyaan berikut mengarah pada rencana proyek, antara lain : 1. Mengapa sistem mulai dikembangkan? 2. Apa yang akan dilakukan? 3. Kapan akan dilakukan? 4. Siapa yang bertanggung jawab? 5. Di mana mereka berada (organisatoris)? 6. Bagaimana tugas diselesaikan secara teknis maupun manajerial? 7. Berapa banyak dari setiap sumber daya yang dibutuhkan? Prinsip-prinsip Modeling Praktis 1. Analisis prinsip pemodelan 2. Mewakili domain informasi 3. Merupakan fungsi perangkat lunak 4. Mewakili perilaku perangkat lunak

5. Partisi representasi ini 6. Pindah dari esensi menuju implementasi Prinsip-prinsip Model Perancangan 1. Desain harus dapat dilacak dari model analisis 2. Selalu mempertimbangkan arsitektur 3. Fokus pada desain data 4. Antarmuka (pengguna maupun internal) harus dirancang 5. User interface harus mempertimbangkan pengguna pertama 6. Komponen harus menunjukkan independensi fungsional 7. Komponen harus longgar digabungkan 8. Representasi desain harus mudah dipahami 9. Model desain harus dikembangkan secara iteratif Prinsip-prinsip model agile (ambler 2002) 1. Tujuan utamanya adalah untuk membuat perangkat lunak, tidak membangun model 2. Jangan membuat model yang lebih dari yang Anda butuhkan 3. Memproduksi model sederhana yang akan menjelaskan masalah 4. Model yang mudah untuk mengubah Membangun 5. Bisa menyatakan tujuan yang jelas untuk masing-masing model 6. Sesuaikan model yang Anda kembangkan untuk sistem di tangan 7. Membangun model yang berguna, bukan yang sempurna 8. Fokus pada apa model berkomunikasi, tidak sintaks 9. Jika Anda merasa tidak nyaman dengan model, ada sesuatu yang mungkin salah 10. Dapatkan umpan balik sesegera mungkin Prinsip-prinsip mengkode Persiapan. Sebelum Anda menulis satu baris kode, pastikan Anda: 1. Memahami dari masalah Anda mencoba untuk memecahkan 2. Memahami prinsip-prinsip desain dan konsep dasar. 3. Pilih sebuah bahasa pemrograman yang sesuai. 4. Pilih lingkungan pemrograman yang tepat dan alat-alat. 5. Buat unit test untuk setiap komponen Anda berencana untuk membuat. Coding. Ketika Anda mulai menulis kode, pastikan Anda: 1. Ikuti pemrograman terstruktur [BOH00] praktek. 2. Pilih struktur data yang akan memenuhi kebutuhan desain. 3. Membuat antarmuka yang konsisten dengan arsitektur perangkat lunak. 4. Jaga logika kondisional sesederhana mungkin. 5. Buat loop bersarang dalam cara yang membuat mereka mudah diuji.

6. Pilih nama variabel yang bermakna, dan ikuti standar lokal lainnya. 7. Menulis kode yang mendokumentasikan diri. 8. Membuat layout visual yang membantu pemahaman. Validasi. Setelah Anda menyelesaikan lulus pertama, pastikan Anda: 1. Melakukan pelacakan kode ketika dimungkinkan. 2. Melakukan tes unit dan memperbaiki kesalahan yang telah ditemukan. 3. Refactor kode. Prinsip-prinsip pengujian 1. Semua pengujian harus sesuai dengan persyaratan 2. Pengujian harus direncanakan 3. Prinsip Pareto berlaku untuk pengujian 4. Pengujian dimulai "di kecil" dan bergerak ke arah "di besar" 5. Pengujian mendalam tidak mungkin Catatan: Sebuah tes yang sukses adalah salah satu yang mengungkap kesalahan yang belum ditemukan. Prinsip-prinsip Deployment 1. Mengelola harapan pelanggan untuk setiap kenaikan 2. Sebuah paket lengkap pengiriman harus dirakit dan diuji 3. Sebuah rezim dukungan harus dibentuk 4. Bahan ajar harus diberikan kepada pengguna akhir 5. Buggy perangkat lunak harus diperbaiki terlebih dahulu, kemudian disampaikan

Bab 6 Rekayasa Sistem Tujuan Pembelajaran Umum Mendeskripsikan Perangkat Lunak Praktis Tujuan Pembelajaran Khusus Mampu Mengidentifikasikan Rekayasa Sistem Rekayasa Sistem Komputer (Computer system engineering) terdiri atas 2 bagian, yaitu : Hardware engineering Software engineering Setiap disiplin ini berusaha menunjukkan pengembangan sistem berbasis komputer tehnik engineering. Untuk hardware komputer telah sedemikian maju dan relatif jenuh. Sebaliknya software komputer mulai berkembang, dan saat ini menggantikan peranan hardware sebagai elemen sistem yang sulit direncanakan, sedikit kemungkinan untuk berhasil dengan biaya rendah dan waktu yang cepat, serta paling sukar untuk dikelola. Apa Sistem itu? Sistem adalah sekumpulan elemen yang saling berinteraksi untuk mencapai suatu tujuan. Sedangkan Computer Based System diorganisir untuk mendapatkan beberapa metode, prosedur atau pengontrolan dengan cara mengelola informasi. Elemen-elemen dari sistem berbasis komputer adalah : 1. Software Program komputer, struktur data dan dokumentasi yang saling berhubungan dan memberikan efek pada metode, prosedur dan kontrol yang diinginkan. 2. Hardware Peralatan elektronik, (misalnya CPU, memory) yang memberikan kemampuan komputasi serta peralatan elektromedia (misalnya sensor, motor, pompa) yang memberikan fungsi external.

3. People / Brainware User dan operator dari hardware dan software 4. Database Sekumpulan informasi yang besar, yang diorganisir agar dapat diakses oleh software dan merupakan bagian integral dari fungsi sistem. 5. Prosedur Langkah-langkah yang menetapkan pemakaian khusus untuk setiap elemen sistem. PROCEDURE DATABASE HARDWARE INPUT SYSTEM OUTPUT DOCUMENT SOFTWARE PEOPLE Gambar 6.1.: elemen system berbasis komputer Pemodelan system Menentukan proses yang melayani kebutuhan sesuai dengan konsideran yang ada. Menampilkan perilaku proses dan asumsi dimana perilaku itu berada. Secara eksplisit menentukan input exogen dan endogen pada model. Input exogen menghubungkan satu konstituen dan satu pandangan dengan konstituen lain pada tingkat yang sama di level yang lain. Input endogen menghubungkan komponen individu pada konstituen pada pandangan khusus. Menampilkan seluruh kaitan (termasuk output) yang memungkinkan engineer mempunya pemahaman yang lebih baik Pemodelan system secara hierarkhi

Gambar 6.2. : Pemodelan system hyrarkhi Arsitektur Sistem Didalam pengembangan system gambaran mengenai arsitektur system diharuskan, adapun arsitektur yang dibutuhkan untuk mendukung proses analisis dan desain system sesuai tujuan bisnis Tiga arsitektur yang berbeda harus dianalisis dan didesain dalam konteks tujuan bisnis: Arsitektur data Arsitektur aplikasi Arsitektur teknologi Arsitektur data menyediakan bingkai kerja untuk kebutuhan infromasi dari bisnis atau fungsi bisnis Arsitektur aplikasi mencakup elemen-elemen sistem yang mentransformasi objek dalam arsitektur data untuk tujuan bisnis Infrastruktur teknologi menyediakan pondasi untuk arsitektur data dan arsitektur aplikasi

Hierarkhi BPE Information strategy planning (ISP) o Tujuan strategis ditentukan o Faktor sukses/aturan bisnis ditentukan o Model perusahaan dibuat Business area analysis (BAA) o Proses/layanan dimodelkan o Inter-relasi proses dan data Application Engineering o RPL o Pemodelan aplikasi/prosedur yang merujuk pada BAA dan batasan-batasan ISP Construction and delivery o menggunakan CASE dan 4GTs, pengujian Didalam melakukan informationa strategy planning (ISP) diperlukan informasi isu-isu seperti : Isu manajemen o Menentukan tujuan bisnis strategis o Isolasi critical success factors o Melakukan analisis pada pengaruh teknologi o Melakukan analisis pada sistem strategis Isu teknis o Membuat model data tingkat tertinggi o Dikelompokkan berdasar area bisnis/organisasi o Memperbaiki model dan clustering Menentukan tujuan dan sasaran : Tujuan pernyataan umum tentang arahan

Sasaran menentukan tujuan yang bisa diukur : mengurangi biaya pabrik pada produk o Sub Sasaran: Menurunkan angka reject dengan 20% di dalam 6 bulan pertama Memperoleh konsesi 10% dari supplier re-engineer 30% dari komponen untuk fabrikasi yang lebih mudah selama tahun pertama Tujuan cenderung strategis, sasaran cenderung taktis Business Area Analysis Menemukan pengelompokan fungsi dan data bisnis yang secara natural kohesif (Martin) Melakukan aktivitas yang banyak sama dengan ISP, tetapi lingkupnya lebih dekat ke area bisnis individual Mengenali sistem informasi yang telah ada sebelumnya/menentukan kompatibilitas dengan model ISP baru o Menentukan sistem yang bermasalah o Menemukan sistem yang tidak kompatibel dengan model informasi baru o Mulai membuat prioritas re-engineering Gambar 6.3. : Proses BAA

Rekayasa Produk Gambar 6.4. : Rekayasa Produk Template Arsitektur produk

Gambar 6.5. : Template Arsitektur Produk Pemodelan system dengan UML Gambar 6.6. : Diagram Arsitektur Flow Diagram o Deployment diagrams ê Setiap box 3D menggambarkan elemen perangkat keras yang merupakan bagian arsitektur fisik dari sistem o Activity diagrams

ê Menampilkan aspek prosedural dari elemen sistem o Class diagrams ê Menampilkan elemen tingkat sistem dalah hal data yang menjelaskan elemen dan operasi yang memanipulasi data tersebut These and other UML models will be discussed later Deployment Diagram Deployment diagram digunakan untuk memvisualisasikan topologi komponen fisik dari sebuah sistem dimana komponen perangkat lunak yang digunakan. Jadi deployment diagram digunakan untuk menjelaskan pandangan penyebaran statis dari sebuah sistem. Deployment diagram terdiri dari node dan hubungan mereka. http://www.tutorialspoint.com/uml/uml_deployment_diagram.htm CLSS processor Sorting subsystem Operator display Sensor data acquisition subsystem shunt controller Conveyor Pulse tach Bar code reader Shunt actuator Gambar 6.7. : Deployment Diagram Activity Diagram Activity diagram adalah diagram lain yang penting dalam UML untuk menggambarkan aspek dinamis dari sistem. Diagram aktivitas pada dasarnya adalah diagram alir untuk mewakili aliran bentuk satu kegiatan dengan kegiatan lain. Kegiatan dapat digambarkan sebagai operasi dari sistem. Jadi aliran kontrol diambil dari satu operasi yang lain. Aliran ini bisa berurutan, bercabang atau bersamaan. Activity diagram berhubungan dengan semua jenis kontrol aliran dengan menggunakan unsur-unsur yang berbeda seperti garpu, dll bergabung

st art conveyor line read bar c ode get c onv ey or speed valid bar code invalid bar code det er m ine bin loc at ion set f or reject bin send shunt c ont rol dat a get shunt st at us read bar code get conveyor st at us produce report ent ry conveyor stopped conveyor in motion Gambar 6.8. : Diagram Activity Class Diagram Class Diagram adalah diagram statis. Ini merupakan pandangan statis dari sebuah aplikasi. Diagram kelas tidak hanya digunakan untuk memvisualisasikan, menggambarkan dan mendokumentasikan aspek yang berbeda dari sistem tetapi juga untuk membangun kode dieksekusi dari aplikasi perangkat lunak. Diagram kelas menggambarkan atribut dan operasi kelas dan juga kendala yang dikenakan pada sistem. Diagram kelas yang banyak digunakan dalam pemodelan sistem berorientasi objek karena mereka adalah satu-satunya diagram UML yang dapat dipetakan secara langsung dengan bahasa berorientasi objek. Diagram kelas menunjukkan koleksi kelas, interface, asosiasi, kolaborasi dan kendala. Hal ini juga dikenal sebagai diagram struktural.

class name Box barcode forwardspeed conveyorlocat ion height widt h dept h weight cont ent s readbarcode() updat espeed () readspeed() updat elocat ion() readlocat ion() get Dimensions() get Weight() checkcont ent s() at t ribut es not e use of capit al let t er f or mult i-word att ribute names operat ions (parentheses at end of name indicat e t he list of attributes that the operation requires) Gambar 6.9. : Class Diagram