Anda di halaman 1dari 4

Software Engineering

1. Requirement Engineering
 Inception
Yang dimaksud inception adalah kita harus mulai dengan mengajukan sebuah set
pertanyaan yang memberikan kita pemahaman dasar atas suatu masalah, orang-orang
yang menginginkan solusi, sifat solusi yang diinginkan, kan keefektifan komunikasi dan
kolaborasi awal antara customer dan developer.
 Elicitation
Mengambil requirements apa saja yang dibutuhkan untuk menjalankan suatu project.
Contohnya adalah dengan mengadakan sebuah meeting dengan customer, developer,
stakeholders dan semua yang berhubungan dengan apa yang akan kita buat dengan
tujuan untuk mengidentifikasi masalah, mengusulkan elemen-elemen dari suatu solusi,
menegosiasikan pendekatan yang berbeda, mengspesifikasi suatu set solution
requirements awal.
 Elaboration
Membuat sebuah model analisis yang mengidentifikasi data, function, dan behavioural
requirements.
 Negotiation
Menyetujui sebuah sistem yang dapat disampaikan dan realistic bagi customer maupun
developer.
 Specification
Mengspesifikasi apa yang akan kita buat. Bisa dalam bentuk use-cases(koleksi dari banyak
user scenarios), prototype, dokumen tertulis, suatu set model, dan matematika formal.
 Validation
Review atau tinjauan ulang tentang mekanisme sistem seperti mencari error dalam
konten/intrepretasinya, area dimana klarifikasi mungkin dibutuhkan, informasi yang
hilang, inkonsistensi, persyaratan yang bertentangan atau tidak realistis (tidak dapat
diraih/unachievable).
 Requirements managements
Mengelola requirements yang kemungkinan akan selalu berubah karena perubahan
zaman dan trend sehingga akan terjadi juga perubahan jenis konsumsi/hal yang akan
dibeli oleh customer.

2. Interface Design
Masalah pada interface design adalah :
 Response time -> berapa lama waktu responsnya
 Help facilities -> fasilitas yang disiapkan untuk membantu pengguna
 Error handling -> apa yang terjadi apabila terjadi error
 Menu and command labeling -> label-label dalam UI(jelas/tidak)
 Application accessibility -> gampang/mudah diakses atau tidak
 Internationalization -> penyesuaian aplikasi/software computer di wilayah local (menjadi
lebih mudah dipakai/tidak)

Interface Design Principles:


 Anticipation -> sebuah webApp harus di-design sedemikian rupa sehingga mengantisipasi
langkah suatu kegunaan selanjutnya.
 Communication -> tampilan dari aplikasi harus mengkomunikasikan status dari aktivitas
yang di-inisiasi oleh user.(contoh logged in as siapa dll)
 Consistency -> Penggunaan navigasi control, menu-menu, icon-icon, dan aesthetics
(warna, bentuk, layout/penempatan)
 Controlled autonomy -> tampilan dari webApp harus bisa memfasilitasi pergerakan user
di web tersebut
 Efficiency -> design dari webApp dan tampilannya harus dapat mengoptimalkan efisiensi
kerja pengguna
 Focus -> fokus terhadap apa yang dapat pengguna lakukan
 Fitt’s Law -> “the time to acquire a target is a function of the distance to and size of the
target”
 Human interface objects -> menggunakan library luas/banyak dari human interface
objects yang dapat digunakan kembali.
 Latency reduction -> mengurangi response time
 Learnability -> gampang dimengerti dan dipelajari oleh user
 Maintain work product integrity -> memastikan integritas dari data yang disubmit user
tidak hilang apabila ada error yang terjadi.
 Readability -> semua informasi yang diberikan pada UI harus bisa dibaca oleh semua
orang (baik tua maupun muda)
 Track State -> status dari interaksi user harus dilacak dan disimpan sehingga ketika user
keluar (logoff) dan saat user kembali lagi, user dapat meneruskan pekerjaan yang ia
tinggalkan sebelumnya.
 Visible navigation -> sebuah tampilan webApp yang didesain dengan baik dapat
memberikan ilusi bahwa user berada di tempat yang sama dengan pekerjaan yang dibawa
kepada mereka.

3. Framework
Framework activities:
• Communication
• Planning
• Modeling
– Analysis of requirements
– Design
• Construction
– Code generation
– Testing
• Deployment

Framework adalah sebuah software untuk memudahkan para programer untuk membuat sebuah
aplikasi web yang di dalam nya ada berbagai fungsi diantaranya plugin, dan konsep untuk
membentuk suatu sistem tertentu agar tersusun dan tersetruktur dengan rapih. (framework
dapat disamakan dengan kerangka)
Framework PHP:
- Laravel
- Code Igniter
- Dll

Framework CSS:
- Bootstrap
- Jquery
- dll

4. Design Pattern
Sebuah pattern yang efektif adalah pattern yang :
 It solved a problem. Memecahkan masalah yaitu dengan memberikan solusi bukan saja
strategi atau prinsip.
 It is a proven concept. Merupakan konsep yang sudah dibuktikan dan memiliki track
record.
 The solution isn’t obvious. Solusinya tidak jelas/tidak gampang didapatkan. Pola terbaik
dalam menghasilkan solusi untuk masalah yang tidak langsung adalah dengan melakukan
pendekatan yang diperlukan untuk masalah design yang paling sulit.
 It describes a relationship. Patterns tidak hanya menjelaskan modules tapi juga
menjelaskan tentang struktur dan mekanisme dari sistem.
 The pattern has a significant human component (minimize human interventions).
Mengurangi campur tangan manusia sehingga software dapat memberikan kenyamanan
dan kualitas bagi manusia yang memakainya.

Jenis-jenis patterns:
 Architectural patterns -> broad-based design problems yang dipecahkan menggunakan
pendekatan structural
 Data patterns -> mendeskripsikan data-oriented problems pada masa kini dan
menggunakan data modelling solutions untuk memecahkannya.
 Component patterns -> disebut sebagai design patterns. Menyampaikan masalah yang
berhubungan dengan subsystems dan components seperti bagaimana mereka
berkomunikasi satu sama lain dan letak mereka dalam suatu architecture besar.
 Interface design patterns -> mendesripsikan masalah UI yang biasa terjadi dan solusi
dengan sebuah system of forces yang berisi karakteristik yang spesifik dan end-users.
 WebApp patterns -> menyampaikan sebuah masalah yang dihadapi ketika membangun
webApps dan sering menggabungkan pola lain (yang ada diatas).
 Creational patterns -> fokus pada “creation, composition, dan representasion of objects”
 Abstract factory pattern : keputusan terpusat dari factory apa yang akan
menjadi contoh
 Factory method pattern : pembuatan terpusat dari suatu objek dari jenis
tertentu yang memilih salah satu dari beberapa implementasi
 Structural patterns -> fokus pada masalah dan solusi yang berhubungan dengan
bagaimana classes dan objects diorganisir dan diintegrasikan untuk membuat struktur
yang lebih besar.
 Adapter pattern : “beradaptasi” terhadapt suatu interface untuk sebuah class
ke sesuatu yang diharapkan client
 Aggregate pattern : sebuah versi dari composite pattern dengan metode
untuk aggregation dari anak
 Behavioural patterns -> menyampaikan masalah yang berhubungan dengan tugas dari
tanggung jawab antara objects dan cara dimana komunikasi dilakukan antara objects.
 Chain of responsibility pattern : object perintah(command) ditangani atau
diteruskan ke object lain oleh objek pemrosesan yang mengandung logika
 Command pattern : object perintah merangkum tindakan dan parameternya

5. Kasus (model usecase diagram, class diagram & description)


Contoh :

USE CASE DESCRIPTION


Use case name Create a Transaction
Scenario Creating a transaction to buy/pay for a treatment
Triggering Event Customer wants to purchase items/treatment
Brief Description Customer will log in to the website and then customer could buy the product(s)
or choose a treatment with some specialist (skin-specialist or MUA). Customer
will have to pay after he/she choose either product or treatment. If customer
choose product, then admin from the system will manage the order and tell the
supplier to send the products to customer. If customer choose treatment, then
admin from the system will manage their order and give it to the specialist
he/she choose. For the specialist, they could write the details about what they
are offering and they would receive payment per-order he/she gets.
Actors Customer, Admin, Specialist
Related Use case
Stakeholders
Preconditions Account must exist, products must exist, treatment must exist
Post conditions
Flow of Activities Actor System
1. Customer login/register 1.1. System validates account or system
2. Customer choose transaction add/register new account
3. Customer pay for the 2.1. System process the transaction
transaction
Exception
Conditions

Beri Nilai