Anda di halaman 1dari 30

Software Proses

Nono Heryana

Universitas Singaperbangsa Karawang

Pemeliharaan PL

Universitas Singaperbangsa Karawang

Cost Software Development

Universitas Singaperbangsa Karawang

Apa itu Proses Software?


1. Sekumpulan aktivitas yang tujuannya adalah mengembangkan atau
mengubah perangkat lunak
2. Aktivitas generik dalam seluruh proses software:
a. Spesifikasi, apa yang harus sistem lakukan dan batasan-batasan
pengembangannya.
b. Development, proses pembuatan perangkat lunak.
c. Validasi, memeriksa kesesuaian perangkat lunak dengan kebutuhan
pengguna
d. Evolusi, perubahan perangkat lunak sebagai respon terhadap
kebutuhan yang berubah.
3. Sebuah model proses software adalah representasi abstrak dari sebuah
proses. Hal ini menyajikan deskripsi dari sebuah proses dari beberapa
perspektif tertentu.
Universitas Singaperbangsa Karawang

Proses Software
1. Tujuan:
o Memodelkan tahapan atau aktivitas yang harus dilakukan dalam
proyek pengembangan perangkat lunak
2. Aplikasi:
o Dengan mengikuti model proses, proyek pengembangan perangkat
lunak harus dapat meningkatkan kualitas proses:
i. Dapat mengulang sukses terdahulu
ii. Dapat di-manage dokumentasi, distandarkan dan
diorganisasikan
iii. Dapat diukur dapat dikontrol dengan pengukuran secara detil

Universitas Singaperbangsa Karawang

RPL sebagai Teknologi Berlapis

1.
2.
3.
4.

Kualitas sebagai bangunan dasar


Proses sebagai perekat dan kerangka kerja
Metode sebagai teknik pengembangan
Tools sebagai pendukung metode dan proses
Universitas Singaperbangsa Karawang

Paradigma Umum RPL


1. Rekayasa : analisis, desain, konstruksi, verifikasi, dan manajemen entitas
teknis (dan sosial)
a. Problem apa yang harus diselesaikan ?
b. Karakteristik entitias apa yang digunakan untuk menyelesaikan
masalah ?
c. Bagaimana entitas (dan solusinya) direalisasikan ?
d. Bagaimana entitas di konstruksi ?
e. Pendekatan apa yang digunakan untuk menemukan kesalahan yang
dibuat pada desain dan konstruksi entitas?
f. Bagaimana entitas didukung dalam jangka panjang, dimana koreksi,
adaptasi, dan peningkatan selalu diminta pengguna pada entitas

Universitas Singaperbangsa Karawang

Systems Development Life Cycle (SDLC)

Universitas Singaperbangsa Karawang

Project Phases
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
Universitas Singaperbangsa Karawang

Planning
1. Identifying business value (System Request)
a. Lower costs
b. Increase profits
2. Analyze feasibility
a. Technical Feasibility
b. Economic Feasibility
c. Organizational Feasibility
3. Estimating the size of project
(System Proposal)
Universitas Singaperbangsa Karawang

Analysis
1. Requirement gathering by answering the questions:
a. Who will use the system?
b. What will the system do?
c. When will it be used?
2. Investigate the current system
3. Identify possible improvements
4. Develop a concept for new system
(Business Process Model)

Universitas Singaperbangsa Karawang

Design
1. Program Design (UML Diagrams)
a. What programs need to be written
b. Exactly what each program will do
2. User Interface Design
a. How users interact with system
b. Forms / reports used by the system
3. Data Design (ER Diagrams)
a. What data is to be stored
b. What format the data will be in
c. Where the data will be stored
(System Specification)
Universitas Singaperbangsa Karawang

Implementation
1. Construction
a. New system is built and tested
b. Often testing is the longest part
2. Testing
a. Unit Testing
b. Integration Testing
c. System Testing
d. User Acceptance Test
3. Installation
a. Old system is turned off
b. New system is turned on

Universitas Singaperbangsa Karawang

Processes and Deliverables

Universitas Singaperbangsa Karawang

SDLC and Deliverables

Universitas Singaperbangsa Karawang

What Is a Methodology?
1. A formalized approach to implementing the SDLC (series of steps and
deliverables)
2. Writing code without a well-thought-out system request may work for small
programs, but rarely works for large ones

Universitas Singaperbangsa Karawang

Major Methodologies
1. Structured Design
a. Waterfall method
b. Parallel development
2. RAD Development
a. Phased Development
b. Prototyping
c. Throw-away Prototyping
3. Agile Development (next chapter)
a. Extreme Programming (XP)
b. Scrum

Universitas Singaperbangsa Karawang

Structured Design Methodology

1. Projects move methodically from one to the


next step
2. Generally, a step is finished before the next
one begins

Universitas Singaperbangsa Karawang

Waterfall Model or Classic Life Cycle

Universitas Singaperbangsa Karawang

Parallel Development

1. Addresses problem of time gap between


proposal and delivery
2. General process:
a. Breaks project into parallel subproject
b. Integrates them at the end

Universitas Singaperbangsa Karawang

Parallel Development

Universitas Singaperbangsa Karawang

Rapid Application Development

1. Phased development
o A series of versions
2. Prototyping
o System prototyping
3. Throw-away prototyping
o Design prototyping

Universitas Singaperbangsa Karawang

Rapid Application Development


Critical elements to speed up the SDLC:
a. CASE tools
b. Visual programming languages
c. Code generators

Universitas Singaperbangsa Karawang

RAD: Phased Development


1.
2.
3.
4.

Break overall system into a series of versions


Each version has Analysis, Design, and Implementation
Output from on version is the input to the next
Incorporate ideas, issues, lessons learned in one
version into the next version

Universitas Singaperbangsa Karawang

RAD: Phased Development

Universitas Singaperbangsa Karawang

RAD: Prototyping

1. Analysis, Design, Implementation are


performed concurrently
2. Start with a "quick-and-dirty" prototype
o Provides minimal functionality
3. Repeat process, refining the prototype each
time
4. Stop when prototype is a working system
Universitas Singaperbangsa Karawang

RAD: Prototyping

Universitas Singaperbangsa Karawang

RAD: Throw-Away Prototyping

1. Use prototypes only to understand


requirements
o Example: use html to show UI
2. Prototype is not a working design
3. Once requirements are understood, the
prototypes are thrown away
4. The system is then built using SDLC
Universitas Singaperbangsa Karawang

RAD: Throw-Away Prototyping

Universitas Singaperbangsa Karawang

Terima Kasih

2015 Universitas Singaperbangsa Karawang