mP e

DR

PEMBANGUNAN SISTEM INFORMASI VS SOFTWARE
• REKAYASA SISTEM INFORMASI DAN REKAYASA PERANGKAT LUNAK (James Martin)

PSI

Analisa Rekayasa Perangkat Lunak Rekayasa Sistem Informasi

Perancangan

Implementasi

Karakteristik Hardware Infant mortality Wear out Failure rate Time .

Karakteristik Software Increased failure rate due to side effects Failure rate Change Actual Curve Idealized Curve Time .

REKAYASA PERANGKAT LUNAK • Mengapa Rekayasa Perangkat Lunak (Software Engineering) diperlukan ? • Karena adanya Permasalahan didalam Perangkat Lunak dan Pengembangannya : – Krisis perangkat lunak. . – Biaya pemeliharaan perangkat lunak yang besar. – Biaya perbaikan kesalahan yang meningkat sejalan dengan tahapan pengembangan. – Keterlambatan dan kekurangan biaya.

dikembangkan oleh team dari berbagai disiplin.Mengapa Rekayasa Perangkat Lunak Diperlukan ?     Keterlambatan penyampaian produk Tidak sesuai dengan spesifikasi . bahkan salah Menafikan aspek non teknis Software berukuran besar. secara terus menerus produk dapat mengalami perubahan sepanjang pengembangan dan setelah instalasi .

• Mengapa Rekayasa Perangkat Lunak diperlukan ? – Krisis Perangkat Lunak 100 80 60 40 20 0 1960 Source : Electronic design. Jan 1981 REKAYASA PERANGKAT LUNAK SOFTWARE COST HARDWARE COST 1970 1980 1990 Biaya perangkat lunak cenderung meningkat dan melebihi biaya perangkat keras .

Perbaikan untuk kesalahan yang sama pada tahap operasi memelukan biaya 200 satuan . software Engineering Economics 1981) Perbaikan kesalahan pada tahap analisa memerlukan biaya 2 satuan.REKAYASA PERANGKAT LUNAK • Mengapa Rekayasa Perangkat Lunak diperlukan ? – Biaya perbaikan kesalahan yang meningkat sejalan dengan tahapan pengembanagan. 1000 500 200 100 50 20 10 5 2 1 Large software projects IBM-SSD GTE 80% Median (TRW survey) 20% SAFEGUARD8 SMALLER SOFTWARE PROJECTS (Boehm. 1980) Requirement Design Analysis Code Development Test Acceptance Test Operation (Sumber : Boehm.

2 Never Occurs 6.6 37.0 2.2 Fairly Common 29.2 1. No.7 1.2 31.5 3.4 Dont”t Know 3.0 Very Rate 9.4 16.1 8.5 1.2 20.5 4. ACM Sigsoft Software Engineering Notes.REKAYASA PERANGKAT LUNAK • Mengapa Rekayasa Perangkat Lunak Diperlukan ? – Survei tentang kelambatan dan kekurangan biaya serta beberapa penyebabnya. ( Blum.9 34.8 Not Very Common 25.2 30.7 35.1 38.8 CAUSE Agency estimated its own state of progress when it let the contract Incorrect agency management action.5 6.1 11. such as using inapporapriate contract Agency failed to specify requirement adequtely Agency overcommited it selt agency failed to manage during execution. including executive changes Agency failed to adequately inspect and test 1 X 2 X 3 X X X X X X X X Case Number 4 5 6 7 X X X X X X X X X X 8 X X X 9 X X X X .8 2. GAO Report FGMSD 80-4 Revisited.7 3. 1 Jan 1987 ) Very Common Software development has dollar overrun Software development has calendar overrun The delivered software must be corrected or modified by in-house programmer before it is usable The software is paid for but never used The delivered software is difficult to modify s The contractor” programming practices are such that sofware is easily understood by agency program 21.1 15.3 14.3 57.0 13.8 6.8 5.7 25.2 62.7 8.

REKAYASA PERANGKAT LUNAK • Mengapa Rekayasa Perangkat Lunak diperlukan ? – Biaya pemeliharaan perangkat lunak yang besar. preventive (4%) dan perfective (50%) 43% 43 8% 8 Pemeliharaan Pengembangan Lain-lain 49% 49 (Sumber : Boehm. adaptive (25%). Corrective (21%). . Software Engineering Economic 1982) Biaya pemeliharaan lebih besar dari biaya pengembangan perangkat lunak.

Aktivitas perawatan software 4% 25% Perfective Corrective Adaptive Preventive 50% 21% .

perbaikan) Portability: Kemampuan software untuk ditransfer dari satu lingkungan ke lingkungan lain Sub karakteristik Suitability. Learnability. Attractiveness Time Behavior. Fault tolerance. Interoperability.KUALITAS SOFTWARE: IS0 9126 Karakteristik Functionality: software untuk menjalankan fungsinya sebagaimana kebutuhan sistemnya Reliability:Kemampuan software untuk dapat tetap tampil sesuai dengan fungsinya ketika digunakan Usability:Kemampuan software untuk mudah dimengerti. Installability . Testability Adaptability. Accuracy. Recoverability Understandability.adaptasi. Resource Utilization Analyzability. Changeability. Stability.Security Maturity. digunakan dan disukai pengguna Efficiency: Kemampuan software untuk menampilkan performans relatif terhadap penggunaan sumberdaya Maintainability: Kemampuan software untuk dimodifikasi (koreksi. Operability. dipelajari.

K .

(Boehm ‘Software Engineering’ IEEE Trans on Computer). .REKAYASA PERANGKAT LUNAK • Usaha untuk mengatasi permasalahan dalam perangkat lunak dilakukan melalui Rekayasa Perangkat Lunak atau Software Engineering. mengoperasikan dan memelihara program-program tersebut. • Rekayasa Perangkat lunak didefinisikan sebagai penerapan pengetahuan keilmuan secara praktis dalam perancangan dan pengembangan program dan dokumentasi terkait yang diperlukan untuk mengsembangkan.

.

• Metrik perangkat lunak (software metric). – PENGEMBANGAN PERANGKAT LUNAK • Proses perangkat lunak (software process) • Metodologi perangkat lunak (software methodology). • Pemeliharaan perangkat lunak (software maintenance). • Manajemen proyek (project management).REKAYASA PERANGKAT LUNAK  AKTIVITAS – REKAYASA PERANGKAT LUNAK • Pengembangan perangkat lunak (software development). • Manajemen konfigurasi perangkat lunak (software configuration management). • Jaminan kualitas perangkat lunak (software quality assurance). .

• Menentukan urutan pelaksanaan dari tahap-tahap tersebut dalam rangka pengembangan perangkat lunak.PROSES PERANGKAT LUNAK  FUNGSI UTAMA • Menentukan tahap-tahap yang diperlukan untuk pengembangan perangkat lunak. . • Menentukan kriteria transisi/perpindahan dari satu tahap ke tahap berikutnya.

MODEL – Code and Fix – System Development Life Cycle (SDLC) – Prototyping – Spiral – CASE (Computer Aided Software Engineering) .

• TAHAP-TAHAPNYA : – CODE (PEMROGRAMAN). . • KRITERIA TRANSISI : – CODE (PROGRAM). – Menggunakan 3GL atau lebih rendah. CODE AND FIX MODEL. – FIX (PERBAIKAN/PEMELIHARAAN). • CATATAN : – Proses pengembangan perangkat lunak pada awal era pengolahan data. – Biaya pemeliharaan yang besar.

– Pemeliharaan.  KRITERIA TRANSISI : – Dokumentasi. dan sampai saat ini merupakan salah satu proses perangkat lunak yang paling banyak digunakan. – Pengkodean. . – Perancangan.  CATATAN : – Sering dikenal sebagai “Document Driven Software Process” – Merupakan perbaikan dari code and fix. – Pengoperasian.PROSES PERANGKAT LUNAK  SDLC (System Development Life Cycle)  TAHAP-TAHAPNYA : – Investigasi – Analisa.

presented. and successively refined by building a working model of the ultimate system quickly and in its working context. .Bernhard Boar has defined prototyping as A specific strategy for performing requirements definitions wherein user needs are extracted.

” .Connell and Shafer: “A software prototype is a dynamic visual model providing a communication tool for customer and developer that is far more effective than either narrative prose or static visual models for portraying functionality. It has been described as: • functional after a minimal amount of effort • a means for providing users of a proposed application with a physical representation of key parts of the system before system implementation • flexible modifications require minimal effort • not necessarily representative of a complete system.

Implementasi Sistem. Operasionalisasi dan Pemeliharaan  KRITERIA TRANSISI : – CODE (PROGRAM)  CATATAN : – Sering dikenal sebagai “Code Driven Software Process” – Merupakan salah satu proses perangkat lunak yang mulai banyak digunakan saat ini. – Dibandingkan dengan SDLC : * Produktivitas lebih baik * Kelengkapan fungsi dari sistem kurang baik * Keterpaduan (integrasi) sistem kurang baik – Alternatif STRUCTURED RAPID PROTOTYPING. penggunaan dan evaluasi prototipe (feedback). Penerimaan/Persetujuan End User. – Banyak memanfaatkan 4GL dan Application Generator.• PROTOTYPING • TAHAPAN: Identifikasi kebutuhan awal.Revisi Prototyping ( Iterasi 1…n). prototyping. .

PROSES PERANGKAT LUNAK • PROTOTYPING – Tahap-tahap : IDENTIFIKASI KEBUTUHAN AWAL PEMAKAI MEMBUAT SEBUAH PROTOTYPE REVISI PROTOTYPE CONTOH MODEL (PROTOTYPE) MENGGUNAKAN DAN MENGEVALUASI PROTOTYPE SISTEM YANG DISERAHKAN Implementasi Setuju Tidak .

PENGEMBANGAN PROTOTIPE SEBAGAI SUATU PROSES PENGEMBANGAN APLIKASI SECARA CEPAT (contoh produk NETSCAPE) Start Specifications Complete Input from User Feedback Feature Design and Coding Integration Beta 0 Beta 2 Beta 1 Januari February March Objectives Full Release Beta 4 Beta 5 May Stabilize Beta 6 June July Agustus Beta 3 April .

L. 1989) .PROSES PERANGKAT LUNAK • PROTOTYPING .L. Connel.STRUCTURED RAPID PROTOTYPING 8 Design Derivation 6 Prototyping Iteration 2 Rapid Analysis 5 Functions 1 Projek Plan 4 Menus 3 Database Creation 9 Tuning 7 User Approval 10 Operation & Maintenance (Sumber : J.B. Prentice Hall. Structured Rapid Prototyping. Shafer.

Consultation. • Prototype.CONTOH PENGEMBANGAN SISTEM DENGAN MENGGUNAKAN PENDEKATAN PENGEMBANGAN PROTOTYPE • Team. The initial prototype schematic design is developed. After the team gets feedback from users. Users review and sign off on their acceptance of the new system Installation. Feedback. The schematic is converted into a simple point-and-click • • • • • • • application prototype using prototyping tools. Presentation. A few end users and IS developers form a team to develop a business • Schematic. Acceptance. the prototype is retaired. Completion. A few screens and routine linkages are presented to users. consultation are held with central IT developers/consultants to identify potential improvements and conformance to existing standards of the organization. The prototype is converted into a finished application. The new application software is installed on network servers . Reiteration. Further presentations and reiteration are made.

• CATATAN : – Sering dikenal sebagai : “Risk Driven Software Process” – Untuk pengembangan proyek yang berskala besar. dengan memperhatikan pengaruh resiko dilihat dari segi finansial maupun keamanan (jiwa manusia). Prototyping dan Risk Analysis.PROSES PERANGKAT LUNAK  MODEL SPIRAL • KRITERIA TRANSISI : – Dokumen hasil analisa resiko. – Kombinasi SDLC. .

verify next . model.level product .• MODEL SPIRAL – tahap-tahapnya : Determine Objectives Alternatives Constraints Cumulative Cost Progress through steps Evaluate alternative Identity resolve risk Risk analysis Risk analysis Risk analysis Commitment Review Partition Prototype Risk analysis Prototype Prototype Operasional Prototype Requirements plan Concept of Simulation. bencmarks like cycle plan operation Software Detailed requirements design Requirements Software validation product Integration and Code design test plan Design validation & velitication Unit test Integra tion and Acceptance Implemen test test Plan next phases tation Spiral Model Develop.

check them for consistency and completeness. and records them in the repositories • The Database Generation Toolset generates information needed for data storage and access The System Interface provides for file transfers and query resporting .COMPUTER AIDED SOFTWARE ENGINEERING (CASE) Server Repository • The planning Toolset begins the development process with information strategy planning from a high-level business vantage point Planning Toolset Case Workstation • The Analysis Toolset focuses on correctly capturing detailed business requirements early in development process Analysis Toolset Case • The Design Toolset provides detailed specifications of the system solution Design Toolset Code Generation Toolset Work Station Repositories Information Integrator • Workstation repositories and a server repository document information about systems being developed or in use • The Code Generation Toolset produces program code based on system specification Database Generation Toolset • • • • • • System Interface • The Information Integrator integrates system spscifications.

in what form Processing What operations on the inputs are needed to produce the desired output ? What software can most effectively support those operations ? Output What information is needed by end users and in what form should the output be presented ? END USER DEVELOPMENT Storage Does the application use previously stored data ? Does it create data that must be stored for future use by this or other applications ? .Control What controls needed to protect against accidental loss or damage ? is there a needed to control access to data us by the application ? Input What data are available.

PEMBANGUNAN SISTEM INFORMASI : PENDEKATAN SISTEM PERUMUSAN MASALAH • Define a problem or opportunity using systems thinking Develop and evaluate alternative system solutions Select the system solution that best meets your requirements PENGEMBANGAN BERBAGAI ALTERNATIF SOLUSI • PEMILIHAN SOLUSI TERBAIK • DISAIN SOLUSI TERBAIK • Design the selected system solution to meet your requirements Implement and evaluate the success of the designed system IMPLEMENTASI SOLUSI • .

SIKLUS PENGEMBANGAN SISTEM INFORMASI (SDLC) te tiga ves In t Implemen Desi gn ze aly An in inta Ma .

SIKLUS PENGEMBANGAN SISTEM INFORMASI Memahami Permasalahan dan Peluang Sistem Systems Investigation Product Feasibillity Study Systems Analysis Product Functional Requirements (SDLC) Pengembangan Solusi Sistem Informasi Systems Design Product System Specifications Implementasi Solusi Sistem Informasi Systems Implementation Product Operational systems Systems Maintenance Product Improved system .

simulation. and managers. costumers. RUANG LINGKUP DAN PERUMUSAN MASALAH TOOLS: MATRIK KOMPONEN SISTEM INFORMASI DLLNYA.INVESTIGASI SISTEM PRODUK: TUJUAN. • Personal observation. • Examination of documents. reports. • Interviews with employees. . videotaping. • Development. and other documentation. and observation of model of the work activities. or involvement in end user work activities. • Questionnaires to appropriate end users in the organization. procedures manuals.

Software. reliability • and availability • . supplier. and network capability.PRODUK INVESTIGASI SISTEM: LAPORAN STUDI KELAYAKAN Organizational Feasibility • How well proposed system supports the strategic objectives of the organization Economic Feasibility • • • • Cost savings Increased revenue Decreased investment Increased profits Technical Feasibility Operational Feasibility End user acceptance Management support Customer. and government requirements • • Hardware.

decision rules. • Storage requirements. content. including sources.TAHAPAN ANALISIS PRODUK: FUNCTIONAL REQUIREMENTS • User interface requirements. . turnaround time. and capacity. and size of databases. Includes calculations. and the length and rationale for record retention. output and storage functions. Organization. • Processing requirements. formats. The input/output needs of end users that must be supported by the information system. Accuracy. volume. and adaptability requirements for system inputs. and response time needed for processing activities. processing. • Control requirements. security. content. types and frequency of updating and inquiries. and frequency of each type of input and output. throughput. Activities required to convert input into output. validity safety. and other processing operations.

in-context observations Coview video with developers Understanding Identify key User Needs issues Data Analysis Form Systems Development Team Verify findings with users Codevelopment Design solutions embodied in sketches. mock-ups. simulations Design workshops with users Final System Design Coview user`s reactions to design concepts .CONTOH SALAH SATU PENDEKATAN ANALISIS DAN DISAIN YANG MELIBATKAN TIM DAN PENGGUNAAN VIDEO User videotape library and database • video • transcripts • site maps • mock-ups Open-ended interviews Open-ended interviews On-site.

and reports. documents. • Hardware and facilities specifications: The physical and performance characteristics of the equipment and facilities required by the proposed system. and access. interactive dialogues. • Personal specifications: Job descriptions of persons who will operate the system. . forms. response. • Database specifications: Content. • Software specifications: The required software package or programming specifications of the proposed system. format. distribution.PRODUK: SYSTEM SPESIFICATIONS • User interface specifications: The content. maintenance. audio responses. structure. including performance and control specifications. and sequence of user interface products and methods such as display screens. and retention of databases.

and Dialog design • Data Element structur Design • Progam and Procedure design . Form.Tahapan Disain User Interface User Interface Design Design Data Data Design Design Process Process Design Design • Screen. Report.

TAHAPAN IMPLEMENTASI Implementation Activities Acquisition of Hardware. and Services Software Development or Modification End User Training System Documentation Conversion • Parallel • Pilot • Phased • Plunge . Software.

Develop computer programs or make any necessary modifications to software packages that are acquired. POS terminals. Perform a postimplementation audit within 30 days of each store's conversion to determine if the new POS systems are achieving their expected advantages. Use the first store converted as a pilot installation to help with testing and training. Hardware includes computer systems. salespeople. Test the system and make corrections until it operates properly Convert to the new system on a phased store-by-store basis to minimize disruption. Software includes network management programs and POS transaction processing packages. and information systems personnel to operate the new system. and telecommunications processors and network facilities. Educate and train managers. Prepare training materials and documentation on how to operate the new POS system for managers and salespeople. • • • • • • .TAHAPAN IMPLEMENTASI • Evaluate and acquire new hardware and software.

KONVERSI SISTEM • DIRECT CUT OVER ( IMMEDIATE CUT OVER) • PHASED IN CUT OVER • PARALELL CUT OVER • PILOT PROJECT .