Professional Documents
Culture Documents
Motivation
Brooks – 1987
2
Apa Itu Requirement Engineering?
●
Requirement Engineering (RE) adalah istilah lain dari
Requirement Analysis
●
Setiap proses pembangunan software akan melalui fase RE
●
Proses mendefinisikan layanan yang dibutuhkan
pelanggan dari suatu sistem dan batasan di mana ia
beroperasi dan dikembangkan
-- Ian Sommerville
●
The broad spectrum of tasks and techniques that lead
to an understanding of requirements
-- Roger S. Pressman
3
Anonymous Customer
“I know you believe you understood what you think I said, but I am not
sure you realize that what you heard is not what I meant . . . . .”
4
What is a Requirement?
• IEEE-STD-1220-1998:
a statement that identifies a product or process, operational,
functional, or design characteristic or constraint, which is
unambiguous, testable, or measurable, and necessary for
product or process acceptability (by consumers or internal
quality assurance guidelines).
• CMMI (Capability Maturity Model Integration) version 1.3:
i. a condition or capability needed by a user to solve a problem
or achieve an objective,
ii.a condition or capability that must be met/possessed by a
product, service, product component or service component to
satisfy a supplier agreement, standard, specification or other
formally imposed documents,
iii.a documented representation of a condition or a capability as
in (i) or (ii) above.
Kategori kebutuhan
• Functional: what a system does
• Terdapat deskripsi proses, masukan dan keluaran
• Non-functional: constraint or quality of a
system, but still measurable
• Performance, availability, security, reliability,
implementation & design constraints, storage size
• Usability: constraint to use, but still also
measurable or evaluatable
• Acceptance criteria, end-user characteristics,
system environments
Level kebutuhan
• Normal requirement: kebutuhan yang harus dipenuhi
dan dinyatakan secara eksplisit
• Fungsionalitas sistem, unjuk kerja
• Expected requirement: kebutuhan yang tidak
dinyatakan secara eksplisit tetapi menentukan
kepuasan customer
• Kemudahan interaksi dengan sistem, correctness
• Exciting requirement: kebutuhan yang melebihi dari
kebutuhan normal untuk lebih memuaskan customer
• Fungsionalitas tambahan sistem
" If you don’t analyze, it’s highly likely that
you’ll build a very elegant software
solution that solves the wrong problem.
The result is wasted time and money,
personal frustration, and unhappy
customers "
-- Roger S. Pressman
Fungsi RE
• Sebagai kesepakatan antara developer,
customer dan pengguna akhir akan
kebutuhan yang harus dipenuhi
• Untuk menyediakan dasar yang akurat
bagi perancangan perangkat lunak
• Untuk menyediakan referensi bagi
dilakukannya validasi Perangkat Lunak
Proses-proses
Requirement
Engineering
Proses
1. Penggalian dan analisis kebutuhan
(software requirement elicitation and analysis)
2. Spesifikasi kebutuhan
(software requirement specification)
3. Validasi & verifikasi kebutuhan
(software requirement validation and
verification)
4. Manajemen kebutuhan
(software requirement management)
Proses
Verification
Negotiation Specification
& Validation
Verification
Do we make the product right?
Apakah kita membuat produk dengan
benar?
Validation dan
Verification
• Proses validasi terhadap produk dari spesifikasi
kebutuhan (SRS) dimana seluruh daftar kebutuhan
diperiksa untuk dapat diyakinkan (valid dan verified)
• Parameter validasi:
• Validity: does the system provide the functions which best support
the customer’s needs ?
• Consistency: are there any requirements conflicts ?
• Comprehensibility: are all functions required by the customer
included ?
• Parameter verifikasi:
• Readability, Testability, Completeness, Identifiability, Ambiguity