These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Catatan Kuliah Rekayasa Perangkat Lunak (Software Engineering) Bagian 2 Catatan Kuliah Rekayasa Perangkat Lunak (Software Engineering) Bagian 2 copyright © 2006 R.S. Pressman & Associates, Inc M. Idham Ananta Timur, S.T., M.Kom. Hanya digunakan di lingkungan Universtias Hanya boleh digandakan untuk mahasiswa di lingkungan universitas yang menggunakan buku Software Engineering: A Practitioner's Approach. Selain itu dilarang keras menggandakan. Presentasi, slide atau hardcopy tidak boleh digunakan untuk short courses, seminar industri, atau kepentingan konsultasi.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Software Engineering: A Practitioner’s Approach, 6/e Chapter 8 Pemodelan Analisis Software Engineering: A Practitioner’s Approach, 6/e Chapter 8 Pemodelan Analisis copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. M. Idham Ananta Timur, S.T., M.Kom For University Use Only May be reproduced ONLY for student use at the university level when used in conjunction with Software Engineering: A Practitioner's Approach. Any other reproduction or use is expressly prohibited.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Analisis Kebutuhan Analisis Kebutuhan Analisis Kebutuhan Menentukan karakteristik operasional PL Menentukan karakteristik operasional PL Menunjukkan antarmuka PL dengan elemen sistem yang lain Menunjukkan antarmuka PL dengan elemen sistem yang lain Membuat batasan yang harus dipenuhi PL Membuat batasan yang harus dipenuhi PL Analisis Kebutuhan memungkinkan Software Engineer (disebut analis atau modeler) untuk : Analisis Kebutuhan memungkinkan Software Engineer (disebut analis atau modeler) untuk : Memperinci kebutuhan dasar yang dibuat kapda rekayasa kebutuhan sebelumnya Memperinci kebutuhan dasar yang dibuat kapda rekayasa kebutuhan sebelumnya Membangun model yang dapat menggambarkan skenario user, aktivitas fungsional, class masalah dan relasinya, sistem dan perilaku class, dan aliran data ketika ditransformasikan. Membangun model yang dapat menggambarkan skenario user, aktivitas fungsional, class masalah dan relasinya, sistem dan perilaku class, dan aliran data ketika ditransformasikan.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Sebuah Jembatan
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Aturan-Aturan Model harus fokus pada masalah atau domain bisnis. Tingkat abstraksinya relatif harus lebih tinggi. Model harus fokus pada masalah atau domain bisnis. Tingkat abstraksinya relatif harus lebih tinggi. Setiap elemen model analisis sebaiknya memberikan tambahan pada pemahaman keseluruhan kebutuhan PL dan menyediakan wawasan pada domain informasi, fungsi dan perilaku sistem. Setiap elemen model analisis sebaiknya memberikan tambahan pada pemahaman keseluruhan kebutuhan PL dan menyediakan wawasan pada domain informasi, fungsi dan perilaku sistem. Tunda semua konsideran infrastruktur dan model non fungsional hingga fase desain. Tunda semua konsideran infrastruktur dan model non fungsional hingga fase desain. Minimalisasi rangkaian melalui sistem. Minimalisasi rangkaian melalui sistem. Pastikan model analisis menyediakan nilai untuk semua stakeholder. Pastikan model analisis menyediakan nilai untuk semua stakeholder. Jaga model sesederhana mungkin. Jaga model sesederhana mungkin.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Analisis Domain Analisis domain PL adalah identifikasi, analisis, dan spesifikasi kebutuhan umum dari domain aplikasi tertentu, yang biasanya digunakan kembali pada project lain di dalam domain aplikasi yang sama [Analisis domain berorientasi objek adalah] identifikasi, analisis dan spesifikasi kemampuan umum, kemampuan digunakan kembali dalam domain tertentu dalam istilah-istilah objek, class, subassemblies dan framework umum Donald Firesmith
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Analisis Domain Tentukan domain yang ingin diinvestigasi. Tentukan domain yang ingin diinvestigasi. Kumpulkan contoh representatif aplikasi pada domain tersebut. Kumpulkan contoh representatif aplikasi pada domain tersebut. Analisis setiap aplikasi pada contoh. Analisis setiap aplikasi pada contoh. Kembangkan model analisis untuk objek. Kembangkan model analisis untuk objek.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Pemodelan Data Memeriksa objek data secara independen terhadap proses Memeriksa objek data secara independen terhadap proses Fokus perhatikan pada domain data Fokus perhatikan pada domain data Membuat sebuah model pada abstraksi level konsumen Membuat sebuah model pada abstraksi level konsumen Mengindikasikan bagaimana objek data berhubungan satu dengan yang lain Mengindikasikan bagaimana objek data berhubungan satu dengan yang lain
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, What is a Data Object? Object —something that is described by a set of attributes (data items) and that will be manipulated within the software (system) eachinstance of an object (e.g., a book) can be identified uniquely (e.g., ISBN #) each plays a necessary role in the system i.e., the system could not function without access to instances of the object each is described by attributes that are themselves data items
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Objek-Objek Umum Entitas eksternal (printer, user, sensor) Sesuatu (laporan, display, sinyal) (laporan, display, sinyal) Kejadian atau event (interupsi, alarm) orang (manager, engineer, salesperson) Unit organisasi (divisi, tim) (divisi, tim) tempat (lantai pabrik) (lantai pabrik) struktur (employee record)
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Objek Data dan Atribut Sebuah objek data terdiri dari sekumpulan atribut yang bertindak sebagai aspek, kualitas, karakteristik, atau penjelas objek object: automobile attributes: make make model model body type body type price price options code options code
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Apakah Relationship? Relationship – menandakan kaitan, sebuah fakta yang harus diingat oleh sistem, tidak dikomputasi atau diturunkan secara mekanis several instances of a relationship can exist several instances of a relationship can exist objects can be related in many different ways objects can be related in many different ways
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Notasi ERD (0, m) (1, 1) object object relationship 1 2 Satu bentuk umum: (0, m) (1, 1) object 1 object 2 relationship Bentuk Umum yang lain: attribute
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Membangun Sebuah ERD Level 1—modelkan semua objek data (entitas) dan koneksinya dengan yang lain Level 1—modelkan semua objek data (entitas) dan koneksinya dengan yang lain Level 2—modelkan semua entitas dan relasi Level 2—modelkan semua entitas dan relasi Level 3—modelkan semua entitas, relasi, dan atribut yang menyediakan informasi yang lebih mendalam Level 3—modelkan semua entitas, relasi, dan atribut yang menyediakan informasi yang lebih mendalam
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, ERD: sebuah contoh (1,1) (1,m) places Customer request for service generates (1,n) (1,1) workorder worktasks materials consistsof lists (1,1) (1,w) (1,1) (1,i) selectedfrom standard task table (1,w) (1,1)
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Konsep Object-Oriented Harus dipahami untuk menerapkan elemen berbasis class pada model analisis Harus dipahami untuk menerapkan elemen berbasis class pada model analisis Konsep-konsep kunci: Konsep-konsep kunci: Classes dan objects Classes dan objects Attributes dan operations Attributes dan operations Encapsulation dan instantiation Encapsulation dan instantiation Inheritance Inheritance
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Class Pemikiran object-oriented dimulai dengan sebuah class, sering didefinisi sebagai : Pemikiran object-oriented dimulai dengan sebuah class, sering didefinisi sebagai : – template – deskripsi umum – “blueprint”... Menggambarkan sekelompok item yang mirip sebuah metaclass (sering disebut superclass)yang membangun hierarki semua class yang ada sebuah metaclass (sering disebut superclass)yang membangun hierarki semua class yang ada Sekali sebuah class item ditentukan, instance spesifik dari class tersebut dapat diidentifikasi Sekali sebuah class item ditentukan, instance spesifik dari class tersebut dapat diidentifikasi
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Membangun Class
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Apakah Class? external entities things occurrences roles organizational units places structures class name attributes: operations:
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Enkapuslasi/Penyembunyian Objek mengenkapsulasi Baik data dan prosedur Logis yang dibutuhkan Untuk manipulasi data Achieves “information hiding” method # 1 data method # 2 method # 4 method # 5 method # 6 method # 3
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Hierarki Class Chair Table Desk”Chable" instances of Chair PieceOfFurniture (superclass) subclasses of the
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Method (Operasi, Layanan) Prosedur yang terenkapsulasi pada sebuah class dan didesain untuk beroperasi pada satu atau lebih atribut data yang ditentukan sebagai bagian dari class. Method dipanggil melalui pesan
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Model berbasis Scenario “[Use-cases] adalah bantuan untuk mendefinisikan apa yang ada pada sistem (aktor) dan apa yang harus dilakukan sistem (use-cases).” Ivar Jacobson (1) Apa yang harus ditulis? (2) Berapa banyak kita harus menulisnya? (3) Sedetail apa gambaran kita ? (4) Bagaimana kita mengatur deskripsi?
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Use-Cases Sebuah skenario yang menggambarkan rangkaian kegunaan pada sistem Sebuah skenario yang menggambarkan rangkaian kegunaan pada sistem actors mewakili peran orang atau piranti yang dimaikan ketika sistem berfungsi actors mewakili peran orang atau piranti yang dimaikan ketika sistem berfungsi users dapat berperan sebagai lebih dari satu peran dalam sebuah skenario yang ditentukan users dapat berperan sebagai lebih dari satu peran dalam sebuah skenario yang ditentukan
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Mengembangkan Use-Case Apa tugas atau fungsi utama yang harus dilakukan aktor ? Apa tugas atau fungsi utama yang harus dilakukan aktor ? Sistem Informasi seperti apa yang diperlukan, dihasilkan atau diubah oleh aktor ? Sistem Informasi seperti apa yang diperlukan, dihasilkan atau diubah oleh aktor ? Apakah aktor harus menginformasikan sistem tentang perubahan dalam lingkungan eksternal? Apakah aktor harus menginformasikan sistem tentang perubahan dalam lingkungan eksternal? Informasi apa yang diharapkan aktor dari sistem? Informasi apa yang diharapkan aktor dari sistem? Apakah aktor menginginkan diberitahu tentang perubahan yang tidak tersangka? Apakah aktor menginginkan diberitahu tentang perubahan yang tidak tersangka?
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Use-Case Diagram
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Activity Diagram Melengkapi use-case dengan menyediakan representasi diagram dari aliran prosedural.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Swimlane Diagrams Memungkinkan untuk menampilkan aliran aktivitas yang digambarkan oleh use-case, dan di saat yang sama mengindikasikan aktor yang mana, atau class analisis yang mempunyai tanggungjawab terhadap tindakan yang digambarkan oleh kotak aktivitas
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Pemodelan berorientasi aliran Menampilkan bagaimana objek data ditransformasi ketika mereka bergerak di dalam sistem Sebuah data flow diagram (DFD) merupakan bentuk diagram yang digunakan Walaupun dianggap pendekatan kuno, pemodelan berorientasi aliran menyediakan pandangan unik terhadap suatu sistem. Dia tetap layak digunakan untuk mendukung analisis elemen model lainnya.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Model Aliran Setiap sistem berbasis komputer Adalah sebuah transformasi informasi computerbasedsystem input output
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Notasi Model Aliran Entitas Eksternal proses Aliran data Penyimpanan data
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Entitas Eksternal Produsen atau konsumen sebuah data Contoh : seseorang, piranti, sensor Contoh lain : sistem berbasis komputer Data harus selalu berawal dari suatu tempat dan Harus selalu dikirim pada sesuatu
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Proses Sebuah transformer data (mengubah input menjadi output) Contoh: menghitung pajak, menentukan luas, Memformat laporan, menampilkan grafik Data harus selalu diproses dalam bentuk tertentu Untuk menerima fungsi sistem
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Aliran Data Data mengalir melalui sebuah sistem dimulai Sebagai input dan ditransformasi menjadi output computetrianglearea base height area
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Menyimpan Data Data disimpan untuk digunakan lagi. look-upsensordata sensor # report required sensor #, type, location, age sensor data sensor number type, location, age
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Petunjuk menggambar DFD Semua icon harus diberi nama yang bermakna jelas Semua icon harus diberi nama yang bermakna jelas DFD berkembang dalam beberapa tingkatan DFD berkembang dalam beberapa tingkatan Selalu dimulai dengan sebuah context level diagram (level 0) Selalu dimulai dengan sebuah context level diagram (level 0) Selalu menunjukkan entitas eksternal pada level 0 Selalu menunjukkan entitas eksternal pada level 0 Selalu berinama panah aliran data Selalu berinama panah aliran data Jangan menampilkan prosedur logika Jangan menampilkan prosedur logika
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Membangun sebuah DFD—I Mereview model data untuk mengisolasi objek data dan gunakan parsing gramatikal untuk menentukan “Operasi” Mereview model data untuk mengisolasi objek data dan gunakan parsing gramatikal untuk menentukan “Operasi” Menentukan entitas eksternal (produsen dan konsumen data) Menentukan entitas eksternal (produsen dan konsumen data) Membuat level 0 DFD Membuat level 0 DFD
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Contoh Level 0 DFD user processingrequest videosource NTSC video signal digitalvideoprocessor requestedvideosignal monitor
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Membangun DFD—II Tulis sebuah narasi yang menggambarkan transformasi Tulis sebuah narasi yang menggambarkan transformasi Parsing untuk menentukan transformasi tingkat berikutnya Parsing untuk menentukan transformasi tingkat berikutnya “seimbangkan” aliran untuk menjaga aliran data “seimbangkan” aliran untuk menjaga aliran data Bangun level 1 DFD Bangun level 1 DFD Gunakan rasio 1:5 (perkiraan) Gunakan rasio 1:5 (perkiraan)
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Hierarki Aliran Datang P a b xy p1 p2 p3 p4 5 a b c d e f g level 0 level 1
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Catatan untuk DFD Setiap lingkaran harus dipecah hingga dia hanya melakukan hanya SATU hal Setiap lingkaran harus dipecah hingga dia hanya melakukan hanya SATU hal Rasio ekspansi menurun sesuai dengan jumlah level yang meningkat Rasio ekspansi menurun sesuai dengan jumlah level yang meningkat Kebanyakan sistem membutuhkan antara 3 hingga level 7 untuk model aliran yang cukup. Kebanyakan sistem membutuhkan antara 3 hingga level 7 untuk model aliran yang cukup. Sebuah item aliran data (panah) dapat dikembangkan seiring dengan meningkatnya level (data dictionary menyediakan informasi ini) Sebuah item aliran data (panah) dapat dikembangkan seiring dengan meningkatnya level (data dictionary menyediakan informasi ini)
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Spesifikasi Proses (PSPEC) PSPEC naratif pseudocode (PDL) persamaan tabel Diagram dan atau grafik Lingkaran
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Maps into Setelah DFD? analysis model design model
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Control Flow Diagram Menggambarkan “events” dan proses yang mengelola event Menggambarkan “events” dan proses yang mengelola event Sebuah “event” adalah kondisi boolean yang dipastikan dengan : Sebuah “event” adalah kondisi boolean yang dipastikan dengan : Mendaftar semua sensor yang dibaca oleh software. Mendaftar semua sensor yang dibaca oleh software. Mendaftar semua kondisi interupsi. Mendaftar semua kondisi interupsi. Mendaftar semua "switches" yang dipicu oleh sebuah operator. Mendaftar semua "switches" yang dipicu oleh sebuah operator. Mendaftar semua kondisi data. Mendaftar semua kondisi data. Memanggil kembali parser kata benda/kerja yang diaplikasikan pada narasi proses, mereview semua “item kendali” sebagai input/output CSPEC. Memanggil kembali parser kata benda/kerja yang diaplikasikan pada narasi proses, mereview semua “item kendali” sebagai input/output CSPEC.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Model Kendali control flow diagram berada “di atas” DFD dan menunjukkan event yang mengendalikan proses-proses yang terdapat pada DFDcontrol flow diagram berada “di atas” DFD dan menunjukkan event yang mengendalikan proses-proses yang terdapat pada DFD Aliran kendali—event dan item kendali– ditandai dengan panah putus-putusAliran kendali—event dan item kendali– ditandai dengan panah putus-putus Sebuah tiang vertikal menggambarkan input menuju atau output dari sebuah control spec (CSPEC) — spesifikasi terpisah yang menggambarkan bagaimana kendali ditanganiSebuah tiang vertikal menggambarkan input menuju atau output dari sebuah control spec (CSPEC) — spesifikasi terpisah yang menggambarkan bagaimana kendali ditangani Sebuah panah putus-putus memasuki tiang vertikal adalah input menuju CSPECSebuah panah putus-putus memasuki tiang vertikal adalah input menuju CSPEC Sebuah panah putus-putus meninggalkan proses menggambarkan kondisi dataSebuah panah putus-putus meninggalkan proses menggambarkan kondisi data Sebuah panah putus-patas memasuki sebuah proses menggambarkan sebuah kendali input yang dibaca langsung oleh prosesSebuah panah putus-patas memasuki sebuah proses menggambarkan sebuah kendali input yang dibaca langsung oleh proses Aliran kendali tidak secara fisik mengaktifkan/menonaktifkan proses, hal ini dilakukan melalui CSPECAliran kendali tidak secara fisik mengaktifkan/menonaktifkan proses, hal ini dilakukan melalui CSPEC
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Control Flow Diagram
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Control Specification (CSPEC) CSPEC dapat berupa: state diagram (sequential spec) state transition table decision tables activation tables combinatorial spec
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Panduan Membangun CSPEC Lihat semua sensor yang “dibaca” oleh PL Lihat semua kondisi interupsi Lihat semua "switches" yang diaktifkan oleh operator Lihat semua kondisi data Melihat parsing kata benda/kerja yang diterapkan pada Statemen software atau lingkupnya, mereview semua item kendali Sebagai input/output CSPEC yang mungkin Menggambarkan perilaku sebuah sistem dengan identifikasi Keadaan; menentukan bagaimana setiap keadaan mencapai dan Menentukan transisi antar keadaan Fokus pada kemungkinan kehilangan/tidak tercantum... Kesalahan umum dalam menentukan kendali, misalnya "Is there any other way I can get to this state or exit from it?"
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Pemodelan berbasis Class Tentukan analisis class dengan memeriksa pernyataan masalah(problem statement) Tentukan analisis class dengan memeriksa pernyataan masalah(problem statement) Gunakan parsing gramatikal untuk memilah class potensial Gunakan parsing gramatikal untuk memilah class potensial Kenali atribut tiap class Kenali atribut tiap class Kenali operasi yang memanipulasi atribut-atribut tersebut Kenali operasi yang memanipulasi atribut-atribut tersebut
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Class Analisis Entitias external (contoh : sistem lain, piranti, orang) yang menghasilkan atau menggunakan informasi yang digunakan oleh sistem berbasis komputer. Entitias external (contoh : sistem lain, piranti, orang) yang menghasilkan atau menggunakan informasi yang digunakan oleh sistem berbasis komputer. Benda (contoh : laporan, display, surat, sinyal) yang merupakan bagian dari domain informasi untuk masalah. Benda (contoh : laporan, display, surat, sinyal) yang merupakan bagian dari domain informasi untuk masalah. Kejadian atau event (contoh : transfer properti atau pelengkapan urutan gerakan robot) yang terjadi di dalam konteks sistem operasi. Kejadian atau event (contoh : transfer properti atau pelengkapan urutan gerakan robot) yang terjadi di dalam konteks sistem operasi. Peran (contoh : manajer, insinyur, sales) yang diperankan orang yang berinteraksi dengan sistem. Peran (contoh : manajer, insinyur, sales) yang diperankan orang yang berinteraksi dengan sistem. Unit Organisasi (contoh : divisi, kelompok, tim) yang relevan terhadap aplikasi. Unit Organisasi (contoh : divisi, kelompok, tim) yang relevan terhadap aplikasi. Tempat (contoh : lantai pabrik, pelabuhan muatan) yang membangun konteks masalah dan fungsi keseluruhan sistem. Tempat (contoh : lantai pabrik, pelabuhan muatan) yang membangun konteks masalah dan fungsi keseluruhan sistem. Struktur (contoh : sensor, kendaraan 4WD, komputer) yang terdiri dari beberapa objek class atau objek-objek class yang terkait Struktur (contoh : sensor, kendaraan 4WD, komputer) yang terdiri dari beberapa objek class atau objek-objek class yang terkait
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Kriteria memilih class Layanan yang dibutuhkan Beberapa atribut Atribut umum Operasi umum Kebutuhan esensial Menyimpan informasi
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Class Diagram Class name attributes operations
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Class Diagram
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Pemodelan CRC Class-class analisis memiliki “tanggung-jawab” Class-class analisis memiliki “tanggung-jawab” Tanggungjawab adalah atribut-atribut dan operasi-operasi yang terenkapsulasi oleh class Tanggungjawab adalah atribut-atribut dan operasi-operasi yang terenkapsulasi oleh class Class-class analisis berkolaborasi satu dengan yang lain Class-class analisis berkolaborasi satu dengan yang lain Collaborators adalah class-class yang dibutuhkan untuk menyediakan sebuah class dengan informasi yang dibutuhkan untuk memenuhi tanggung jawabnya. Collaborators adalah class-class yang dibutuhkan untuk menyediakan sebuah class dengan informasi yang dibutuhkan untuk memenuhi tanggung jawabnya. Secara umum, sebuah kolaborasi berakibat permintaan informasi atau permintaan beberapa aksi/operasi. Secara umum, sebuah kolaborasi berakibat permintaan informasi atau permintaan beberapa aksi/operasi.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Pemodelan CRC
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Tipe-tipe Class Class entitas, sering disebut class model atau bisnis, yang diekstrak langsung dari statemen permasalahan (contoh : Sensor). Class entitas, sering disebut class model atau bisnis, yang diekstrak langsung dari statemen permasalahan (contoh : Sensor). Class perbatasan digunakan untuk membuat interface (contoh : layar interaktif, atau laporan cetak) dimana user melihat dan berinteraksi dengannya selama PL digunakan. Class perbatasan digunakan untuk membuat interface (contoh : layar interaktif, atau laporan cetak) dimana user melihat dan berinteraksi dengannya selama PL digunakan. Class kendali mengelola “unit kerja [UML03] dari awal sampai akhir. Class kendali dapat didesain mengelola : Class kendali mengelola “unit kerja [UML03] dari awal sampai akhir. Class kendali dapat didesain mengelola : Pembuatan atau update objek entitas; Pembuatan atau update objek entitas; Inisiasi objek perbatasan sebagaimana mereka mendapatkan informasi dari objek entitas; Inisiasi objek perbatasan sebagaimana mereka mendapatkan informasi dari objek entitas; Komunikasi kompleks antara sekumpulan objek; Komunikasi kompleks antara sekumpulan objek; Validasi data yang dikomunikasikan antara user dan aplikasi. Validasi data yang dikomunikasikan antara user dan aplikasi.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Responsibilities System intelligence should be distributed across classes to best address the needs of the problem System intelligence should be distributed across classes to best address the needs of the problem Each responsibility should be stated as generally as possible Each responsibility should be stated as generally as possible Information and the behavior related to it should reside within the same class Information and the behavior related to it should reside within the same class Information about one thing should be localized with a single class, not distributed across multiple classes. Information about one thing should be localized with a single class, not distributed across multiple classes. Responsibilities should be shared among related classes, when appropriate. Responsibilities should be shared among related classes, when appropriate.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Kolaborasi Class memenuhi tanggung jawabnya dengan satu diantara dua cara : Class memenuhi tanggung jawabnya dengan satu diantara dua cara : Sebuah class dapat menggunakan operasinya sendiri untuk memanipulasi atributnya masing-masing atau Sebuah class dapat menggunakan operasinya sendiri untuk memanipulasi atributnya masing-masing atau Sebuah class dapat berkolaborasi dengan class lainnya. Sebuah class dapat berkolaborasi dengan class lainnya. Kolaborasi membuat relasi antara class Kolaborasi membuat relasi antara class Kolaborasi dapat diidentifikasi dengan menentukan apakah sebuah class dapat memenuhi tanggung jawabnya masing-masing Kolaborasi dapat diidentifikasi dengan menentukan apakah sebuah class dapat memenuhi tanggung jawabnya masing-masing Tiga relasi umum yang berbeda antar class [WIR90]: Tiga relasi umum yang berbeda antar class [WIR90]: is-part-of relationship is-part-of relationship has-knowledge-of relationship has-knowledge-of relationship depends-upon relationship depends-upon relationship
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Composite Aggregate Class
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Review model CRC Semua peserta dalam review (model CRC) diberikan sebuah subset dari kartu index model CRC. Semua peserta dalam review (model CRC) diberikan sebuah subset dari kartu index model CRC. Kartu yang berkolaborasi harus terpisah (tidak boleh ada reviewer yang memiliki dua kartu yang berkolaborasi). Kartu yang berkolaborasi harus terpisah (tidak boleh ada reviewer yang memiliki dua kartu yang berkolaborasi). Semua skenario use-case (dan diagram use case terkait) harus diorganisasi dalam kategori-kategori. Semua skenario use-case (dan diagram use case terkait) harus diorganisasi dalam kategori-kategori. Pemimpin review membaca use-case secara hati-hati. Pemimpin review membaca use-case secara hati-hati. Ketika pemimpin review sampai pada objek, dia akan memberi tanda kepada person yang memegang kartu index class yang terkait. Ketika pemimpin review sampai pada objek, dia akan memberi tanda kepada person yang memegang kartu index class yang terkait. Ketika tanda dikirimkan, pemilik kartu class diminta untuk menggambarkan tanggung jawab yang tertulis di kartu tersebut. Ketika tanda dikirimkan, pemilik kartu class diminta untuk menggambarkan tanggung jawab yang tertulis di kartu tersebut. Kelompok menentukan satu (atau lebih) tanggung jawab yang memenuhi kebutuhan use-case. Kelompok menentukan satu (atau lebih) tanggung jawab yang memenuhi kebutuhan use-case. Jika tanggung jawab dan kolaborasi yang tertera pada kartu index tidak dapat mengakomodasi use-case, modifikasi dilakukan pada kartu tersebut. Jika tanggung jawab dan kolaborasi yang tertera pada kartu index tidak dapat mengakomodasi use-case, modifikasi dilakukan pada kartu tersebut. Hal ini termasuk definisi class baru (dan kartu index CRC) atau spesifikasi baru atau revisi mengenai tanggung jawab, atau kolaborasi kartu yang sudah ada. Hal ini termasuk definisi class baru (dan kartu index CRC) atau spesifikasi baru atau revisi mengenai tanggung jawab, atau kolaborasi kartu yang sudah ada.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Asosiasi dan Dependensi Dua class analisis sering berhubungan satu dengan yang lain dalam beberapa pola Dua class analisis sering berhubungan satu dengan yang lain dalam beberapa pola Dalam UML relasi ini sering disebut asosiasi Dalam UML relasi ini sering disebut asosiasi Asosiasi dapat didapatkan dengan mengenali multiplicity (istilah cardinality digunaikan dalam pemodelan data Asosiasi dapat didapatkan dengan mengenali multiplicity (istilah cardinality digunaikan dalam pemodelan data Dalam banyak instans, relasi client-server ada diantara dua class analisis. Dalam banyak instans, relasi client-server ada diantara dua class analisis. Dalam kasus ini, class client tergantung pada class server dalam suatu cara dan relasi dependensi terjadi Dalam kasus ini, class client tergantung pada class server dalam suatu cara dan relasi dependensi terjadi
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Multiplicity
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Dependencies
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Analisis Paket Beberapa model analisis (use-case, class analisis) dikategorisasi dalam sebuah pola yang mempaketkan mereka dalam kelompok Beberapa model analisis (use-case, class analisis) dikategorisasi dalam sebuah pola yang mempaketkan mereka dalam kelompok Tanda plus di dalam nama class analisis dalam setiap paket menandakan bahwa class-class tersebut mempunyai visibilitas publik dan karena itu dapat diakses dari paket lain. Tanda plus di dalam nama class analisis dalam setiap paket menandakan bahwa class-class tersebut mempunyai visibilitas publik dan karena itu dapat diakses dari paket lain. Simbol lain dapat mendahului elemen di dalam paket. Tanda minus menandakan bahwa elemen disembunyikan dari semua paket, dan tanda # menandakan bahwa elemen hanya dapat diakses oleh paket yang berada di dalam paket tersebut. Simbol lain dapat mendahului elemen di dalam paket. Tanda minus menandakan bahwa elemen disembunyikan dari semua paket, dan tanda # menandakan bahwa elemen hanya dapat diakses oleh paket yang berada di dalam paket tersebut.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Analysis Packages
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Pemodelan Perilaku Model perilaku menggambarkan bagaimana PL merespon event atau stimulan eksternal. Untuk model tersebut, analis harus melakukan langkah-langkah berikut : Model perilaku menggambarkan bagaimana PL merespon event atau stimulan eksternal. Untuk model tersebut, analis harus melakukan langkah-langkah berikut : Evaluasi semua use-case untuk mendapatkan pemahaman menyeluruh tentang urutan interaksi di dalam sistem. Evaluasi semua use-case untuk mendapatkan pemahaman menyeluruh tentang urutan interaksi di dalam sistem. Mengenali event yang mengendalikan urutan interaksi dan memahamibagaimana event mempunyai relasi terhadap objek spesifik. Mengenali event yang mengendalikan urutan interaksi dan memahamibagaimana event mempunyai relasi terhadap objek spesifik. Membuat urutan untuk setiap use-case. Membuat urutan untuk setiap use-case. Membangun state diagram untuk sistem. Membangun state diagram untuk sistem. Review model behavioral untuk memverifikasi akurasi dan konsistensi Review model behavioral untuk memverifikasi akurasi dan konsistensi
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Representasi Keadaan Dalam konteks pemodelan perilaku, dua karakter keadaan harus diperhatikan : Dalam konteks pemodelan perilaku, dua karakter keadaan harus diperhatikan : Keadaan setiap class ketika sistem menjalankan fungsinya, dan Keadaan setiap class ketika sistem menjalankan fungsinya, dan Keadaan sistem ketika diobservasi dari luar sebagaimana sistem menjalankan fungsinya. Keadaan sistem ketika diobservasi dari luar sebagaimana sistem menjalankan fungsinya. Keadaan class mengambil baik karakter aktif maupun pasif [CHA93]. Keadaan class mengambil baik karakter aktif maupun pasif [CHA93]. Sebuah keadaan pasif adalah status saat ini dari semua atribut objek. Sebuah keadaan pasif adalah status saat ini dari semua atribut objek. Keadaan aktif dari sebuah objek menggambarkan status saat ini pada objek tersebut ketika menjalankan transformasi atau proses. Keadaan aktif dari sebuah objek menggambarkan status saat ini pada objek tersebut ketika menjalankan transformasi atau proses.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, State Diagram for the ControlPanel Class
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Keadaan-Keadaan Sistem state—sekumpulan keadaan terobservasi yang menggambarkan perilaku sistem pada satu waktu state—sekumpulan keadaan terobservasi yang menggambarkan perilaku sistem pada satu waktu state transition—perubahan dari satu keadaan ke keadaan yang lain state transition—perubahan dari satu keadaan ke keadaan yang lain event—sebuah kejadian yang menyebabkan sistem melakukan perilaku yang sudah diprediksi sebelumnya event—sebuah kejadian yang menyebabkan sistem melakukan perilaku yang sudah diprediksi sebelumnya action—proses yang terjadi sebagai konsekuensi membuat transisi action—proses yang terjadi sebagai konsekuensi membuat transisi
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Pemodelan Perilaku Membuat daftar keadaan sistem yang berbeda (Bagaimana perilaku sistem ?) Membuat daftar keadaan sistem yang berbeda (Bagaimana perilaku sistem ?) Menggambarkan bagaimana sistem membuat transisi dari satu keadaan ke keadaan yang lain.indicate how the system makes a transition from one state to another (Bagaimana sistem mengubah keadaan?) Menggambarkan bagaimana sistem membuat transisi dari satu keadaan ke keadaan yang lain.indicate how the system makes a transition from one state to another (Bagaimana sistem mengubah keadaan?) mengenali event mengenali event Mengawali action Mengawali action Menggambar sebuah state diagram atau sequence diagram Menggambar sebuah state diagram atau sequence diagram
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Sequence Diagram
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Menulis Spesifikasi PL Setiap orang harus tahu pasti apa yang harus dilakukan hingga seseorang menuliskannya !
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Tugas Buatlah sebuah paper yang menjelaskan tentang UML beserta contoh kasusnya, minimal 15 halaman, spasi 1.5, kertas Quarto, sampul mika biru tua. Buatlah sebuah paper yang menjelaskan tentang UML beserta contoh kasusnya, minimal 15 halaman, spasi 1.5, kertas Quarto, sampul mika biru tua. Kriteria penilaian : Kriteria penilaian : Validitas/kebenaran Validitas/kebenaran Kelengkapan Kelengkapan Kompleksitas kasus Kompleksitas kasus
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Panduan Spesifikasi
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Panduan Spesifikasi
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Panduan Spesifikasi