Systems Analysis and Design

Slides:



Advertisements
Presentasi serupa
Software Development Life Cycle (SDLC) Concept
Advertisements

Pengenalan Analisis & Perancangan Sistem
CHAPTER 7 Pengembangan Sistem
Tahapan information engineering
Systems Analysis and Design
Slide 1 Rifki Indra P Software Processes. Slide 2 Software Processes Coherent sets of activities for Specifying, Designing, Implementing and Testing software.
Managing Software Requirements (manajemen kebutuhan perangkat lunak)
Agile Software Development
RENCANA PENGEMBANGAN PERANGKAT LUNAK (RPPL)
Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : Mahasiswa dapat membuat diagram / skema untuk assessment setiap tahap pengembangan.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 Review Software Engineering.
Testing Levels. Activities of Test Engineer Test engineer is an information technology professional who is in charge of ane or more technical test activities,
WaterfallPrototyping RAD Incremental Prototyping Pendekatan SDLC.
ANALISA PERANCANGAN SISTEM
ANALISIS STRATEGIS: MENENTUKAN POTENSI MASA MENDATANG MODUL 6 PERT. 19 S/D 21.
Oleh: SARIPUDIN Jurusan SISTEM INFORMASI
1 Pertemuan 09 Kebutuhan Sistem Matakuliah: T0234 / Sistem Informasi Geografis Tahun: 2005 Versi: 01/revisi 1.
1 Pertemuan 12 Pengkodean & Implementasi Matakuliah: T0234 / Sistem Informasi Geografis Tahun: 2005 Versi: 01/revisi 1.
SIKLUS PENGEMBANGAN SISTEM INFORMASI Addr : : Contact No :
PEOPLE AND NETWORK MELWIN SYAFRIZAL DAULAY, S.KOM. M.ENG.
The Bug Tracking Database (1) Pertemuan 6
Phase III Rapid Prototyping and Demonstration Prototype
1 Pertemuan 22 Analisis Studi Kasus 2 Matakuliah: H0204/ Rekayasa Sistem Komputer Tahun: 2005 Versi: v0 / Revisi 1.
Summary Materi RPL Mid Semester
INDONESIA INFRASTRUCTURE INITIATIVE IURSP – Monitoring dan Evaluasi IURSP – Monitoring and Evaluation Workshop 3 Steve Brown VicRoads International Projects.
1 Pertemuan 2 Unit 1 - Careers Matakuliah: G0682 / Bahasa Inggris Ekonomi 1 Tahun: 2005 Versi: versi/revisi.
1 INTRODUCTION Pertemuan 1 s.d 2 Matakuliah: A0554/Analisa dan Perancangan Sistem Informasi Akuntansi Tahun: 2006.
Accounting Information Systems: An Overview BAB 1 PERTEMUAN 1 -2 SIA-UMBY.
Software Engineering Process
Pertemuan 03 Materi : Buku Wajib & Sumber Materi :
Software Process.
Pert. 16. Menyimak lingkungan IS/IT saat ini
Teknik Informatika S1 Rekayasa Perangkat Lunak Software Process (2)
Accounting Information Systems: An Overview
Notasi Object Oriented System
Object oriented analyst and design
Being Researcher-Technopreneur
Rekayasa Perangkat Lunak
ADBO (Analisa Desain Berorientasi Obyek)
Pert. 17. Kebutuhan informasi utk mencapai sasaran bisnis sekarang
Rekayasa Perangkat Lunak Pendahuluan
Perancangan Basis Data
Software Engineering Rekayasa Perangkat Lunak
Pertemuan <<18>> << Penemuan Fakta(01) >>
Bug Tracking Database (2) Pertemuan 7
REKAYASA PERANGKAT LUNAK (RPL)
Software Development Life Cycle (SDLC) Concept
ADBO (Analisa Desain Berorientasi Obyek)
Rekayasa Perangkat Lunak (Software Engineering)
REKAYASA PERANGKAT LUNAK
IMPLEMENTASI & TESTING E-BISNIS Pertemuan 10
Phase III Rapid Prototyping and Demonstration Prototype
Dasar-Dasar Sistem Informasi
Rekayasa Perangkat Lunak Part-5
ROOT CAUSE ANALYSIS.
4 plan.
System Development Life Cycle
Rekayasa Perangkat Lunak
Don’t Forget to Avail the Timely Offers with Uber
Business Modeling By: U. Abd. Rohim, MT
Sistem Pendukung Keputusan Roni Andarsyah, ST., M.Kom Lecture Series.
Analisis Perencangan Sistem Informasi
Rekayasa Perangkat Lunak (Software Engineering)
Software PROCESS & Method
Software Testing Strategies
Object oriented analyst and design
Building Information Systems
A SHORT ESSAY OF CIVIL ENGINEERING BY : ALFATIHATU RAHMI CIVIL ENGINEERING ENGINEERING FACULTY ANDALAS UNIVERSITY PADANG.
1-1 Chapter 1 Charles P. Jones, Investments: Analysis and Management, Tenth Edition, John Wiley & Sons Prepared by G.D. Koppenhaver, Iowa State University.
Work System Design “Work Measurement” Hardianto Iridiastadi, Ph.D.
Transcript presentasi:

Systems Analysis and Design romi@romisatriawahono.net Systems Analysis and Design Romi Satria Wahono romi@romisatriawahono.net http://romisatriawahono.net/sad WA/SMS: +6281586220090 http://romisatriawahono.net

Romi Satria Wahono SD Sompok Semarang (1987) SMPN 8 Semarang (1990) SMA Taruna Nusantara Magelang (1993) B.Eng, M.Eng and Ph.D in Software Engineering from Saitama University Japan (1994-2004) Universiti Teknikal Malaysia Melaka (2014) Research Interests: Software Engineering, Intelligent Systems Founder dan Koordinator IlmuKomputer.Com Peneliti LIPI (2004-2007) Founder dan CEO PT Brainmatics Cipta Informatika

romi@romisatriawahono.net Object-Oriented Programming Learning Design Pretest dan Posttest untuk Mengukur Kompetensi Kognifif Penyajian Materi dengan Model Minimalism berbasis Konsep Amati-Tiru-Modifikasi Latihan Secara Iteratif untuk Meningkatkan Kompetensi Kognitif dan Psikomotorik Penugasan berbasis Self-Contained Project dan Literatur Review http://romisatriawahono.net

Textbook romi@romisatriawahono.net Object-Oriented Programming http://romisatriawahono.net

romi@romisatriawahono.net Object-Oriented Programming References Alan Dennis et al, Systems Analysis and Design with UML 4th Edition, John Wiley and Sons, 2013 Kenneth E. Kendall and Julie E Kendall, Systems Analysis and Design 8th Edition, Prentice Hall, 2010 Hassan Gomaa, Software Modeling and Design: UML, Use Cases, Patterns, and Software Architectures, Cambridge University Press, 2011 Gary B. Shelly and Harry J. Rosenblatt, Systems Analysis and Design 9th Edition, Course Technology, 2011 Howard Podeswa, UML for the IT Business Analyst 2nd Edition, Course Technology, 2009 Jeffrey A. Hoffer et al, Modern Systems Analysis and Design 6th Edition, Prentice Hall, 2010 http://romisatriawahono.net

romi@romisatriawahono.net Object-Oriented Programming Pre-Test Sebutkan tahapan pengembangan sistem atau system development life cycle (SDLC)! Sebutkan beberapa metodologi pengembangan sistem yang anda ketahui! Gambarkan requirement di bawah dengan use case diagram! Gambarkan activity diagram, sequence diagram dan class diagram dari requirement di atas! Hitung dengan metode yang anda ketahui, berapa orang dan waktu (bulan) yang dibutuhkan untuk mengembangkan sistem di atas! SISTEM ELIBRARY Sistem elibrary memungkinkan pengguna untuk melakukan registrasi dan login Setelah menjadi member, pengguna dapat memodifikasi profile, serta mencari dan mendownload koleksi buku di sistem elibrary Admin sistem elibrary melakukan approval terhadap registrasi dan menampilkan laporan aktifitas pengguna secara individual maupun total http://romisatriawahono.net

Course Outline 1. Introduction 2. Project Planning 3. System Analysis 4. System Design 5. System Implementation

1. Introduction 1.1 Why We Learn Systems Analysis and Design 1.2 Systems Analyst and Its Roles 1.3 Systems Development Life Cycle 1.4 Systems Development Methodology 1.5 Methodology Selection Strategy

1.1 Why We Learn Systems Analysis and Design

Systems Development Projects Fail romi@romisatriawahono.net Object-Oriented Programming Systems Development Projects Fail More than half of all systems development projects Fail (42% - Standish Group, 53% - General Accounting Office) Canceled before completion System is never used once finished Doesn't provide the expected benefits Most of the ones that don't fail: Are delivered late Are over budget Don't provide the features promised http://romisatriawahono.net

Recent Significant IT Failures romi@romisatriawahono.net Object-Oriented Programming Recent Significant IT Failures Company Year Outcome Hudson Bay (Canada) 2005 Inventory system problems lead to $33.3 million loss UK Inland Revenue 2004/5 $3.45 billion tax-credit overpayment caused by software errors Avis Europe PLC (UK) 2004 Enterprise resource planning (ERP) system cancelled after $54.5 million spent Ford Motor Co. Purchasing system abandoned after deployment costing approximately $400 M Hewlett-Packard Co. ERP system problems contribute to $160 million loss AT&T Wireless Customer relations management (CRM) system upgrade problems lead to $100M loss http://romisatriawahono.net

Keunikan dari Software Karakteristik Software Hardware Kompleksitas Tingkat kompleksitas dari produk software tinggi, dengan kemungkinan perubahan parameter dan fungsi yang sangat beragam Tingkat kompleksitas produk lain rendah, dengan kemungkinan perubahan parameter dan fungsi tidak beragam Visibilitas Produk Produk tidak terlihat dengan kasat mata, termasuk bila ada cacat (defect) dari produk Produk terlihat dengan kasat mata, termasuk bila ada cacat (defect) dari produk

Software Errors, Faults, Failures

Analisis Kasus if (suhu > 3) shutdownDevice(); Suatu perusahaan PT ABC memproduksi software yang akan ditanam ke dalam suatu device Salah satu fungsi yang terdapat pada software adalah akan mematikan device secara otomatis apabila suhu ruangan lebih besar daripada 30o celcius Programmer salah menuliskan logika menjadi: … if (suhu > 3) shutdownDevice(); Error ini tidak pernah menyebabkan failure pada software, dan perusahaan PT ABC sampai saat ini terkenal sebagai perusahaan yang memproduksi software tanpa bug Jelaskan mengapa bisa terjadi demikian!

Warranty Lawsuits Mortenson vs. Timeberline Software (TS) (≈1993) Mortenson menggunakan software yang diproduksi TS untuk membuka tender pembangunan rumah sakit Software memiliki bug sehingga memenangkan perusahaan yang mengajukan proposal paling mahal (kerugian 2 miliar USD) TS tahu tentang bug itu, tapi tidak mengirimkan update ke Mortenson Pengadilan di Amerika Serikat memenangkan perusahaan TS Uniform Computer Information Transaction Act (UCITA) allows software manufacturers to: disclaim all liability for defects prevent the transfer of software from person to person

Disclaimer of Warranties DISCLAIMER OF WARRANTIES. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, MICROSOFT AND ITS SUPPLIERS PROVIDE TO YOU THE SOFTWARE COMPONENT, AND ANY (IF ANY) SUPPORT SERVICES RELATED TO THE SOFTWARE COMPONENT ("SUPPORT SERVICES") AS IS AND WITH ALL FAULTS; AND MICROSOFT AND ITS SUPPLIERS HEREBY DISCLAIM WITH RESPECT TO THE SOFTWARE COMPONENT AND SUPPORT SERVICES ALL WARRANTIES AND CONDITIONS, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY (IF ANY) WARRANTIES OR CONDITIONS OF OR RELATED TO: TITLE, NON- INFRINGEMENT, MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, LACK OF VIRUSES, ACCURACY OR COMPLETENESS OF RESPONSES, RESULTS, LACK OF NEGLIGENCE OR LACK OF WORKMANLIKE EFFORT, QUIET ENJOYMENT, QUIET POSSESSION, AND CORRESPONDENCE TO DESCRIPTION. THE ENTIRE RISK ARISING OUT OF USE OR PERFORMANCE OF THE SOFTWARE COMPONENT AND ANY SUPPORT SERVICES REMAINS WITH YOU.

romi@romisatriawahono.net Object-Oriented Programming http://romisatriawahono.net

Is it Possible? romi@romisatriawahono.net Object-Oriented Programming http://romisatriawahono.net

Sofware Quality? Software quality is (IEEE, 1991): The degree to which a system, component, or process meets specified requirements The degree to which a system, component, or process meets customer or user needs or expectations Quality means conformance to requirements (Crosby, 1979)

1.2 Systems Analyst and Its Roles

Analyst Related Role Business analyst System analyst Infrastructure analyst Change management analyst Project manager

Role in System Development romi@romisatriawahono.net Object-Oriented Programming Role in System Development Project Manager Business Analyst System Analyst Programmer Tester http://romisatriawahono.net

Business Analyst Focuses on business issues surrounding the system romi@romisatriawahono.net Object-Oriented Programming Business Analyst Focuses on business issues surrounding the system The business value of the system Improvements in business processes New business processes needed with new system Requires business skills and professional training http://romisatriawahono.net

romi@romisatriawahono.net Object-Oriented Programming System Analyst The systems analyst is a key person analyzing the business, identifying opportunities for improvement, and designing information systems to implement these ideas Focuses on Information System (IS) Issues How IS can improve business processes Designs new information system Ensures IS quality standards are maintained Requires training & experience in design analysis, programming, business (to lesser degree) http://romisatriawahono.net

Infrastructure Analyst romi@romisatriawahono.net Object-Oriented Programming Infrastructure Analyst Focuses on interfaces between new system & existing infrastructure Makes sure new system follows organizational standards Identifies required infrastructure changes Requires experience in network & database administration Requires knowledge of hardware systems http://romisatriawahono.net

Change Management Analyst romi@romisatriawahono.net Object-Oriented Programming Change Management Analyst Focuses on system installation Documentation & support for users Coordinate training of users Strategies to overcome resistance Requires experience in organizational behavior Requires experience in change management http://romisatriawahono.net

Project Manager Responsible for schedule and budget romi@romisatriawahono.net Object-Oriented Programming Project Manager Responsible for schedule and budget Ensures promised benefits are delivered Manages team members Responsible for project plan and reporting progress Requires project management experience http://romisatriawahono.net

romi@romisatriawahono.net Object-Oriented Programming http://romisatriawahono.net

1.3 Systems Development Life Cycle

Systems Development Life Cycle (SDLC) romi@romisatriawahono.net Object-Oriented Programming Systems Development Life Cycle (SDLC) Planning Analysis Design Implementation http://romisatriawahono.net

Project Phases Planning: Why build the system? romi@romisatriawahono.net Object-Oriented Programming Project Phases Planning: Why build the system? System request, feasibility analysis, project size estimation Analysis: Who, what, when, where will the system be? Requirement gathering, business process modeling Design: How will the system work? Program design, user interface design, data design Implementation: System construction and delivery System construction, testing, documentation and installation http://romisatriawahono.net

Planning Identifying business value (System Request) romi@romisatriawahono.net Object-Oriented Programming Planning Identifying business value (System Request) Lower costs Increase profits Analyze feasibility Technical Feasibility Economic Feasibility Organizational Feasibility (System Proposal) http://romisatriawahono.net

Analysis Requirement gathering by answering the questions: romi@romisatriawahono.net Object-Oriented Programming Analysis Requirement gathering by answering the questions: Who will use the system? What will the system do? When will it be used? Investigate the current system Identify possible improvements Develop a concept for new system (System Specification) http://romisatriawahono.net

Design (System Specification) Program Design (UML Diagrams) romi@romisatriawahono.net Object-Oriented Programming Design Program Design (UML Diagrams) What programs need to be written Exactly what each program will do User Interface Design How users interact with system Forms / reports used by the system Data Design (ER Diagrams) What data is to be stored What format the data will be in Where the data will be stored (System Specification) http://romisatriawahono.net

Implementation Construction Testing Installation romi@romisatriawahono.net Object-Oriented Programming Implementation Construction New system is built and tested Often testing is the longest part Testing Unit Testing Integration Testing System Testing User Acceptance Test Installation Old system is turned off New system is turned on http://romisatriawahono.net

Processes and Deliverables romi@romisatriawahono.net Object-Oriented Programming Processes and Deliverables Process Product Planning Analysis Design Implementation System Proposal System Specification New System with Testing/Maintenance Plan http://romisatriawahono.net

SDLC and Deliverables Planning Analysis (System Specification) romi@romisatriawahono.net Object-Oriented Programming SDLC and Deliverables Planning (System Proposal) Analysis (System Specification) Design (System Specification) Implementation (New System) http://romisatriawahono.net

1.4 Systems Development Methodology (Model Process)

Software Development Methodology (Model Process) romi@romisatriawahono.net Software Engineering: An Overview Software Development Methodology (Model Process) A formalized approach to implementing the Software Development Life Cycle (SDLC) (Dennis, 2012) A simplified representation of a software process (Sommerville, 2015) A distinct set of activities, actions, tasks, milestones, and work products required to engineer high quality software (Pressman, 2015) http://romisatriawahono.net

Major Methodologies Structured Design Rapid Application Development romi@romisatriawahono.net Software Engineering: An Overview Major Methodologies More Prescriptive More Adaptive Structured Design Waterfall method Parallel development Rapid Application Development Phased Development Prototyping Throw-away Prototyping Agile Development Extreme Programming (XP) Scrum Lean Development (Dennis, 2012) http://romisatriawahono.net

Methodology Timeline

Activities and Artifacts Comparison

1.4.1 Structured Design

Structured Design Projects move methodically from one to the next step romi@romisatriawahono.net Software Engineering: An Overview Structured Design Projects move methodically from one to the next step Generally, a step is finished before the next one begins Type of Structured Desin: Waterfall Method Parallel Development http://romisatriawahono.net

Waterfall Method Pros Cons Identifies systems requirements long romi@romisatriawahono.net Software Engineering: An Overview Waterfall Method Pros Cons Identifies systems requirements long before programming Begins, it minimizes change to the requirements as the project proceed (mature) Design must be specified on paper before programming begins Long time between system proposal and delivery of new system Rework is very hard

romi@romisatriawahono.net Software Engineering: An Overview Parallel Development Addresses problem of time gap between proposal and delivery: Breaks project into parallel subproject Integrates them at the end http://romisatriawahono.net

1.4.2 Rapid Application Development

Rapid Application Development (RAD) romi@romisatriawahono.net Software Engineering: An Overview Rapid Application Development (RAD) Type of RAD: Phased development: a series of versions Prototyping: System prototyping Throw-away prototyping: design prototyping Critical elements to speed up the SDLC: CASE tools Visual programming languages Code generators http://romisatriawahono.net

RAD: Phased Development romi@romisatriawahono.net Software Engineering: An Overview RAD: Phased Development Pros Cons Gets useful system to users quickly Initial system is intentionally incomplete Most important functions tested most System requirements expand as users see versions http://romisatriawahono.net

romi@romisatriawahono.net Software Engineering: An Overview RAD: Prototyping Analysis, Design, Implementation are performed concurrently Start with a "quick-and-dirty" prototype, Provides minimal functionality Repeat process, refining the prototype each time Stop when prototype is a working system http://romisatriawahono.net

RAD: Throw-Away Prototyping romi@romisatriawahono.net Software Engineering: An Overview RAD: Throw-Away Prototyping Use prototypes only to understand requirements Example: use html to show UI Prototype is not a working design Once requirements are understood, the prototypes are thrown away http://romisatriawahono.net

1.4.3 Agile Development

romi@romisatriawahono.net Software Engineering: An Overview 3. Agile Development Just a few rules that are easy to learn and follow Streamline the SDLC Eliminate much of the modeling and documentation Emphasize simple, iterative application development Type of Agile Development: Extreme Programming (XP) (Kent Beck) Scrum (Ken Schwaber and Jeff Sutherland) Lean Development (Mary Poppendieck and Tom Poppendieck) Dynamic Systems Development Model (DSDM) (Dane Faulkner) http://romisatriawahono.net

Extreme Programming (XP) romi@romisatriawahono.net Software Engineering: An Overview Extreme Programming (XP) http://romisatriawahono.net

Scrum Project members form a Scrum Team consisting of 5–9 people romi@romisatriawahono.net Software Engineering: An Overview Scrum Project members form a Scrum Team consisting of 5–9 people The goal of the Sprint is determined and the prioritized functionality is broken down into detailed tasks The team is self-organized and the members have a joint responsibility for the results Each Sprint enhances the product’s market value and adds new functions and improvements that can be delivered to the customer http://romisatriawahono.net

Scrum romi@romisatriawahono.net Software Engineering: An Overview http://romisatriawahono.net

Iterative Scrum

Scrum romi@romisatriawahono.net Software Engineering: An Overview http://romisatriawahono.net

Scrum romi@romisatriawahono.net Software Engineering: An Overview http://romisatriawahono.net

Boards

romi@romisatriawahono.net Software Engineering: An Overview http://romisatriawahono.net

XP vs Scrum vs Lean XP deals with how to work with programming romi@romisatriawahono.net Software Engineering: An Overview XP vs Scrum vs Lean XP deals with how to work with programming Scrum deals with how the project is organized and planned Lean Development deals with which comprehensive principles should apply for the entire development organization http://romisatriawahono.net

1.5 Methodology Selection Strategy

Selection Factors Clarity of User Requirements romi@romisatriawahono.net Software Engineering: An Overview Selection Factors Clarity of User Requirements Familiarity with Technology System Complexity System Reliability Short Time Schedules Schedule Visibility http://romisatriawahono.net

Selection Factors romi@romisatriawahono.net Software Engineering: An Overview Selection Factors http://romisatriawahono.net

Latihan Analisis Kasus: Memilih Metodologi yang Tepat romi@romisatriawahono.net Software Engineering: An Overview Latihan Analisis Kasus: Memilih Metodologi yang Tepat Seandainya, anda adalah seorang software engineer di perusahaan PT BlackSoft, sebuah perusahaan IT yang memiliki kantor cabang di berbagai tempat di dunia PT BlackSoft ingin membangun sebuah sistem yang bisa menampilkan informasi tentang sumber daya manusia yang dimiliki, baik itu lokasi saat ini, latar belakang pendidikan, jadwal pekerjaan dan pengalaman kerja yang dimiliki Asumsikan bahwa ini adalah ide baru yang belum pernah diimplementasikan di PT BlackSoft sebelumnya PT BlackSoft memiliki jaringan internasional dimana kantor cabang di berbagai negara menggunakan hardware dan software yang berbeda Manajemen ingin agar sistem dapat selesai dikerjakan dan mulai bisa berjalan dalam satu tahun http://romisatriawahono.net

romi@romisatriawahono.net Object-Oriented Programming Summary -1- The systems analyst is a key person analyzing the business, identifying opportunities for improvement, and designing information systems to implement these ideas There are five major team roles: Business analyst Systems analyst Infrastructure analyst Change management analyst Project manager http://romisatriawahono.net

romi@romisatriawahono.net Object-Oriented Programming Summary -2- The Systems Development Lifecycle consists of four stages: Planning, Analysis, Design, and Implementation The major development methodologies: Structured design Waterfall method Parallel development RAD development Phased Development Prototyping Throw-away Prototyping Agile development Extreme Programming Scrum http://romisatriawahono.net

romi@romisatriawahono.net Object-Oriented Programming Referensi Alan Dennis et al, Systems Analysis and Design with UML 4th Edition, John Wiley and Sons, 2013 Kenneth E. Kendall and Julie E Kendall, Systems Analysis and Design 8th Edition, Prentice Hall, 2010 Hassan Gomaa, Software Modeling and Design: UML, Use Cases, Patterns, and Software Architectures, Cambridge University Press, 2011 Gary B. Shelly and Harry J. Rosenblatt, Systems Analysis and Design 9th Edition, Course Technology, 2011 Howard Podeswa, UML for the IT Business Analyst 2nd Edition, Thomson Course Technology, 2009 Jeffrey A. Hoffer et al, Modern Systems Analysis and Design 6th Edition, Prentice Hall, 2012 http://romisatriawahono.net