Desain Perancangan Perangkat Lunak Andreas Hadiyono Universitas Gunadarma http://www.gunadarma.ac.id
Contents • Framework dari Sistem Analisis dan Development • Problem Analysis • Process Analysis • Conceptual Data Modelling • System Design (Process, Data and U.I. Design)
Organisational Systems • Sistem: Koleksi dari beberapa fungsi yang saling berelasi guna mencapai satu tujuan – Umumnya memiliki keterbatasan – Berfokus pada tujuan serta sumber daya yg ada
– Interaksi dari triger atau event dari user (ext. environment)
Flow Diagram Informasi
4
Sistem Informasi • Mendefiniskan mekanisme penyimpan, distribusi serta bantuan dari setiap operasi yang ada • Information can be of two main kinds; – Informasi operasional – Informasi manajemen
5
Information Systems in Organisations
6
Static and Dynamic Aspects of an Information System
7
A Simple View of Software Development
8
Pendekatan Software Development • Life-Cycle Model (classical model) – Analisis kebutuhan – desain
– Testing dan implementasi – Operasi dan pemeliharaan
• Prototyping • Fourth generation techniques 9
Tahap Perencanaan Sistem informasi • Tujuan: – Identifikasi tujuan dari sistem dan batasan dari pengembagan sistem – Mendefinisikan kemungkinan arsitektur yang dapat digunakan – Perencanaan pertemuan untuk mengatur serta memelihata pengembangan sistem yang ada – Definisi permasalahn umum yang dapat dijadikan dasar pengontrolan dalam setiap tahap pengembangan
10
Tahap Analisis Kebutuhan
• Tujuan:
– Menemukan model dari analisis sistem yang sesuai – Menemukan untuk menggambarkan kebutuhan user – Meningkatkan keterlibatan pengguna – Menghasilkan sebuah spesifikasi analisa yang dapat dengan mudah di ubah menjadi spesifikasi desain – Dokumentasi penuh dari sistem yang ada – Menyelesaikan setiap permasalahan dalam pembuatan sistem yang ada – Mencari jenis dan desain yg sesuai dengan semua pihak 11
Analysis Analysis Preliminary Analysis
Evaluating User Request
Analysis Request
Detailed Analysis
Management Action
Review and Assignment
Fact Finding
Presentation to Management
Fase Analisis Sistem • Fase Investigasi Awal – Melakukan analisa terhadap beberapa kemungkinan awal (menggunakan analisa SWOT (strengthens, weakness, opportunity, threat – kekuatan, kelemahan, kesempatan dan ancaman) • Fase Analisa Masalah – Menganalisa domain permasalahan
• Fase Analisa Kebutuhan – Menganalisa kebutuhan secara fungsional • Fase Analisa Keputusan – Memutuskan sistem mana yang akan berjalan dari beberapa kandidat sistem
Fase Investigasi Awal
Fase Analisa Masala
Fase Analisa Keputusan
Matriks Fisibilitas Kriteria Fisibilitas
%
Kandidat 1
Operasional: Fungsional: skala fungsional Polical: Perspective user, manager terhadap penggunaan sistem
30 %
Nilai:
Technical: Ketersediaan, perawatan, up todate
30 %
Economic Nilai total sistem
30 %
Schedule Jangka waktu
30 %
Kandidat 2
Kandidat 3
Skil Analisi untuk Sistem Analis • 4 jenis skill analisa – Systems Thinking (Berpikir secara sistem) – Organizational Knowledge (pengetahuan organisasi) – Problem Identification (Identifikasi permasalahan) – Problem Analyzing and Solving (analisa permasalahan serta pemecahannya)
Systems Thinking • System – Sebuah sistem dari sebuah gabungan prosedur dari sebuah unit bisnis yang berkerja secara bersama untuk tujuan tertentu – Terdiri dari 9 karakteristik
– Dibuat dalam sebuah lingkungan tertentu – Batasan dari sistem tergantung dari lingkungan yang ada
Systems Thinking • Karakteristik dari sistem – – – – – – – – –
Components (Komponen) Interrelated Components (relasi komponen) Boundary (batasan) Purpose (tujuan) Environment (lingkungan) Interfaces (Penghubung) Input Output Constraints (Aturan)
Systems Thinking • Konsep penting dalam sistem – Decomposition • Prose s untuk memecahkan sebuah sistem ke dalam bagian-bagian kecil • Mengijinkan seorang sistem analisi untuk: – Memecah sistem menjadi kecil. Memanage sebuah sistem – Fokus pada kurun waktu tertentu – Berfokus pada sConcentrate antara komponen dengan gabungan user – Membuat komponent yang tidak tergantung dengan waktu
Systems Thinking • Konsep dalam sistem(Lanjutan) – Modularity • Proses membagi sebuah sistem kedalam model umum yang mempunyai jenis yang sama • Dikenal dengan nama desain sistem
– Coupling • Subsitem tergantung pada setiap couple atau hubungan
– Cohesion • Sebuah sistem dapat berdiri sendiri
Systems Thinking • Konsep penting pembuaan sistem(Lanjutan) – Logical System Description • Berhubungan dengan tujuan sistem
– Physical System Description • Fokus bagaimana hubungan antara komponen dapat mencapai hasil/tujuan yang diharapkan
Management Skills for Systems Analysis • 4 Kategori – Resource Management – Project Management – Risk Management – Change Management
Resource Management • Sistem analisis harus tau untuk mengeluarkan kemampuan dari seluruh organisasi termasuk anggota team • Mencakup beberapa kemampuan – Prediksi penggunaan sumber daya – Tracking resource consumption
– Efektivitas penggunaan sumber daya – Evaluasi dari kualitas sumber daya – Menjaga sumber daya dari penggunaan yg terlalu berlebihan
– Melepaskan sumber daya ketika tidak dibutuhkan
Project Management • Dua tujuan – Menjaga agar project selesai tepat pada waktunya
– Menjaga project agar tidak melebihi budget
• Menjaga agar jalannya projek dapat berjalan dengan tepat waktu • Terdiri dari beberapa step – Pembagian pada pekerjaan yang tidak terkait satu sama lain – Menentukan hubungan antara satu tugas dengan tugas ain – Menentukan penanggung jawab dari setiap pekerjaan
Risk Management • Mampu untuk menjaga agar project tidak salah
• Menimalkan resiko dan kerusakan yang dapat terjadi • Penempatan sumber daya • Prioritas dari setiap aktivitas
Change Management • Kemampuan memabantu orang atau team untuk beradaptasi dengan sistem yang baru • Kemampuan untuk menetapkan perubahan teknologi yang berkaitan dengan – Obsolescence (usang) – Reusability (penggunaan kembali)
Tahap desain • Objectives: – transform the requirements specification into logical and physical models – provide a specification for man-machine interface – evaluate design – fully document design model and enforce maintenance and documentation
Tahap implementasi • Tujuan: – Menerapkan rancangan dan desain yang telah di buat ke dalam bentuk aplikasi yang sesuai
30
Tahap pemeliharaan • Fokus terhadap pengembangan dari sistem untuk peningkatkan kualitas dari sistem. • Tiga jenis pemeliharaan – Koreksi(Perbaikan) – Pengembangan – Adapatasi
31
Pendekatan pengembangan sistem •
Traditional –
•
Pressures for Change –
•
forms flowchart, clerical procedural flow chart, system flow chart, flow diagram
Hardware is less important, new application requirements, shortage of computer personnel, poor requirements specs, poor designs, maintenance problems, user dissatisfaction
Information Systems Development Methods –
Objectives of a Method: logical system model, graphical notations, rules, tools
–
Method-Related Development Tools & Environments: CASE Tools, PCTEs
•
Classification of Methods (philosophy, modeling orientation, approach, coverage, deliverables, assumptions)
•
A Framework for Analysis and Development –
Problem Analysis
–
Functional Analysis
–
Conceptual Data Modeling
–
System Design
32
System Flowchart
33
Kesalahan yang terjadi dari Pengembangan
34
Pendetakan untuk klasifikasi
35
Framework Untuk Pengembangan dana Analisa
36
Problem Analisa and Penggumpulan data
• Tujuan
– Menentukan struktur organisasi dan tujuan, batasan fungsi, lingkungan sistem dan batas perbasalahan – Menampilkan spesifikasi detail dari problem – Memvalidasi setiap kumpulan informasi
• Teknik Pengumpulan Informasi – Review dokumen, wawancara, observasi, pengukuran
• Kebutuhan dokumentasi – Matrik, flowchart, dll 37
User view dan analis View
38
Menentukan struktur organisasi
39
40
Fact Collection: Interview
41
Preliminary Fact (Fakta Persiapan) Documentation: Matrices
42
A Document Processing Matrix
43
Analisa Proses Pendahuluan • Tujuan: menghasilkan sebuah spesifikasi dan akurasi dari berbagai macam kebutuhan untuk pengguna di masa yang akan saat di dalam pengembangan sistem
• Spesifikasi dari karakteristik tersebut adalah – Spesifikasi yang saling berhubungan – Fungsi sistem
– Grafik kebutuhan
44
Process Analysis System Process Modeling
• Three main analysis techniques to be reviewed here are: – Data Flow Diagrams (DFDs) – Data Dictionary Definitions – Process Specifications
45
Introduction to Data Flow Diagrams
• Basic Constructs: – Processes
– Data flows – Files – External Entities: sources or sinks 46
Relasi antar komponen
47
Example of a Data Flow Diagram(1)
48
Example of a Data Flow Diagram(2)
49
Pendahuluan Data Flow Diagrams (cont.)
• Membuat Data Flow Diagrams – Identifikasi Static Components – Identifikasi Main Processes
– Memperbesar dan memperluas Diagram – Mengkoreksi Diagram
50
The Structure dari DFDs
51
Context Diagram Decomposition Level: 0
52
Diagram 0 Decomposition Level: 1
53
Diagram 1 Decomposition Level: 2
54
Diagram 2 Decomposition Level: 2
55
Data Dictionaries (DD) • Tujuan: – Untuk menjaga data mengenai: • Data Flow and Data Item Specifications • File Specifications • Process Specifications
56
Process Specifications (Spesifikasi Proses) • Proses dan pengaturan informasi dari sebuah DFD yang berkaitan dengan spesifikasi proses • Setiap fungsi memiliki mininal satu spesifikasi proses • Proses spesifakasi dapat di tampilkan dengan beberapa cara salah satunya dengan Decision Tables (tabel keputusan)
57
Conceptual Data Modeling • Mencakup – Pemahaman – Dokumentasi – Analisa data project
• Dikenal dengan nama Data Analysis • Fokus pada pemisahan data agar tidak terjadi kerangkapan data dalam pembuatan sistem
58
Dua pertanyaan kunci • WHAT to model Apa aspek dari sistem informasi dan kebutuhan yang dapat di tangkat
• HOW to model bagaimana cara untuk menerapkan setiap aspek yang ada
59
Conceptual Modeling Formalisms: The EntityRelationship Model The basic concepts are: – Entity – Attribute – Relationship
60
Entity and Relationship Occurences
61
Relationships Between Entity Types
62
Types of Associations and Mappings between A & B • Associations: • Simple : Any value A uniquely identifies exactly one B
• Complex: Each A can be associated with any number of B • Conditional: Any A is associated with either one or none of B
• Mappings: 1:1, 1:M, M:N 63
An E-R Diagram
64
Process Design Tujuan: untuk spesifikasi dari jumlah modul dari program yang berelasi. Dua pendekatan utama – Process-Driven dan – Data-Driven
65
Degrees of Coupling LOW
• Data Coupling
• Control Coupling
HIGH
• Common Environment Coupling
66
Common Environment Coupling Module A
Writes to..
Module B
Reads from..
67
Decoupling • Removal of Common Areas • Documenting of Remaining Common Areas
• Change Parameters for the latest possible binding • removal of control parameters
68
Degrees of Cohesion LOW
• Coincidental • Logical • Temporal • Procedural • Communicational
• Sequential HIGH • Functional 69