• Tidak ada hasil yang ditemukan

PENGENALAN. Perancangan Perangkat Lunak. (Software Engineering) Bertalya Program Pascasarjana Univesitas Gunadarma

N/A
N/A
Protected

Academic year: 2022

Membagikan "PENGENALAN. Perancangan Perangkat Lunak. (Software Engineering) Bertalya Program Pascasarjana Univesitas Gunadarma"

Copied!
35
0
0

Teks penuh

(1)

PENGENALAN PENGENALAN

Perancangan

Perancangan Perangkat Perangkat Lunak Lunak (Software Engineering)

(Software Engineering)

Bertalya Bertalya Program

Program PascasarjanaPascasarjana Univesitas

Univesitas GunadarmaGunadarma

(2)

Perangkat

Perangkat Lunak Lunak ( ( Software Software ) )

zz MerupakanMerupakan program program aplikasiaplikasi berikutberikut dengandengan dokumentasi

dokumentasi dandan data yang data yang dibutuhkandibutuhkan agar agar program

program dapatdapat beroperasiberoperasi secarasecara benarbenar

zz Software systemSoftware system terdiriterdiri atasatas : program2, file2, : program2, file2, dokumentasi

dokumentasi sistemsistem, , dokumentasidokumentasi penggunapengguna

zz 2 2 tipetipe produkproduk perangkatperangkat lunaklunak ::

1. 1. genericgeneric; software stand; software stand-alone, -alone, dibuatdibuat suatusuatu perusahaanperusahaan

&

& dijualdijual didi pasarpasar terbukaterbuka

CthCth : : wordprocessorwordprocessor, database, database

2.2. customised: customised: dibuatdibuat berdasarkanberdasarkan permintaanpermintaan klienklien CthCth : : sistemsistem pengaturanpengaturan lalulintaslalulintas udaraudara

(3)

Karakteristik

Karakteristik Perangkat Perangkat Lunak Lunak yang yang Baik Baik

zz MaintainabilityMaintainability; ; perangkatperangkat lunaklunak dimungkinkandimungkinkan untukuntuk berevolusi

berevolusi sesuaisesuai kebutuhankebutuhan perubahanperubahan klienklien

zz DependabilityDependability; ; mencakupmencakup reliabilityreliability, , securitysecurity & & safetysafety Perangkat

Perangkat lunaklunak tidaktidak mengalamimengalami kerugiankerugian fisikfisik & &

ekonomi

ekonomi padapada saatsaat terjaditerjadi kerusakankerusakan sistemsistem

zz EfficiencyEfficiency; perangkat; perangkat lunaklunak tidaktidak borosboros dalamdalam meng-meng- gunakan

gunakan sumbersumber dayadaya sistem, sistem, sepertiseperti memory & memory &

processor processor

zz UsabilityUsability; perangkat; perangkat lunaklunak harusharus bergunaberguna bagibagi pengguna

pengguna, , mempunyaimempunyai interface & dokumentasiinterface & dokumentasi

(4)

Software Engineering Software Engineering

zz MerupakanMerupakan disiplindisiplin ilmuilmu engineering ygengineering yg memperhatikanmemperhatikan semua

semua aspekaspek pembuatanpembuatan perangkatperangkat lunaklunak daridari tahaptahap awalawal spesifikasi

spesifikasi s.ds.d. . pemeliharaanpemeliharaan sistemsistem

zz PerbedaanPerbedaan software engineeringsoftware engineering dgndgn computer sciencecomputer science adalah

adalah bahwabahwa computer sciencecomputer science lebihlebih memperhatikanmemperhatikan teoriteori

&

& metodemetode komputerisasikomputerisasi, sedangkan, sedangkan software engineeringsoftware engineering menyangkut

menyangkut masalahmasalah praktikalpraktikal pembuatanpembuatan dandan delivery

delivery(pengiriman(pengiriman) ) perangkatperangkat lunaklunak

zz Software engineeringSoftware engineering merupakanmerupakan bagianbagian daridari system system engineering

engineering, , dimanadimana system engineeringsystem engineering memperhatikanmemperhatikan semua

semua aspekaspek pembuatanpembuatan sistemsistem berbasisberbasis komputerkomputer, , termasuk

termasuk perangkatperangkat keraskeras, p. , p. lunaklunak & proses& proses..

(5)

Biaya

Biaya & & Metode Metode Software Engineering Software Engineering

zz 60 % 60 % terletakterletak padapada biayabiaya pembuatanpembuatan, , dandan 40 % 40 % padapada biayabiaya testing, testing, sedangkansedangkan padapada software software ygyg

customised

customised, biaya, biaya evolusievolusi lbhlbh besarbesar drpddrpd biayabiaya pembuatan

pembuatan

zz MetodeMetode software engineeringsoftware engineering merupakanmerupakan pendekatan

pendekatan terstrukturterstruktur keke pembuatanpembuatan software software termasuk

termasuk model model sistem, sistem, notasinotasi, , aturanaturan, , rekomendasirekomendasi pembuatan

pembuatan & & penuntunpenuntun prosesproses..

zz ContohContoh ::

ƒƒ Structured AnalysisStructured Analysis

ƒƒ Object-Object-oriented Modeloriented Model

(6)

Penyelesaian

Penyelesaian Masalah Masalah

COMPUTER

SCIENCE CUSTOMER

SOFTWARE ENGINEERING

Theories Computer

Functions

Problem

Tools and Techniques to

(7)

Proses

Proses Perangkat Perangkat Lunak Lunak

zz MerupakanMerupakan sekumpulansekumpulan aktifitasaktifitas dandan hasil2 yang hasil2 yang bertujuan

bertujuan membuatmembuat suatusuatu produkproduk perangkatperangkat lunaklunak

zz Aktifitas2nya al:Aktifitas2nya al:

1. 1. Software specificationSoftware specification : pendefinisian: pendefinisian fungsi

fungsi & & konstrainkonstrain pengoperasianpengoperasian per. per. lunaklunak

2. 2. Software developmentSoftware development : : pembuatanpembuatan per. per. lunaklunak sesuai

sesuai spesifikasispesifikasi

3. 3. Software validationSoftware validation: : validasivalidasi per. per. lunaklunak untuk

untuk menjaminmenjamin per. per. lunaklunak bekerjabekerja sesuaisesuai dengan

dengan keinginankeinginan klienklien

(8)

Model

Model Proses Proses Perangkat Perangkat Lunak Lunak

zz MerupakanMerupakan representasirepresentasi sederhanasederhana daridari prosesproses per. per.

lunak

lunak, termasuk, termasuk

-- aktifitas2 aktifitas2 prosesproses per. per. lunaklunak -- perananperanan orang2 yang terlibatorang2 yang terlibat

zz Tipe2 model Tipe2 model prosesproses per. per. lunaklunak ::

1. 1. workflow modelworkflow model : menggambarkan: menggambarkan urutanurutan aktifitasaktifitas prosesproses software

software

2. 2. data flow modeldata flow model : : menggambarkanmenggambarkan aktifitasaktifitas yang yang mentransformasikan

mentransformasikan datadata

3.3. role / action modelrole / action model : : menggambarkanmenggambarkan aktifitasaktifitas & & perananperanan orang2 yang

orang2 yang terlibatterlibat

(9)

Model

Model Proses Proses ( ( lanj lanj .) .)

zz Model2 Model2 prosesproses perangkatperangkat lunaklunak al:al:

zz WaterfallWaterfall Tahap

Tahap spesifikasispesifikasi dandan pembuatanpembuatan yang terpisahyang terpisah

zz Evolutionary developmentEvolutionary development Tahap

Tahap spesifikasispesifikasi dandan pembuatanpembuatan yang disisipkanyang disisipkan

zz Formal transformationFormal transformation Model

Model sistemsistem matematismatematis ygyg ditransformasikanditransformasikan keke implementasi

implementasi..

zz Integration from reusable componentsIntegration from reusable components Sistem

Sistem dipadukandipadukan dengandengan komponen2 komponen2 ygyg adaada

(10)

Waterfall Model Waterfall Model

Requirements definition

System and software design

Implementation and unit testing

Integration and system testing

Operation and maintenance

(11)

Masalah

Masalah Yang Yang Dihadapi Dihadapi

zz KebutuhanKebutuhan klienklien selaluselalu berubah2, berubah2, perluperlu dilakukandilakukan pengulangan

pengulangan padapada tahaptahap sebelumnyasebelumnya

zz MakaMaka, model ini, model ini hanyahanya sesuaisesuai dengandengan kebutuhankebutuhan yang

yang dapatdapat dipahamidipahami dengandengan baikbaik

(12)

Evolutionary development Evolutionary development

Validation Final

version

Development Intermediate

versions

Specification Initial

version

Outline description

Concurrent activities

(13)

Evolutionary Development Evolutionary Development

zz MasalahMasalah

zz ProsesProses tidaktidak terlihatterlihat jelasjelas

zz SistemSistem tidaktidak terstrukturterstruktur

zz DibutuhkanDibutuhkan keahliankeahlian khususkhusus ((dalamdalam pembuatanpembuatan prototype)

prototype)

zz DapatDapat diaplikasikandiaplikasikan padapada

zz SistemSistem interaktifinteraktif ygyg kecilkecil atauatau mediummedium

zz BagianBagian kecilkecil daridari sistemsistem ygyg besarbesar ((mismis. antarmuka. antarmuka untuk

untuk penggunapengguna))

(14)

Formal Systems Development Formal Systems Development

zz DidasarkanDidasarkan padapada transformasitransformasi spesifikasispesifikasi secarasecara matematis

matematis keke programprogram

(15)

Formal Systems Formal Systems

Requirements

definition Formal

specification

Formal transformation

Integration and system testing

(16)

Formal Transformations Formal Transformations

Formal R2

specification R3 Executable

program

P2 P3 P4

T1 T2 T3 T4

Proofs of transformation correctness Formal transformations

R1

P1

(17)

Formal Systems Development Formal Systems Development

zz MasalahMasalah

zz DibutuhkanDibutuhkan pelatihanpelatihan dandan keahliankeahlian khususkhusus

zz SulitSulit menspesifikasikanmenspesifikasikan secarasecara formal formal beberapabeberapa aspek

aspek sistemsistem sep, sep, antarmukaantarmuka penggunapengguna

zz DapatDapat diaplikasikandiaplikasikan

zz SistemSistem kritiskritis dimanadimana diperlukandiperlukan aspekaspek keamanankeamanan sebelum

sebelum sistemsistem dioperasikandioperasikan

(18)

Reuse

Reuse - - oriented Development oriented Development

zz DidasarkanDidasarkan padapada penggunaanpenggunaan sistemsistem kembalikembali secara

secara sistematissistematis, , dimanadimana sistemsistem diintegrasikandiintegrasikan daridari komponen2 komponen2 ygyg adaada atauatau sistemsistem COTS COTS

((CommercialCommercial--offoff--thethe--shelfshelf))

zz PenggunaanPenggunaan sistemsistem iniini masihmasih terbatasterbatas

(19)

Reuse

Reuse - - oriented Development oriented Development

Requirements specification

Component analysis

Development and integration

System design with reuse Requirements

modification

System validation

(20)

Proses

Proses Iterasi Iterasi

zz KebutuhanKebutuhan daridari sistemsistem selaluselalu berubah2 berubah2 atauatau berevolusi

berevolusi sehinggasehingga iterasiiterasi prosesproses daridari tahaptahap sebelumnya

sebelumnya diperlukandiperlukan

zz IterasiIterasi dapatdapat diaplikasikandiaplikasikan padapada model model prosesproses ygyg general

general

zz DuaDua pendekatanpendekatan

zz Incremental developmentIncremental development

zz Spiral developmentSpiral development

(21)

Incremental Development Incremental Development

zz ProsesProses pembuatanpembuatan dandan pengirimanpengiriman dibagi2 dibagi2 menjadi

menjadi prosesproses penambahanpenambahan sebagaisebagai bagianbagian fungsionalitas

fungsionalitas yang yang dibutuhkandibutuhkan

zz KebutuhanKebutuhan penggunapengguna menjadimenjadi prioritasprioritas. . Kebutuhan

Kebutuhan dgndgn prioritasprioritas tertinggitertinggi dimasukkandimasukkan sebagai

sebagai penambahanpenambahan didi awalawal prosesproses

zz Penambahan2 Penambahan2 iniini akanakan terusterus berlanjutberlanjut dandan berevolusi

berevolusi

(22)

Incremental Development Incremental Development

Validate increment Develop system

increment

Design system architecture

Integrate increment

Validate system Define outline

requirements Assign requirements to increments

System incomplete

Final system

(23)

Kelebihan

Kelebihan : : Incremental Development Incremental Development

zz FungsionalitasFungsionalitas sistemsistem selaluselalu tersediatersedia cepatcepat

zz PenambahanPenambahan terakhirterakhir dianggapdianggap sebagaisebagai prototype prototype ygyg dapatdapat digunakandigunakan utkutk menentukanmenentukan kebutuhan2 kebutuhan2 padapada penambahanpenambahan berikutnyberikutny

zz ResikoResiko terhadapterhadap kesalahankesalahan proyekproyek secarasecara global global kecil

kecil

zz PerluPerlu pengujianpengujian terusterus menerusmenerus

(24)

Spiral Development Spiral Development

zz ProsesProses digambarkandigambarkan dalamdalam bentukbentuk spiral spiral dimanadimana setiap

setiap loop loop menggambarkanmenggambarkan tahaptahap pemrosesanpemrosesan

zz TidakTidak adaada tahaptahap ygyg fiksfiks, , tetapitetapi bergantungbergantung padapada apaapa yang

yang dibutuhkandibutuhkan

zz ResikoResiko ygyg ditemukanditemukan diselesaikandiselesaikan selamaselama prosesproses

(25)

Spiral Model Spiral Model

Risk analysis Risk

analysis Risk

analysis

Risk

analysis Proto- type 1

Prototype 2

Prototype 3 Opera- tional protoype

Concept of Operation

Simulations, models, benchmarks

S/W requirements Requirement

validation Design

V&V

Product

design Detailed design Code Unit test Integration

Evaluate alternatives identify, resolve risks Determine objectives

alternatives and constraints

Integration and test plan Development

plan Requirements plan

Life-cycle plan REVIEW

(26)

Penspesifikasian

Penspesifikasian Perangkat Perangkat Lunak Lunak

zz ProsesProses untukuntuk menentukanmenentukan layananlayanan dandan batasanbatasan yang

yang dibutuhkandibutuhkan dalamdalam pengoperasianpengoperasian dandan pembuatan

pembuatan sistemsistem

zz ProsesProses ::

zz StudiStudi kelayakankelayakan

zz AnalisisAnalisis kebutuhkankebutuhkan

zz SpesifikasiSpesifikasi kebutuhankebutuhan

zz ValidasiValidasi kebutuhankebutuhan

(27)

Proses

Proses Penspesifikasi Penspesifikasi Kebutuhan Kebutuhan

Feasibility study

Requirements elicitation and

analysis

Requirements specification

Requirements validation Feasibility

report

System models

User and system requirements

Requirements

(28)

Desain

Desain & & Implementasi Implementasi Perangkat Perangkat Lunak Lunak

zz ProsesProses konversikonversi spesifikasispesifikasi sistemsistem keke sistemsistem yang yang akanakan dijalankandijalankan

zz DesainDesain per. per. lunaklunak

zz DesainDesain strukturstruktur per. per. lunaklunak berdasarkanberdasarkan spesifikasi

spesifikasi

zz ImplementasiImplementasi

zz MenterjemahkanMenterjemahkan strukturstruktur keke dalamdalam programprogram

(29)

Aktifitas

Aktifitas Desain Desain

zz

Desain Desain arsitektural arsitektural

zz

Spesifikasi Spesifikasi abstrak abstrak

zz

Desain Desain antarmuka antarmuka pengguna pengguna

zz

Desain Desain komponen komponen

zz

Desain Desain struktur struktur data data

zz

Desain Desain algoritma algoritma

(30)

Proses

Proses Desain Desain

Architectural design

Abstract specification

Interface design

Component design

Data structure

design

Algorithm design

System architecture

Software

specification Interface specification

Component specification

Data structure specification

Algorithm specification Requirements

specification

Design activities

Design products

(31)

Metode

Metode Desain Desain

zz PendekatanPendekatan sistematissistematis untukuntuk melakukanmelakukan desaindesain perangkat

perangkat lunaklunak

zz DesainDesain didokumentasikandidokumentasikan sebagaisebagai kumpulankumpulan model2

model2 grafisgrafis

zz Model2 al:Model2 al:

zz DataData--flow modelflow model

zz EntityEntity--relationrelation--attribute modelattribute model

zz Structural modelStructural model

zz Object modelsObject models

(32)

Pemrograman Pemrograman

zz MenterjemahkanMenterjemahkan desaindesain keke dalamdalam programprogram

zz PemrogramPemrogram harusharus melakukanmelakukan pengujianpengujian program program untuk

untuk menanganimenangani kesalahan2 kesalahan2 ygyg timbultimbul dalamdalam program

program

(33)

Proses

Proses Debugging Debugging

Locate error

Design error repair

Repair error

Re-test program

(34)

Proses

Proses Pengujian Pengujian

Sub-system testing Module

testing Unit

testing

System testing

Acceptance testing

Component testing

Integration testing User

testing

(35)

Tahap2

Tahap2 Pengujian Pengujian

Requirements specification

System specification

System design

Detailed design

Module and unit code

and tess Sub-system

integration test plan System

integration test plan Acceptance

test plan

Service Acceptance

test

System integration test

Sub-system integration test

Referensi

Dokumen terkait

Keadaan ini merupakan potensi dan peluang yang sangat baik untuk pengembangan sapi potong di areal lahan perkebunan dengan sistem integrasi, yaitu pemanfaatan

Menentukan ingkaran suatu pernyataan Ingkaran dari pernyataan “ Jika Samy mendapat nilai 10, maka ia diberi hadiah” adalah ..... Jika Samy tidak mendapat nilai 10, maka ia

Tanpa meninggalkan tujuan dan kebijakan yang diciptakan, penting bagi Partai Politik untuk memiliki tokoh yang dapat diterima oleh semua lapisan masyarakat.Seperti SBY

Penelitian tentang posisi pemberitaan kasus Ervani Emy Handayani di Surat Kabar Harian Kedaulatan Rakyat dan Harian Jogja ini merupakan sebuah diskusi mengenai arah

DALAM KONDISI APAPUN, ASUS, DIREKTUR, STAF, KARYAWAN, ATAU AGENNYA TIDAK BERTANGGUNG JAWAB ATAS KERUSAKAN TIDAK LANGSUNG, KHUSUS, INSIDENTAL, ATAU KONSEKUENSIAL (TERMASUK

Ischialgia yang dirasakan bertolah dari vertebra lumbosacralis atau daerah paravertebralis lumbosacralis dan menjalar sesuai dengan salah satu radiks yang ikut menyusun

Permasalahan yang akan diteliti: “Apakah Layanan Konseling Kelompok dengan Teknik Asertif dapat Mereduksi Intensi Tawuran pada siswa Kelas XI Multimedia SMK Taman Siswa Kudus Tahun

Layanan Perkantoran Layanan Internal (Overhead) Layanan Dukungan Manajemen Eselon I Jumlah Badan Swasta yang Terkendali Penggunaan Bahasanya Jumlah Badan Publik yang