rekayasa perangkat lunak -...
TRANSCRIPT
Teknik Informatika S1
Disusun Oleh:
Egia Rosi Subhiyakto, M.Kom, M.CS
Teknik Informatika UDINUS
+6281329571612
Software Process (1)
Rekayasa Perangkat Lunak
SILABUS MATA KULIAH
8. Pembahasan UTS + Tugas SKPL
9. Presentasi SKPL
10. Design Engineering + TugasDPPL
11. Presentasi DPPL
12. Software Testing + Quiz
13. Present Tugas Besar
14. Present Tugas Besar
1. Pendahuluan
2. Introduction to SE
3. Software Process (1)4. Software Process (2)
5. Requirement Engineering + Quiz
6. Analysis Modeling (1)
7. Analysis Modeling (2)
SOFTWARE PROCESS
1. Framework Proses
2. CMII (Capability Maturity Model Integration)
3. SDLC ( Software Development Life Cycle)
4. Process Flow
5. Model Process
Software Engineering Layers
Tools
Methods
Process
Quality
Generic View of Software Engineering● Engineering meliputi kegiatan analisis, desain, konstruksi,
verifikasi, dan manajemen kesatuan teknik atau sosial.
● Pertanyaan-pertanyaan yang harus dimunculkan dan dijawab:
* Apa masalah yang akan dipecahkan?
* Karakteristik entitas yang manakah yang dipakai untuk menyelesaikan masalah
tersebut?
* Bagaimanakah entitas (dan pemecahan) tersebut diadakan?
* Bagaimanakah entitas tersebut dibangun?
* Pendekatan apakah yang akan dipakai untuk menemukan kesalahan-kesalahan
yang dibuat dalam desain dan kontruksi dari entitas tersebut?
* Bagaimanakah entitas tersebut ditopang selama proses adaptasi yang lama, pada
saat koreksi, serta ketika perbaikan dibutuhkan oleh para pemakai entitas
tersebut?
General Phase to Software Engineering
*Definition phase berfokus pada ‘apa’ (what):
* informasi yang akan diproses
*fungsi dan perfomance yang dibutuhkan
*tingkah laku sistem yang diharapkan
* interface yang akan dibangun
*batasan sistem yang sukses
General Phase to Software Engineering
*Development phase berfokus pada ‘bagaimana’ (how):
*data dikonstruksikan
*fungsi-fungsi diimplementasikan
*detail prosedur akan diimplementasikan
* interface dikarakterisasi
*rancangan akan diterjemahkan ke dalam pemrograman
*pengujian dilakukan
General Phase to Software Engineering
*Maintenance phase berfokus pada ‘perubahan’
(change):
*dihubungkan dengan koreksi kesalahan
*ketika lingkungan perangkat lunak berkembang
*sehubungan dengan perubahan kebutuhan pelanggan
Changes in Phase Development
*Correction (Koreksi)
*Membetulkan cacat atau kerusakan
*Adaptation (Adaptasi)
*Modifikasi perangkat lunak karena perubahan kebutuhan
fungsional original (CPU, OS, aturan bisnis, karakteristik produk
eksternal, dll)
Changes in Phase Development
*Enhancement (Perkembangan)
*Memperluas perangkat lunak sehingga melampaui kebutuhan
fungsi originalnya
*Prevention (Pencegahan)
*Pencegahan sebagai antisipasi perubahan karena usia perangkat
lunak
Umbrella Activities
*Software project tracking and control
*Formal technical reviews
*Software quality assurance
*Software configuration management
*Document preparation and production
*Reusability management
*Measurement
*Risk management
Aktivitas Pembangunan Perangkat Lunak
1 •Gathering Requirements
2 •Analysis
3 •Design
4 • Coding
5 • Testing
6 •Documentation
7 •Maintenance
Framework Proses
Common Process Framework
Umbrella Activities
Framework Activities
Task Sets
Tasks
Milestones, deliverables
SQA points
CMMI (Capability Maturity Model Integration)
Characteristics of Maturity levels
Level 1
InitialProcesses Unpredictable, poorly
controlled and reactive
Level 2
ManagedProcesses characterized for projects
and is often reactive
Level 3
Defined
Processes characterized for
organization and is proactive(Projects tailor their processes from
organization’s standards)
Level 4
Quantitatively Managed
Processes measured and
controlled
Level 5
Optimizing
Focus on process
improvement
SOFTWARE DEVELOPMENT LIFE CYCLE
Planning
Analysis
Design
Implementation
SOFTWARE DEVELOPMENT LIFE CYCLE
“Sekumpulan Kegiatan dan keterhubungannya satu sama
lain untuk mendukung pembangunan dari sebuah
perangkat lunak”.
Pengertian
Pertanyaan Seputar SDLC
1. Aktifitas mana yang harus dipilih dalam pembangunanperangkat lunak?
SDLC berisi proses yang bukan untuk dipilih tapi untukdilakukan secara keseluruhan
Pertanyaan Seputar SDLC
2. Hubungan antar aktifitas dalam SDLC?
Hasil dari kegiatan sebelumnya mempunyai pengaruh yang
sangat besar untuk kegiatan berikutnya
Pertanyaan Seputar SDLC3. Bagaimana cara menjadwalkan kegiatan pada SDLC?
Penjadwalan kegiatan SDLC dibahas dalam ilmu Manajemen
Proyek (Project Management) dan tidak dibahas pada RPL
SOFTWARE DEVELOPMENT LIFE CYCLE
1. Planning: Why build the system?
o System request, feasibility analysis, project size estimation
2. Analysis: Who, what, when, where will the system be?
o Requirement gathering, business process modeling
3. Design: How will the system work?
o Program design, user interface design, data design
4. Implementation: System construction and delivery
o System construction, testing, documentation and installation
SOFTWARE DEVELOPMENT LIFE CYCLE
1. Identifying business value (System Request)
o Lower costs
o Increase profits
2. Analyze feasibility
o Technical Feasibility
o Economic Feasibility
o Organizational Feasibility
3. Estimating the size of project
(System Proposal)
SOFTWARE DEVELOPMENT LIFE CYCLE
1. Requirement gathering by answering the questions:
o Who will use the system?
o What will the system do?
o When will it be used?
2. Investigate the current system
3. Identify possible improvements
4. Develop a concept for new system
(Business Process Model)
SOFTWARE DEVELOPMENT LIFE CYCLE
1. Program Design (DFD)
o What programs need to be written
o Exactly what each program will do
2. User Interface Design
o How users interact with system
o Forms / reports used by the system
3. Data Design (ER Diagrams)
o What data is to be stored
o What format the data will be in
o Where the data will be stored
(System Specification)
SOFTWARE DEVELOPMENT LIFE CYCLE
• Construction
o New system is built and tested
o Often testing is the longest part
• Testing
o Unit Testing
o Integration Testing
o System Testing
o User Acceptance Test
• Installation
o Old system is turned off
o New system is turned on
Processes and Deliverables
Process Product
Planning
Analysis
Design
Implementation
System Proposal
System Specification
New System with
Testing/Maintenance Plan
SDLC and Deliverables
Planning
(System Proposal)
Analysis(System Specification)
Design(System Specification)
Implementation(New System)
Process Flow
1. Linear Process
2. Iterative Process
3. Evolutionary Process
1. Linear Process
System/ Information Engineering
Analysis Design Code Test
2. Iterative Process
Communication Planning Modeling Construction Deployment
3. Evolutionary Process
Communication
Planning
ModelingConstruction
Deployment
Software Process Model
1. Linear Sequential Model
•1. Waterfall Model
•2. V Model
•3. RAD Model
2. Prototyping Model
3. Evolutionary Model
•1. Incremental Model
•2. Spiral Model
•3. Component Assembly Model
•4. Concurrent Development Model
4. Formal Method
5. Unified Process
6. 4GT Model
7. Agile Methods (ex: XP)
TERIMA KASIH