Dosen pengampu :
Dr. Eng. Mardiana, S.T.,M.T.
Disusun oleh :
NPM : 2015061045
Kelas : B
Implementation (Software) :
Pendekatan formal untuk menerapkan Software Development Life Cycle (SDLC) dan
Representasi yang disederhanakan dari proses perangkat lunak atau juga Serangkaian aktivitas,
tindakan, tugas, pencapaian, dan produk kerja yang dibutuhkan untuk merekayasa kualitas tinggi
perangkat lunak
Metodologi pengembangan Software :
Sprint Planning adalah proses perencanaan pekerjaan yang akan dikerjakan dalam satu Sprint
,Perencanaan ini dilakukan secara kolaboratif oleh seluruh anggota Scrum Team.
Sprint Execution
Sprint Execution adalah pekerjaan yang dilakukan Scrum Team untuk mencapai Sprint
Goal,Prinsip Scrum Execution adalah Task Planning, Daily Scrums, Task Performance,
Communicating, dan Flow Management.Sprint Execution dapat diasumsikan sebagai mini
project yang bertujuan untuk menghasilkan potentially shippable product increment.
Sprint Review
Sprint Review adalah Sprint yang dilakukan untuk memeriksa dan menyesuaikan progres
pekerjaan.Sprint Review terjadi di dekat akhir sprint setelah Sprint Execution dan sebelum (atau
kadang setelah) Sprint Retrospective.
Sprint Retrospective
Sprint Retrospective adalah sebuah kesempatan bagi Scrum Team untuk menginspeksi dirinya
sendiri dan membuat perencanaan mengenai peningkatan yang akan dilakukan di Sprint
berikutnya,Sprint Retrospective Dilakukan setelah Sprint Review dan sebelum Sprint Planning
berikutnya.
Sistem Request
Business Need
Merupakan Alasan terkait bisnis untuk memulai proyek pengembangan perangkat lunak dan
Alasan mendorong proyek, dan mengapa proyek harus didanai .Contohnya Meningkatkan
penjualan ,Mengurangi biaya operasional ,Meningkatkan produktifitas pegawai , Meningkatkan
kualitas layanan ,Mengurangi kebocoran/kecurangan, Mengurangi cacat produksi ,Meningkatkan
efisiensi kerja.
Business Value
Merupakan Manfaat yang akan diciptakan perangkat lunak bagi organisasi • Nilai berwujud
(nilai yang dapat diukur) dan nilai tidak berwujud (kepercayaan intuitif).
Contohnya • Peningkatan penjualan 3% • Pengurangan biaya operasional 10% • Peningkatan
produktifitas pegawai 10% (dihitung rasio pekerjaan dan gaji) • Pengurangan cacat produksi
20% • Peningkatan efisiensi kerja 20% .
Business Requirements
Kemampuan bisnis yang akan disediakan oleh perangkat lunak dan Dapat diganti dengan
Diagram Kasus Penggunaan .
Contohnya Fitur registrasi, login, dan logout , Fitur pengelolaan data pengguna , Fitur
pengiriman notifikasi otomatis ,Fitur cetak laporan bulanan dan tahunan.
Kualitas perangkat lunak (IEEE, 1991):
1. Sejauh mana sistem, komponen, atau proses memenuhi ditentukan Persyaratan
2. Sejauh mana sistem, komponen, atau proses bertemu pelanggan.
Kapan Project Software Diinisiasi?
Ketika ada seseorang yang melihat peluang menciptakan business value dengan menggunakan
software dan teknologi informasi • Seseorang itu kemudian membuat System Request • System
Request kemudian dianalisis kelayakannya (Feasibility Analysis) untuk menentukan apakah akan
diteruskan projectnya atau tidak • Di dalam analisis kelayakan, dilakukan juga penghitungan
usaha pengembangan software (butuh berapa bulan dan berapa orang) • sehingga analisis
kelayakan ekonomi bisa dibangun dengan akurat.
What is a Requirements
Persyaratan Bisnis
• Pernyataan tentang apa yang harus dilakukan sistem
• Fokus pada apa yang harus dilakukan sistem, bukan bagaimana melakukannya .
1. Persyaratan Fungsional
Kebutuhan tentang fungsi perangkat lunak secara menyeluruh, Pemodelan dengan UML, ataupun
penjelasan fiturfitur dalam bentuk problem statements, adalah termasuk dalam Functional
Requirement.
2. Persyaratan Nonfungsional
Operasional - Lingkungan fisik / teknis, Kinerja - Kecepatan dan keandalan, Keamanan - Siapa
yang dapat menggunakan sistem, Budaya & Politik - Kebijakan perusahaan, masalah hukum.
1. Analisis Dokumen
Memberikan petunjuk tentang "formal" sistem As-Is yang ada , Dokumen khas , Formulir ,
Laporan ,Panduan kebijakan ,Cari penambahan pengguna ke formulir ,Cari elemen formulir yang
tidak digunakan dan Lakukan analisis dokumen sebelum wawancara.
2. Wawancara
Teknik yang paling umum digunakan dan sangat natural , Jika Anda perlu mengetahui sesuatu,
Anda bertanya seseorang ada Lima langkah dasar: 1. Memilih narasumber 2. Merancang
pertanyaan wawancara 3. Mempersiapkan wawancara 4. Melakukan wawancara 5. Tindak lanjut
pasca-wawancara.
4. Kuesioner
Memilih peserta , Menggunakan sampel populasi,Merancang kuesioner ( Lebih penting dari
pertanyaan wawancara) , Prioritaskan pertanyaan untuk menarik perhatian ,Membedakan antara:
a. Pertanyaan berorientasi fakta (jawaban spesifik)
b. Pertanyaan opini (skala setuju - tidak setuju) , Mengelola kuesioner , Jelaskan pentingnya &
bagaimana itu akan digunakan , Berikan tanggal tanggapan yang diharapkan ,Menindaklanjuti
pengembalian yang terlambat dan meminta supervisor menindaklanjuti ,Berjanji untuk
melaporkan hasil , Kuisioner tindak lanjut ,Mengirim hasil ke peserta.
5. Pengamatan
Pengguna / pengelola sering kali tidak ingat semua yang mereka lakukan • Memvalidasi info
yang dikumpulkan dengan cara lain • Perilaku berubah ketika orang-orang diawasi • Tetap low
profile, jangan ubah prosesnya • Berhati-hatilah untuk tidak mengabaikan aktivitas berkala
1. Sindrom "Ya, Tapi" Berasal dari sifat manusia dan ketidakmampuan pengguna untuk
mengalami perangkat lunak karena mereka mungkin perangkat fisik.
2. "Reruntuhan yang Belum Ditemukan" Menelusuri persyaratan seperti menelusuri "Reruntuhan
yang Belum Ditemukan“ Semakin banyak Anda menemukan, semakin banyak yang Anda
ketahui Sindrom
3. "Pengguna dan Pengembang" Mencerminkan perbedaan mendasar antara keduanya, membuat
komunikasi menjadi sulit
1. UML
UML atau Unified Modeling Language ,UML dapat digunakan untuk memodelkan semua proses
dalam siklus hidup pengembangan dan lintas teknologi implementasi yang berbeda (tidak
bergantung pada teknologi dan bahasa) UML adalah bahasa standar untuk memvisualisasikan,
menentukan, membangun, dan mendokumentasikan artefak dari sistem intensif perangkat lunak
UML adalah alat komunikasi - untuk tim, dan pemangku kepentingan lainnya
a. Alat UML yang Tercanggih
• Rational Rose
• Visual Paradigm
• Sparx Systems
Enterprise Architect
• Microsoft Visio
• Star UML
b. Masalah UML
1. UML adalah notasi pemodelan, ini bukan proses pengembangan atau metodologi
,Proses pengembangan yang didorong UML?
2. UML terlalu kompleks, sulit dipahami dengan cepat Diagram
,UML mana yang harus kita gunakan?
c. Analisis dan Desain Perangkat Lunak berbasis UML
1. Menampilkan batasan sistem dan fungsi utamanya menggunakan use case dan actor
2. Buat model proses bisnis organisasi dengan diagram aktivitas
3. Gambarkan realisasi kasus penggunaan dengan diagram urutan
4. Mewakili struktur statis dari suatu sistem menggunakan diagram kelas
5. Ungkap arsitektur implementasi fisik dengan diagram penerapan
1. Sistem
Menyatakan batasan sistem dalam relasi dengan aktor-aktor yang menggunakannya
(di luar sistem) dan fitur-fitur yang harus disediakan (dalam sistem).
2. Aktor
Aktor adalah segala hal diluar sistem yang akan menggunakan sistem tersebut untuk
melakukan sesuatu. Bisa merupakan manusia, sistem, atau device yang memiliki
peranan dalam keberhasilan operasi dari sistem.
3. UseCase
Use Case sendiri adalah gambaran fungsional dari sebuah sistem. Dengan demikian,
antara konsumen dan juga pengguna pada sistem tersebut, akan mengerti atau paham
mengenai fungsi sistem yang tengah dibangun.
Class adalah konsep dan deskripsi dari sesuatu,Class mendeklarasikan method yang dapat
digunakan (dipanggil) oleh object Sedangkan Object merupakaninstance dari class, bentuk
(contoh) nyata dari class,Object memiliki sifat independen dan dapat digunakan untuk
memanggil method.
a. Encapsulation
Mekanisme menyembunyikan suatu proses dan data dalam sistem untuk menghindari
interferensi, dan menyederhanakan penggunaan proses itu sendiri
Class access level (public, protected, privat) adalah implementasi dari konsep encapsulation
Enkapsulasi data dapat dilakukan dengan cara:
d. mendeklarasikan instance variable sebagai private
e. mendeklarasikan method yang sifatnya public untuk mengakses variable tersebut
a. Overloading: Kemampuan untuk menggunakan nama yang sama untuk beberapa method
yang berbeda parameter (tipe dan atau jumlah)
b. Overriding: Kemampuan subclass untuk menimpa method dari superclass, yaitu dengan
cara menggunakan nama dan parameter yang sama pada method.
Layout Concepts
Layar sering dibagi menjadi tiga kotak Area navigasi (atas), Area status (bawah) ,Area
kerja (tengah) ,Informasi dapat disajikan di berbagai area, seperti area yang harus
dikelompokkan bersama Area dan informasi harus meminimalkan pergerakan pengguna
dari satu ke yang lain Idealnya, area akan tetap konsisten di: Ukuran, Bentuk,
Penempatan untuk memasukkan data, Laporan yang menyajikan data yang diambil
Masalah Terbesar: Terlalu banyak informasi untuk diproses Berikan struktur yang logis
Kronologis Paling sering digunakan hingga yang paling jarang digunakan Umum hingga
khusus
Content Awareness
Estetika
Antarmuka harus fungsional dan menarik untuk digunakan, Enak dipandang ,Hindari
meremas terlalu banyak ,Khususnya untuk pengguna pemula .Pengguna berpengalaman
dapat menangani lebih banyak info Rancang teks dengan hati-hati Perhatikan font dan
ukurannya Hindari menggunakan semua huruf kapital Warna dan pola harus digunakan
dengan hati-hati .Uji kualitas warna Coba antarmuka pada monitor monokrom Gunakan
warna untuk memisahkan atau mengkategorikan item Jangan hanya mengandalkan warna
untuk menyampaikan makna
Alasan utama mengapa antarmuka sulit untuk dirancang adalah karena setiap
antarmuka adalah sebuah bahasa pemrograman yang kecil: antarmuka menjelaskan
sekumpulan objek-objek dan operasi-operasi yang bisa digunakan untuk
memanipulasi objek.
Dalam proses pengembangan antarmuka, kita bisa atau mungkin saja tidak bisa
memisahkannya dari seluruh proses pengembangan sebuah produk. Walaupun begitu,
fokus dari dua proses tersebut sangatlah berbeda. Dalam proses pengembangan
antarmuka, fokus haruslah terletak pada elemen-elemen antarmuka dan objek-objek
yang pengguna lihat dan gunakan, dibandingkan dengan kemampuan sebuah program.
Pemodelan data
Systems Implementation
1. Konstruksi: Pengembangan semua bagian perangkat lunak itu sendiri, dokumentasi, dan
prosedur operasi baru
2. Pengujian: Suatu bentuk asuransi. Lebih murah untuk memperbaiki bug lebih awal,
daripada nanti
3. Dokumentasi: Memberikan informasi untuk membuat sistem lebih mudah digunakan dan
dipelihara
4. Instalasi: Aspek teknis (konversi) dan aspek organisasi (manajemen perubahan).