teknik informatika s1 - dinus.ac.id1... · disiplin ilmu yang membahas semua aspek produksi ... dan...

8
3/20/2019 1 Teknik Informatika S1 Software Process (1) Rekayasa Perangkat Lunak Pengertian Perangkat Lunak (Software) Program Komputer dan dokumentasi (User manual, dokumen kebutuhan, dokumen perancangan) yang berhubungan dengan program tersebut”. Pengertian Rekayasa Perangkat Lunak Disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal spesifikasi, desain, konstruksi, testing sampai pemeliharaan setelah digunakan. 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?

Upload: lynga

Post on 29-Apr-2019

227 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Teknik Informatika S1 - dinus.ac.id1... · Disiplin ilmu yang membahas semua aspek produksi ... dan manajemen kesatuan teknik atau sosial. ... Pertanyaan Seputar SDLC 1

3/20/2019

1

Teknik Informatika S1

Software Process (1)

Rekayasa Perangkat Lunak

Pengertian Perangkat Lunak (Software)

“Program Komputer dan dokumentasi (User manual,

dokumen kebutuhan, dokumen perancangan) yang

berhubungan dengan program tersebut”.

Pengertian Rekayasa Perangkat Lunak

Disiplin ilmu yang membahas semua aspek produksi

perangkat lunak, mulai dari tahap awal spesifikasi, desain,

konstruksi, testing sampai pemeliharaan setelah digunakan.

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?

Page 2: Teknik Informatika S1 - dinus.ac.id1... · Disiplin ilmu yang membahas semua aspek produksi ... dan manajemen kesatuan teknik atau sosial. ... Pertanyaan Seputar SDLC 1

3/20/2019

2

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

Page 3: Teknik Informatika S1 - dinus.ac.id1... · Disiplin ilmu yang membahas semua aspek produksi ... dan manajemen kesatuan teknik atau sosial. ... Pertanyaan Seputar SDLC 1

3/20/2019

3

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

Initial Processes Unpredictable, poorly

controlled and reactive

Level 2

Managed Processes 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 pembangunan perangkat lunak?

SDLC berisi proses yang bukan untuk dipilih tapi untuk dilakukan secara keseluruhan

Page 4: Teknik Informatika S1 - dinus.ac.id1... · Disiplin ilmu yang membahas semua aspek produksi ... dan manajemen kesatuan teknik atau sosial. ... Pertanyaan Seputar SDLC 1

3/20/2019

4

Pertanyaan Seputar SDLC

2. Hubungan antar aktifitas dalam SDLC?

Hasil dari kegiatan sebelumnya mempunyai pengaruh yang

sangat besar untuk kegiatan berikutnya

Pertanyaan Seputar SDLC 3. 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)

Page 5: Teknik Informatika S1 - dinus.ac.id1... · Disiplin ilmu yang membahas semua aspek produksi ... dan manajemen kesatuan teknik atau sosial. ... Pertanyaan Seputar SDLC 1

3/20/2019

5

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

Page 6: Teknik Informatika S1 - dinus.ac.id1... · Disiplin ilmu yang membahas semua aspek produksi ... dan manajemen kesatuan teknik atau sosial. ... Pertanyaan Seputar SDLC 1

3/20/2019

6

3. Evolutionary Process

Communication

Planning

Modeling Construction

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)

Linear Sequential Model

System/ Information Engineering

Analysis Design Code Test

1. Waterfall Model

Sebuah pendekatan pengembangan perangkat lunak yang

sistematik dan sekuensial.

Disebut juga „Classic Life Cycle‟.

Paradigma yang sudah lama sekali, tetapi masih banyak

yang memakai karena dianggap masih sesuai dengan

keadaan sekarang.

1. Waterfall Model

Roger S, Pressman

1. Waterfall Model

Ian Sommerville

Page 7: Teknik Informatika S1 - dinus.ac.id1... · Disiplin ilmu yang membahas semua aspek produksi ... dan manajemen kesatuan teknik atau sosial. ... Pertanyaan Seputar SDLC 1

3/20/2019

7

1. Waterfall Model

Alan Dennis

Karakteristik Waterfall Model

1. Setiap tahap menghasilkan dokumen di akhir tahapnya

2. Tidak ada overlapping pada setiap tahapnya

3. Setiap tahapan akan punya pengaruh besar pada hasil

di tahap berikutnya

4. Memerlukan biaya besar jika melakukan rework

Kelebihan Waterfall Model

1. Menghasilkan mature process pada setiap tahapnya

2. Mudah untuk diaplikasikan pada sebuah proyek

3. Menghasilkan sistem yang terstruktur dengan baik

4. Memiliki tingkat visibilitas yang tinggi (setiap tahap

mempunyai dokumen yang jelas)

Kekurangan Waterfall Model

1. Ketidak fleksibelan antar tahapan

2. Susah dalam merespon perubahan kebutuhan

customer

3. Model ini hanya cocok jika:

a. Kebutuhan customer sudah sangat jelas

b. Perubahan kebutuhan dibatasi

Modified Waterfall Model (M.Kochanski)

Sashimi

Modified Waterfall Model (M.Kochanski)

Waterfall with Spiral Introduction

Page 8: Teknik Informatika S1 - dinus.ac.id1... · Disiplin ilmu yang membahas semua aspek produksi ... dan manajemen kesatuan teknik atau sosial. ... Pertanyaan Seputar SDLC 1

3/20/2019

8

Modified Waterfall Model (M.Kochanski)

Waterfall with Subprojects

Bersambung…

TERIMA KASIH