pembangunan sI

45
Pembangunan Sistem Informasi Pembangunan Sistem Informasi DR

Transcript of pembangunan sI

Page 1: pembangunan sI

Pem

ban

gu

nan

Sis

tem

In

form

asi

Pem

ban

gu

nan

Sis

tem

In

form

asi

DR

Page 2: pembangunan sI

PEMBANGUNAN SISTEM INFORMASI VS SOFTWARE

• REKAYASA SISTEM INFORMASI DAN REKAYASA PERANGKAT LUNAK (James Martin)

Rekayasa Perangkat Lunak

Rekayasa Sistem Informasi

Perancangan

PSI

Analisa

Implementasi

Page 3: pembangunan sI
Page 4: pembangunan sI
Page 5: pembangunan sI

Karakteristik HardwareKarakteristik Hardware

Time

Fai

lure

rat

e

Infant mortalityWear out

Page 6: pembangunan sI

Karakteristik SoftwareKarakteristik Software

Time

Fai

lure

rat

e

Idealized Curve

Increased failure rate due to side effects

Actual CurveChange

Page 7: pembangunan sI

REKAYASA PERANGKAT LUNAKREKAYASA PERANGKAT LUNAK

• Mengapa Rekayasa Perangkat Lunak (Software Engineering) diperlukan ?

• Karena adanya Permasalahan didalam Perangkat Lunak dan Pengembangannya :– Krisis perangkat lunak.– Biaya perbaikan kesalahan yang meningkat

sejalan dengan tahapan pengembangan.– Biaya pemeliharaan perangkat lunak yang besar.– Keterlambatan dan kekurangan biaya.

Page 8: pembangunan sI

Mengapa Rekayasa Perangkat Lunak Diperlukan ?

Keterlambatan penyampaian produk Tidak sesuai dengan spesifikasi , bahkan salah Menafikan aspek non teknis Software berukuran besar, dikembangkan oleh

team dari berbagai disiplin, secara terus menerus produk dapat mengalami perubahan sepanjang pengembangan dan setelah instalasi

Page 9: pembangunan sI

REKAYASA PERANGKAT LUNAKREKAYASA PERANGKAT LUNAK

0

20

40

60

80

100

1960 1970 1980 1990

• Mengapa Rekayasa Perangkat Lunak diperlukan ?– Krisis Perangkat Lunak

Biaya perangkat lunak cenderung meningkat dan melebihi biaya perangkat keras

SOFTWARE COST

HARDWARE COST

Source : Electronic design, Jan 1981

Page 10: pembangunan sI

REKAYASA PERANGKAT LUNAKREKAYASA PERANGKAT LUNAK• Mengapa Rekayasa Perangkat Lunak diperlukan ?

– Biaya perbaikan kesalahan yang meningkat sejalan dengan tahapan pengembanagan.

(Sumber : Boehm, software Engineering Economics 1981)

Perbaikan kesalahan pada tahap analisa memerlukan biaya 2 satuan. Perbaikan untuk kesalahan yang sama pada tahap operasi memelukan biaya 200 satuan

1000500200100502010521

RequirementAnalysis

Design Code DevelopmentTest

AcceptanceTest

Operation

Large software projects

IBM-SSD

GTE

80%Median (TRW survey) 20%

SAFEGUARD8

SMALLER SOFTWARE PROJECTS

(Boehm, 1980)

Page 11: pembangunan sI

REKAYASA PERANGKAT LUNAKREKAYASA PERANGKAT LUNAK• Mengapa Rekayasa Perangkat Lunak Diperlukan ?

– Survei tentang kelambatan dan kekurangan biaya serta beberapa penyebabnya. ( Blum, GAO Report FGMSD 80-4 Revisited, ACM Sigsoft Software Engineering Notes, No. 1 Jan 1987 )

VeryCommon

FairlyCommon

Not VeryCommon

VeryRate

NeverOccurs

Dont”tKnow

Software development has dollaroverrun 21.2 29.2 25.7 9.7 6.2 3.0

Software development has calendaroverrun 30.1 31.9 25.7 8.0 1.8 2.7

The delivered software must becorrected or modified by in-houseprogrammer before it is usable

8.8 34.5 35.4 13.3 6.2 1.8

The software is paid for but never used - 3.6 16.1 57.1 20.5 2.7The delivered software is difficult tomodify 5.3 37.2 38.1 11.5 4.4 3.5

The contractor”s programming practicesare such that sofware is easilyunderstood by agency program

14.2 62.8 15.0 6.2 - 1.8

CAUSE Case Number

1 2 3 4 5 6 7 8 9Agency estimated its own state of progress when it let the contract X X X XIncorrect agency management action, such as using inapporapriatecontract X X X X

Agency failed to specify requirement adequtely X X X X X X XAgency overcommited it selt X Xagency failed to manage during execution, including executivechanges X X X X X

Agency failed to adequately inspect and test X X X X X

Page 12: pembangunan sI

REKAYASA PERANGKAT LUNAKREKAYASA PERANGKAT LUNAK

• Mengapa Rekayasa Perangkat Lunak diperlukan ?

– Biaya pemeliharaan perangkat lunak yang besar. Corrective (21%), adaptive (25%), preventive (4%) dan perfective (50%)

49 43

8

(Sumber : Boehm, Software Engineering Economic 1982)

Biaya pemeliharaan lebih besar dari biaya pengembangan perangkat lunak.

Pemeliharaan

Pengembangan

Lain-lain49%

43%

8%

Page 13: pembangunan sI

Aktivitas perawatan software

50%

21%

25%

4%

P erfec tiveC orrec tiveA daptiveP reventive

Page 14: pembangunan sI

KUALITAS SOFTWARE: IS0 9126Karakteristik Sub karakteristik

Functionality: software untuk menjalankan fungsinya sebagaimana kebutuhan sistemnya

Suitability, Accuracy, Interoperability,Security

Reliability:Kemampuan software untuk dapat tetap tampil sesuai dengan fungsinya ketika digunakan

Maturity, Fault tolerance, Recoverability

Usability:Kemampuan software untuk mudah dimengerti, dipelajari, digunakan dan disukai pengguna

Understandability, Learnability, Operability, Attractiveness

Efficiency: Kemampuan software untuk menampilkan performans relatif terhadap penggunaan sumberdaya

Time Behavior, Resource Utilization

Maintainability: Kemampuan software untuk dimodifikasi (koreksi,adaptasi,perbaikan)

Analyzability, Changeability, Stability, Testability

Portability: Kemampuan software untuk ditransfer dari satu lingkungan ke lingkungan lain

Adaptability, Installability

Page 15: pembangunan sI

K

Page 16: pembangunan sI

REKAYASA PERANGKAT LUNAKREKAYASA PERANGKAT LUNAK

• Usaha untuk mengatasi permasalahan dalam perangkat lunak dilakukan melalui Rekayasa Perangkat Lunak atau Software Engineering.

• Rekayasa Perangkat lunak didefinisikan sebagai penerapan pengetahuan keilmuan secara praktis dalam perancangan dan pengembangan program dan dokumentasi terkait yang diperlukan untuk mengsembangkan, mengoperasikan dan memelihara program-program tersebut.

(Boehm ‘Software Engineering’ IEEE Trans on Computer).

Page 17: pembangunan sI
Page 18: pembangunan sI

REKAYASA PERANGKAT LUNAKREKAYASA PERANGKAT LUNAK

AKTIVITAS– REKAYASA PERANGKAT LUNAK

• Pengembangan perangkat lunak (software development).

• Manajemen proyek (project management).

• Metrik perangkat lunak (software metric).

• Pemeliharaan perangkat lunak (software maintenance).

• Jaminan kualitas perangkat lunak (software quality assurance).

• Manajemen konfigurasi perangkat lunak (software configuration management).

– PENGEMBANGAN PERANGKAT LUNAK

• Proses perangkat lunak (software process)

• Metodologi perangkat lunak (software methodology).

Page 19: pembangunan sI

PROSES PERANGKAT LUNAK PROSES PERANGKAT LUNAK

FUNGSI UTAMAFUNGSI UTAMA• Menentukan tahap-tahap yang diperlukan untuk

pengembangan perangkat lunak.• Menentukan urutan pelaksanaan dari tahap-tahap

tersebut dalam rangka pengembangan perangkat lunak.

• Menentukan kriteria transisi/perpindahan dari satu tahap ke tahap berikutnya.

Page 20: pembangunan sI

MODEL– Code and Fix

– System Development Life Cycle (SDLC)

– Prototyping

– Spiral

– CASE (Computer Aided Software Engineering)

Page 21: pembangunan sI

CODE AND FIX MODEL.• TAHAP-TAHAPNYA :

– CODE (PEMROGRAMAN).

– FIX (PERBAIKAN/PEMELIHARAAN).

• KRITERIA TRANSISI :

– CODE (PROGRAM).

• CATATAN :

–Proses pengembangan perangkat lunak pada awal era pengolahan data.

–Menggunakan 3GL atau lebih rendah.

–Biaya pemeliharaan yang besar.

Page 22: pembangunan sI

PROSES PERANGKAT LUNAKPROSES PERANGKAT LUNAK SDLC (System Development Life Cycle) TAHAP-TAHAPNYA :

– Investigasi– Analisa.– Perancangan.– Pengkodean.– Pengoperasian.– Pemeliharaan.

KRITERIA TRANSISI :– Dokumentasi.

CATATAN :– Sering dikenal sebagai “Document Driven Software

Process”– Merupakan perbaikan dari code and fix, dan sampai saat

ini merupakan salah satu proses perangkat lunak yang paling banyak digunakan.

Page 23: pembangunan sI

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

Page 24: pembangunan sI

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 narrativeprose 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.”

Page 25: pembangunan sI

• PROTOTYPINGPROTOTYPING• TAHAPAN: Identifikasi kebutuhan awal, prototyping, penggunaan dan

evaluasi prototipe (feedback),Revisi Prototyping ( Iterasi 1…n), Penerimaan/Persetujuan End User, 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.

– Banyak memanfaatkan 4GL dan Application Generator.

– Dibandingkan dengan SDLC :* Produktivitas lebih baik

* Kelengkapan fungsi dari sistem kurang baik

* Keterpaduan (integrasi) sistem kurang baik

– Alternatif STRUCTURED RAPID PROTOTYPING.STRUCTURED RAPID PROTOTYPING.

Page 26: pembangunan sI

PROSES PERANGKAT LUNAKPROSES PERANGKAT LUNAK

IDENTIFIKASI KEBUTUHANAWAL PEMAKAI

MENGGUNAKAN DANMENGEVALUASI

PROTOTYPE

REVISI PROTOTYPE

MEMBUAT SEBUAHPROTOTYPE

CONTOH MODEL(PROTOTYPE)

SISTEM YANG

DISERAHKAN

• PROTOTYPING

– Tahap-tahap :

TidakSetujuImplementasi

Page 27: pembangunan sI

Objectives

Feature Design and Coding

Integration

Stabilize

Input from User Feedback Full Release

Start Specifications Complete

Beta 0

Beta 1

Beta 2

Beta 3

Beta 4

Beta 5 Beta 6

Januari February March April May June July Agustus

PENGEMBANGAN PROTOTIPE SEBAGAI SUATU PROSES PENGEMBANGAN APLIKASI

SECARA CEPAT (contoh produk NETSCAPE)

Page 28: pembangunan sI

8Design Derivation

6Prototyping Iteration

1Projek Plan

2Rapid Analysis

7User

Approval

5Functions

3DatabaseCreation

9Tuning

4Menus

10Operation & Maintenance

PROSES PERANGKAT LUNAKPROSES PERANGKAT LUNAK• PROTOTYPING - STRUCTURED RAPID PROTOTYPING

(Sumber : J.L. Connel, L.B. Shafer, Structured Rapid Prototyping, Prentice Hall, 1989)

Page 29: pembangunan sI

CONTOH PENGEMBANGAN SISTEM DENGAN MENGGUNAKANPENDEKATAN PENGEMBANGAN PROTOTYPE

• Team. A few end users and IS developers form a team to develop a business application

• Schematic. The initial prototype schematic design is developed.• Prototype. The schematic is converted into a simple point-and-click

prototype using prototyping tools.• Presentation. A few screens and routine linkages are presented to users.• Feedback. After the team gets feedback from users, the prototype is

retaired.• Reiteration. Further presentations and reiteration are made.• Consultation. consultation are held with central IT developers/consultants

to identify potential improvements and conformance to existing standards of the organization.

• Completion. The prototype is converted into a finished application.• Acceptance. Users review and sign off on their acceptance of the new

system• Installation. The new application software is installed on network servers

Page 30: pembangunan sI

PROSES PERANGKAT LUNAKPROSES PERANGKAT LUNAK

MODEL SPIRAL• KRITERIA TRANSISI :

– Dokumen hasil analisa resiko.

• 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).

– Kombinasi SDLC, Prototyping dan Risk Analysis.

Page 31: pembangunan sI

• MODEL SPIRAL– tahap-tahapnya :

DetermineObjectivesAlternativesConstraints

Cumulative Cost

Progress through steps

Evaluate alternativeIdentity resolve risk

Riskanalysis

Riskanalysis

Riskanalysis

Riskanalysis

Prototype PrototypePrototypePrototypeOperasional

Simulation, model, bencmarksSoftware requirements

Requirementsvalidation

Requirements planlike cycle plan

Concept ofoperation

Commitment

PartitionReview

Integration andtest plan Design validation &

velitication

Softwareproductdesign

Detailed design

Code

Unit testIntegra -tion andtest

AcceptancetestImplemen -

tationPlan next phases

Develop, verifynext - level productSpiral Model

Page 32: pembangunan sI

PlanningToolset

COMPUTER AIDED SOFTWARE ENGINEERING (CASE)

AnalysisToolset

DesignToolset

InformationIntegrator

CodeGeneration

Toolset

DatabaseGeneration

ToolsetSystem

Interface

Work StationRepositories

• The planning Toolset begins the development processwith information strategyplanning from a high-levelbusiness vantage point

• The Analysis Toolsetfocuses on correctlycapturing detailed businessrequirements early indevelopment process

• The Design Toolsetprovides detailedspecifications of the systemsolution

• The Information Integratorintegrates systemspscifications, check themfor consistency andcompleteness, and recordsthem in the repositories

• Workstation repositoriesand a server repositorydocument informationabout systems beingdeveloped or in use

• The Code GenerationToolsetproducesprogramcode basedon systemspecification

• The DatabaseGenerationToolsetgeneratesinformationneeded fordata storageand access

• The System• Interface• provides for• file transfers• and query• resporting

Case Workstation

Case

Server Repository

Page 33: pembangunan sI

ControlWhat controls needed toprotect against accidental loss or damage ?is there a needed to controlaccess to data us by theapplication ?

OutputWhat information is neededby end users and in whatform should the output bepresented ?

Input

What data are available, in what form

StorageDoes the application usepreviously stored data ?Does it create data that mustbe stored for future use by thisor other applications ?

ProcessingWhat operations on the inputsare needed to produce thedesired output ?What software can mosteffectively support thoseoperations ?

END USER DEVELOPMENT

Page 34: pembangunan sI

• Define a problem or opportunity using systems thinking

• Develop and evaluate alternative system solutions

• Select the system solution that best meets your requirements

• Design the selected system solution to meet your requirements

• Implement and evaluate the success of the designed system

PERUMUSAN MASALAH

PENGEMBANGANBERBAGAI

ALTERNATIFSOLUSI

PEMILIHAN SOLUSI TERBAIK

DISAINSOLUSI TERBAIK

IMPLEMENTASISOLUSI

PEMBANGUNAN SISTEM INFORMASI : PENDEKATAN SISTEM

Page 35: pembangunan sI

Investigate

Analyze

Des

ign

Implement

Maintain

SIKLUSSIKLUSPENGEMBANGANPENGEMBANGANSISTEM INFORMASISISTEM INFORMASI(SDLC)(SDLC)

Page 36: pembangunan sI

Memahami Permasalahan danPeluangSistem

SIKLUSSIKLUSPENGEMBANGANPENGEMBANGAN

SISTEM INFORMASISISTEM INFORMASI

Pengembangan SolusiSistem Informasi

Implementasi SolusiSistem Informasi

Systems InvestigationProduct

FeasibillityStudy

Systems AnalysisProduct

FunctionalRequirements

Systems DesignProduct System

Specifications

Systems ImplementationProduct

Operational systems

Systems MaintenanceProduct

Improved system

(SDLC)(SDLC)

Page 37: pembangunan sI

INVESTIGASI SISTEM PRODUK: TUJUAN, RUANG LINGKUP DAN PERUMUSAN MASALAH

TOOLS: MATRIK KOMPONEN SISTEM INFORMASI DLLNYA.

• Interviews with employees, costumers, and managers.

• Questionnaires to appropriate end users in the organization.

• Personal observation, videotaping, or involvement in end user work activities.

• Examination of documents, reports, procedures manuals, and other documentation.

• Development, simulation, and observation of model of the work activities.

Page 38: pembangunan sI

PRODUK INVESTIGASI SISTEM: LAPORAN STUDI KELAYAKAN

• How well proposed system supports the strategic objectives of the organization

• Cost savings

• Increased revenue

• Decreased investment

• Increased profits

• End user acceptance

• Management support

• Customer, supplier, and government requirements

• Hardware, Software, and network capability, reliability and availability

Organizational Feasibility Economic Feasibility

Technical Feasibility Operational Feasibility

Page 39: pembangunan sI

TAHAPAN ANALISISPRODUK: FUNCTIONAL REQUIREMENTS

• User interface requirements. The input/output needs of end users that must be supported by the information system, including sources, formats, content, volume, and frequency of each type of input and output.

• Processing requirements. Activities required to convert input into output. Includes calculations, decision rules, and other processing operations, and capacity, throughput, turnaround time, and response time needed for processing activities.

• Storage requirements. Organization, content, and size of databases, types and frequency of updating and inquiries, and the length and rationale for record retention.

• Control requirements. Accuracy, validity safety, security, and adaptability requirements for system inputs, processing, output and storage functions.

Page 40: pembangunan sI

CONTOH SALAH SATU PENDEKATAN ANALISIS DAN DISAIN YANG MELIBATKAN TIM DAN PENGGUNAAN VIDEO

Open-endedinterviews

On-site, in-contextobservations

Design solutions embodied in sketches, mock-ups, simulations

Understanding User Needs

Codevelopment

Form SystemsDevelopment Team

FinalSystemDesign

DataAnalysis

Open-endedinterviews

Coview video withdevelopers

Identify keyissues

Verify findingswith users

Design workshops with users

Coview user`s reactionsto design concepts

User videotapelibrary and database

• video• transcripts• site maps• mock-ups

Page 41: pembangunan sI

PRODUK: SYSTEM SPESIFICATIONS

• User interface specifications: The content, format, and sequence of user interface products and methods such as display screens, interactive dialogues, audio responses, forms, documents, and reports.

• Database specifications: Content, structure, distribution, and access, response, maintenance, and retention of databases.

• Software specifications: The required software package or programming specifications of the proposed system, including performance and control specifications.

• Hardware and facilities specifications: The physical and performance characteristics of the equipment and facilities required by the proposed system.

• Personal specifications: Job descriptions of persons who will operate the system.

Page 42: pembangunan sI

Tahapan Disain

User InterfaceDesign

User InterfaceDesign

DataDesign

DataDesign

ProcessDesign

ProcessDesign

• Screen, Form, Report,and Dialog design

• Data Element structur Design

• Progam and Procedure design

Page 43: pembangunan sI

TAHAPAN IMPLEMENTASI

ImplementationActivities

Conversion• Parallel• Pilot• Phased• Plunge

SoftwareDevelopment

orModification

Acquisition ofHardware,Software,

and Services

End UserTraining

SystemDocumentation

Page 44: pembangunan sI

• Evaluate and acquire new hardware and software. Hardware includes computer systems, POS terminals, and telecommunications processors and network facilities. Software includes network management programs and POS transaction processing packages.

• Develop computer programs or make any necessary modifications to software packages that are acquired.

• Prepare training materials and documentation on how to operate the new POS system for managers and salespeople.

• Educate and train managers, salespeople, and information systems personnel to operate the new system.

• 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.

Use the first store converted as a pilot installation to help with testing and training.• Perform a postimplementation audit within 30 days of each store's conversion to

determine if the new POS systems are achieving their expected advantages.

TAHAPAN IMPLEMENTASI

Page 45: pembangunan sI

KONVERSI SISTEM• DIRECT CUT OVER

( IMMEDIATE CUT OVER)

• PHASED IN CUT OVER

• PARALELL CUT OVER

• PILOT PROJECT