materi aps Konsep Perancangan

Embed Size (px)

Citation preview

  • 8/18/2019 materi aps Konsep Perancangan

    1/19

    ANALISIS DAN PERANCANGANANALISIS DAN PERANCANGANSISTEM (APS)SISTEM (APS)

    KonsepKonsep PerancanganPerancangan

  • 8/18/2019 materi aps Konsep Perancangan

    2/19

    Bahan Kuliah APSBahan Kuliah APS - - Konsep Perancangan | Tri A. Kurniawan, ST.MT.Konsep Perancangan | Tri A. Kurniawan, ST.MT. 2 2  /19  /19 

    TujuanTujuan perkuliahanperkuliahan

    MemahamiMemahami pengertianpengertian dandan urgensiurgensi perancanganperancangan

    PLPL

    MemahamiMemahami prosesproses perancanganperancangan PLPL

    MemahamiMemahami prinsipprinsip--prinsipprinsip perancanganperancangan PLPL

    MemahamiMemahami parameterparameter kualitaskualitas perancanganperancangan PLPL

  • 8/18/2019 materi aps Konsep Perancangan

    3/19

    Bahan Kuliah APSBahan Kuliah APS - - Konsep Perancangan | Tri A. Kurniawan, ST.MT.Konsep Perancangan | Tri A. Kurniawan, ST.MT. 3 3  /19  /19 

    AgendaAgenda

    PengertianPengertian,, UrgensiUrgensi dandan FungsiFungsi

    ProsesProses

    PrinsipPrinsip--prinsipprinsip

    ParameterParameter KualitasKualitas

  • 8/18/2019 materi aps Konsep Perancangan

    4/19

    Bahan Kuliah RPLBahan Kuliah RPL - - Perancangan PL / Tri Astoto K.,ST.MT Perancangan PL / Tri Astoto K.,ST.MT  4 4  /19  /19 

    PengertianPengertian: S/W Design: S/W Design

    RepresentasiRepresentasi rekayasarekayasa daridari perangkatperangkat lunaklunak yangyang

    akanakan dibangundibangun, yang, yang terfokusterfokus padapada data,data,

    arsitekturarsitektur, interface,, interface, dandan komponenkomponen.. DapatDapatdilacakdilacak terhadapterhadap kebutuhankebutuhan--kebutuhankebutuhan

    customer customer  /  / perangkatperangkat lunaklunak ((Roger S. Pressman Roger S. Pressman ))

    MembangunMembangun suatusuatu solusisolusi permasalahanpermasalahan yangyang

    memenuhimemenuhi kebutuhankebutuhan--kebutuhankebutuhan perangkatperangkat lunaklunak

    ((IanIan Sommerville Sommerville ))

  • 8/18/2019 materi aps Konsep Perancangan

    5/19

    Bahan Kuliah APSBahan Kuliah APS - - Konsep Perancangan | Tri A. Kurniawan, ST.MT.Konsep Perancangan | Tri A. Kurniawan, ST.MT. 5 5  /19  /19 

    S/W designS/W design –  –  wicked problemwicked problem

    There is no definite formulationThere is no definite formulation

    There is no stopping ruleThere is no stopping rule

    Solutions are not simply true or falseSolutions are not simply true or false

    Every wicked problem is a symptom of anotherEvery wicked problem is a symptom of another

    problemproblem

  • 8/18/2019 materi aps Konsep Perancangan

    6/19

    Bahan Kuliah RPLBahan Kuliah RPL - - Perancangan PL / Tri Astoto K.,ST.MT Perancangan PL / Tri Astoto K.,ST.MT  6 6  /19  /19 

    UrgensiUrgensi dandan FungsiFungsi

    MengapaMengapa K U A L I T A S :K U A L I T A S : perancanganperancangan

    adalahadalah satu2nyasatu2nya jalan jalan untukuntuk mentransformasimentransformasi

    secarasecara akuratakurat kebutuhan2kebutuhan2 customer customer  keke dalamdalamsebuahsebuah produkproduk akhirakhir berupaberupa perangkatperangkat lunaklunak

    yangyang berkualitasberkualitas tinggitinggi

    FungsiFungsi SebagaiSebagai dasardasar daridari semuasemua aktifitasaktifitas

    rekayasarekayasa perangkatperangkat lunaklunak yangyang mengikutinyamengikutinya

    ((implementasiimplementasi /  / coding coding ,, pengujianpengujian dandan validasivalidasi))

  • 8/18/2019 materi aps Konsep Perancangan

    7/19

    Bahan Kuliah RPLBahan Kuliah RPL - - Perancangan PL / Tri Astoto K.,ST.MT Perancangan PL / Tri Astoto K.,ST.MT  7 7  /19  /19 

    ProsesProses

    PerancanganPerancangan datadata

     –  –  MentransformasikanMentransformasikan model domainmodel domain informasiinformasi daridari hasilhasil

    analisisanalisis menjadimenjadi strukturstruktur data yangdata yang dibutuhkandibutuhkan dalamdalamimplementasiimplementasi PLPL

    PerancanganPerancangan arsitekturalarsitektural

     –  – 

     MendefinisikanMendefinisikan

     elemenelemen

    --elemenelemen

     utamautama

     (sub(sub

    --sistemsistem

    ))

    dandan

    relasirelasi antarantar elemenelemen--elemenelemen utamautama daridari strukturstruktur PLPL

    PerancanganPerancangan interface interface 

     –  –  MenjelaskanMenjelaskan bagaimanabagaimana PLPL berkomunikasiberkomunikasi didi dlmdlm PLPL ituitu

    sendirisendiri maupunmaupun dengandengan sistemsistem lain yanglain yang berinteraksiberinteraksi atauatau

    dengandengan manusiamanusia sebagaisebagai pemakainyapemakainya

    PerancanganPerancangan komponenkomponen

     –  –  DekomposisiDekomposisi subsub--sistemsistem menjadimenjadi komponenkomponen detildetil

  • 8/18/2019 materi aps Konsep Perancangan

    8/19

    Bahan Kuliah APSBahan Kuliah APS - - Konsep Perancangan | Tri A. Kurniawan, ST.MT.Konsep Perancangan | Tri A. Kurniawan, ST.MT. 8 8  /19  /19 

    ProsesProses

    IteratifIteratif

    KriteriaKriteria perancanganperancangan yangyang baikbaik ((McGlaughlin McGlaughlin ) :) :

     –  –   HarusHarus mengimplementasikanmengimplementasikan seluruhseluruh kebutuhankebutuhan eksplisiteksplisit yangyang

    adaada dandan yangyang implisitimplisit yangyang diinginkandiinginkan oleholeh customer customer 

     –  –   HarusHarus mudahmudah dibacadibaca,, dimengertidimengerti panduanpanduan implementasiimplementasi

    maupunmaupun pengujianpengujian

     –  –   HarusHarus lengkaplengkap menggambarkanmenggambarkan keseluruhankeseluruhan PL yangPL yang akanakan

    dibuatdibuat

    Informal

    Design

    InformalDesign

    Outline

    MoreFormal

    Design

    Finished

    Design

  • 8/18/2019 materi aps Konsep Perancangan

    9/19

    Bahan Kuliah APSBahan Kuliah APS - - Konsep Perancangan | Tri A. Kurniawan, ST.MT.Konsep Perancangan | Tri A. Kurniawan, ST.MT. 9 9  /19  /19 

    PrinsipPrinsip--prinsipprinsip

    TerdiriTerdiri daridari prosesproses dandan modelmodel

    PrinsipPrinsip dasardasar ((Davis Davis ) :) :

     –  –   ProsesProses perancanganperancangan tidaktidak bolehboleh menggunakanmenggunakan pendekatanpendekatan ‘‘kacakaca matamata

    kudakuda’’

     –  –   PerancanganPerancangan harusharus bisabisa dilacakdilacak keke modelmodel analisisnyaanalisisnya

     –  –   PerancanganPerancangan tidaktidak seharusnyaseharusnya mengulangimengulangi rancanganrancangan yangyang sudahsudah adaada

    reusing reusing 

     –  –   PerancanganPerancangan harusharus sedapatsedapat mungkinmungkin mendekatimendekati kenyataankenyataan yangyang adaada didi

    domaindomain permasalahannyapermasalahannya

     –  –   PerancanganPerancangan seharusnyaseharusnya seragamseragam ((adaada konvensikonvensi)) dandan integralintegral

    ((interface interface  antarantar komponenkomponen)) –  –   PerancanganPerancangan  ≠≠ implementasiimplementasi,, implementasiimplementasi  ≠≠ perancanganperancangan

     –  –   PerancanganPerancangan harusharus bisabisa dievaluasidievaluasi padapada saatsaat berlangsungberlangsung ((tidaktidak

    setelahsetelah selesaiselesai semuanyasemuanya))

     –  –   PerancanganPerancangan harusharus terstrukturterstruktur bisabisa mengakomodasimengakomodasi perubahanperubahan

  • 8/18/2019 materi aps Konsep Perancangan

    10/19

    Bahan Kuliah APSBahan Kuliah APS - - Konsep Perancangan | Tri A. Kurniawan, ST.MT.Konsep Perancangan | Tri A. Kurniawan, ST.MT. 10 10  /19  /19 

    ParameterParameter KualitasKualitas

    Cohesion Cohesion 

    Coupling Coupling 

    Understandability Understandability 

    Adaptability Adaptability 

  • 8/18/2019 materi aps Konsep Perancangan

    11/19

    Bahan Kuliah APSBahan Kuliah APS - - Konsep Perancangan | Tri A. Kurniawan, ST.MT.Konsep Perancangan | Tri A. Kurniawan, ST.MT. 1111 /19  /19 

    ParameterParameter KualitasKualitas :: Cohesion Cohesion 

    UkuranUkuran tingkattingkat kedekatankedekatan relasirelasi antarantar elemenelemen--

    elemenelemen dalamdalam satusatu komponenkomponen

    JikaJika terjaditerjadi perubahanperubahan padapada sebuahsebuah komponenkomponen tingkattingkat kohesifitaskohesifitas menentukanmenentukan

    SemakinSemakin tinggitinggi semakinsemakin baikbaik hasilhasil rancangannyarancangannya

    PenurunanPenurunan klasklas akanakan mengurangimengurangi tingkattingkat kohesifitaskohesifitas

    UntukUntuk memahamimemahami sebuahsebuah klas/komponenklas/komponen secarasecara

    lengkaplengkap,, harusharus melihatmelihat klasklas atasnyaatasnya ((super super - - class class ))AdaAda beberapabeberapa tingkattingkat kohesifitaskohesifitas,, tetapitetapi cukupcukup sulitsulit

    untukuntuk mengklasifikasikanmengklasifikasikan dengandengan tepattepat

  • 8/18/2019 materi aps Konsep Perancangan

    12/19

    Bahan Kuliah APSBahan Kuliah APS - - Konsep Perancangan | Tri A. Kurniawan, ST.MT.Konsep Perancangan | Tri A. Kurniawan, ST.MT. 12 12  /19  /19 

    ParameterParameter KualitasKualitas :: Cohesion Level Cohesion Level 

    Logical association (weak)Logical association (weak)

     –  –  KesamaanKesamaan fungsi/logikafungsi/logika daridari elemen2elemen2 sebuahsebuah

    komponenkomponen,, tetapitetapi aksinyaaksinya berbedaberbeda--bedabeda –  –  ContohContoh :: output text to screenoutput text to screen

    output line to printeroutput line to printer

    output record to fileoutput record to file

    Temporal cohesion (weak)Temporal cohesion (weak)

     –  –  Elemen2 yangElemen2 yang diaktifkandiaktifkan dalamdalam waktuwaktu yangyang samasama –  –  ContohContoh :: clear screenclear screen

    open fileopen file

    initializeinitialize time_averagetime_average

  • 8/18/2019 materi aps Konsep Perancangan

    13/19

    Bahan Kuliah APSBahan Kuliah APS - - Konsep Perancangan | Tri A. Kurniawan, ST.MT.Konsep Perancangan | Tri A. Kurniawan, ST.MT. 13 13  /19  /19 

    ParameterParameter KualitasKualitas :: Cohesion Level Cohesion Level 

    Procedural cohesion (weak)Procedural cohesion (weak) –  –  SebuahSebuah komponenkomponen terdiriterdiri daridari sekumpulansekumpulan elemen2 yangelemen2 yang

    membentukmembentuk satusatu rangkaianrangkaian prosesproses –  –  ContohContoh :: calculatecalculate quiz_scorequiz_score

    calculatecalculate final_scorefinal_score

    analyzeanalyze attendance_listattendance_list

    Sequential cohesion (medium)Sequential cohesion (medium)

     –  –  OutputOutput daridari satusatu elemenelemen menjadimenjadi inputinput bagibagi elemenelemen yangyang

    lainlain –  –  ContohContoh :: getget temperature_value_to_converttemperature_value_to_convert

    convert toconvert to fahrenheitfahrenheit

    outputoutput conversion_resultconversion_result to screento screen

  • 8/18/2019 materi aps Konsep Perancangan

    14/19

    Bahan Kuliah APSBahan Kuliah APS - - Konsep Perancangan | Tri A. Kurniawan, ST.MT.Konsep Perancangan | Tri A. Kurniawan, ST.MT. 14 14  /19  /19 

    ParameterParameter KualitasKualitas :: Cohesion Level Cohesion Level 

    Functional cohesion (strong)Functional cohesion (strong) –  –  TipeTipe kohesikohesi yang paling optimalyang paling optimal

     –  –  SatuSatu fungsifungsi dandan satusatu datadata tertentutertentu untukuntuk setiapsetiap komponenkomponen –  –  Elemen2Elemen2 dalamdalam satusatu komponenkomponen untukuntuk memenuhimemenuhi fungsifungsi

    yangyang terdefinisiterdefinisi tsbtsb..

     –  –  ContohContoh :: calculate averagecalculate averageObject cohesion (strong)Object cohesion (strong) –  –  SetiapSetiap operasioperasi memilikimemiliki kemampuankemampuan untukuntuk memanipulasimemanipulasi

    atributatribut yangyang dibutuhkandibutuhkan daridari sebuahsebuah klasklas –  –  ContohContoh :: display temperaturedisplay temperature

    log temperaturelog temperature

    analyze temperatureanalyze temperature

  • 8/18/2019 materi aps Konsep Perancangan

    15/19

    Bahan Kuliah APSBahan Kuliah APS - - Konsep Perancangan | Tri A. Kurniawan, ST.MT.Konsep Perancangan | Tri A. Kurniawan, ST.MT. 15 15  /19  /19 

    ParameterParameter KualitasKualitas :: Coupling Coupling 

    UkuranUkuran tingkattingkat kedekatankedekatan relasirelasi antarantar komponenkomponen

    SemakinSemakin rendahrendah semakinsemakin baikbaik hasilhasil

    rancangannyarancangannyaJikaJika terjaditerjadi perubahanperubahan padapada sebuahsebuah komponenkomponen,,

    makamaka tingkattingkat koplingkopling menentukanmenentukan

    Penurunan klas akan menaikkan tingkat koplingPenurunan klas akan menaikkan tingkat kopling

    OO systems OO systems  memberikanmemberikan tingkattingkat koplingkopling yangyang

    rendahrendah :: tidaktidak adaada shared shared  datadata

  • 8/18/2019 materi aps Konsep Perancangan

    16/19

    Bahan Kuliah RPLBahan Kuliah RPL - - Perancangan PL / Tri Astoto K.,ST.MT Perancangan PL / Tri Astoto K.,ST.MT  16 16  /19  /19 

    ParameterParameter KualitasKualitas :: Coupling Coupling 

    KoplingKopling tinggitinggi ::

    KoplingKopling rendahrendah ::

    Module A Module B

    Module C Module D

    Shared data

    area

    Module A

    A’s data

    Module B

    B’s data

    Module D

    D’s data

    Module C

    C’s data

  • 8/18/2019 materi aps Konsep Perancangan

    17/19

    Bahan Kuliah APSBahan Kuliah APS - - Konsep Perancangan | Tri A. Kurniawan, ST.MT.Konsep Perancangan | Tri A. Kurniawan, ST.MT. 17 17  /19  /19 

    ParameterParameter KualitasKualitas :: Understandability Understandability 

    MudahMudah dipahamidipahami :: implementasiimplementasi,, pengujianpengujian dandan

    perawatanperawatan (( jika jika terjaditerjadi perubahanperubahan))

    BerhubunganBerhubungan dengandengan beberapabeberapa karakteristikkarakteristikkomponenkomponen ::

     –  – CohesionCohesion dan dan coupling : can the component becoupling : can the component be

    understood on its own ? understood on its own ? 

     –  – Naming : are meaningful names used ? Naming : are meaningful names used ? 

     –  – 

    Documentation : is the design well Documentation : is the design well 

    - - documented ? documented ? 

     –  – Complexity : are complex algorithms used ? Complexity : are complex algorithms used ? 

  • 8/18/2019 materi aps Konsep Perancangan

    18/19

    Bahan Kuliah APSBahan Kuliah APS - - Konsep Perancangan | Tri A. Kurniawan, ST.MT.Konsep Perancangan | Tri A. Kurniawan, ST.MT. 18 18  /19  /19 

    ParameterParameter KualitasKualitas :: Adaptability Adaptability 

    Seberapa mudah dilakukan perubahanSeberapa mudah dilakukan perubahan

    perancanganperancangan

    PerancanganPerancangan yangyang adaptifadaptif :: –  –  KoplingKopling rendahrendah

     –  –  DokumentasiDokumentasi bagusbagus dandan up to date up to date 

     –  – Traceability Traceability  yangyang tinggitinggi

     –  –  KohesiKohesi tinggitinggi

    PenurunanPenurunan klasklas :: meningkatkanmeningkatkan adaptability adaptability 

  • 8/18/2019 materi aps Konsep Perancangan

    19/19

    Bahan Kuliah APSBahan Kuliah APS - - Konsep Perancangan | Tri A. Kurniawan, ST.MT.Konsep Perancangan | Tri A. Kurniawan, ST.MT. 19 19  /19  /19 

    SummarySummary

    PerancanganPerancangan PLPL memilikimemiliki peranperan yangyang sangatsangat

    pentingpenting dalamdalam pengembanganpengembangan PLPL karenakarena

    mentransformasimentransformasi kebutuhan2kebutuhan2 customer customer  menjadimenjadiprodukproduk akhirakhir PL yangPL yang berkualitasberkualitas

    ProsesProses dalamdalam perancanganperancangan PLPL terdiriterdiri

    perancanganperancangan data,data, arsitekturalarsitektural,, interface interface  dandankomponenkomponen

    ParameterParameter kualitaskualitas perancanganperancangan PLPL terdiriterdiri daridaricohesion cohesion ,, coupling coupling ,, understandability understandability  dandan

    adaptability adaptability