Anda di halaman 1dari 50

Pembangunan Sistem Informasi

DR

Karakteristik Hardware
Infant mortality

Failure rate

Wear out

Time

Karakteristik Software

Failure rate

Increased failure rate


due to side effects

Actual Curve

Change

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 perbaikan kesalahan yang meningkat
sejalan dengan tahapan pengembangan.
Biaya pemeliharaan perangkat lunak yang besar.
Keterlambatan dan kekurangan biaya.

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

REKAYASA PERANGKAT LUNAK

Mengapa Rekayasa Perangkat Lunak diperlukan ?


Krisis Perangkat Lunak

SOFTWARE

COST

HARDWARE COST
Source : Electronic design, Jan 1981

Biaya perangkat lunak cenderung meningkat dan melebihi biaya perangkat keras

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 Operation
Test

(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

REKAYASA 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 )
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
The contractors programming practices
are such that sofware is easily
understood by agency program

Very
Common

Fairly
Common

Not Very
Common

Very
Rate

Never
Occurs

Dontt
Know

21.2

29.2

25.7

9.7

6.2

3.0

30.1

31.9

25.7

8.0

1.8

2.7

8.8

34.5

35.4

13.3

6.2

1.8

3.6

16.1

57.1

20.5

2.7

5.3

37.2

38.1

11.5

4.4

3.5

14.2

62.8

15.0

6.2

1.8

CAUSE
Agency estimated its own state of progress when it let the contract
Incorrect agency management action, 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

Case Number
4 5 6 7
X
X

X
X

8
X

X
X

X
X
X

REKAYASA PERANGKAT LUNAK


Mengapa Rekayasa Perangkat Lunak diperlukan ?
Biaya pemeliharaan perangkat lunak yang besar.
Corrective (21%), adaptive (25%), preventive (4%)
dan perfective (50%)

49%
49

43%
43

Pemeliharaan
Pengembangan
Lain-lain

8%
8

(Sumber : Boehm, Software Engineering Economic 1982)

Biaya pemeliharaan lebih besar dari biaya pengembangan perangkat lunak.

Aktivitas perawatan software

KUALITAS SOFTWARE: IS0 9126


Karakteristik

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

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

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

PROSES PERANGKAT LUNAK


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

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

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.

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

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 of
the ultimate system quickly and in its
working context.

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.

PROTOTYPING
TAHAPAN: Identifikasi kebutuhan awal, prototyping, penggunaan dan
evaluasi prototipe (feedback),Revisi Prototyping ( Iterasi 1n),
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.

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

Objectives

Input from User Feedback

Full Release

Feature Design and Coding


Integration
Beta 0 Beta 2
Beta 1
Januari

February

March

Beta 3
April

Stabilize

Beta 4
Beta 5
May

Beta 6
June

July

Agustus

PROSES PERANGKAT LUNAK


PROTOTYPING
- STRUCTURED RAPID PROTOTYPING
8
Design Derivation
6
Prototyping Iteration

7
User
Approval

2
Rapid Analysis
5
Functions

1
Projek Plan

3
Database
Creation

9
Tuning

4
Menus

10
Operation & Maintenance

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

CONTOH PENGEMBANGAN SISTEM DENGAN MENGGUNAKAN


PENDEKATAN 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

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

MODEL SPIRAL
tahap-tahapnya :
Determine
Objectives
Alternatives
Constraints

Cumulative Cost
Progress through steps
Evaluate alternative
Identity resolve risk

Risk
analysis
Risk
analysis
Commitment
Review

Partition

Spiral Model

Prototype

Risk
analysis

Prototype

Risk
analysis

Prototype

Operasional
Prototype

Requirements plan Concept of


Simulation, model, 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

Develop, verify
next - level product

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

The Design Toolset


provides detailed
specifications of the system
solution

The Information Integrator


integrates system
spscifications, check them
for consistency and
completeness, and records
them in the repositories

Analysis
Toolset

Case

Design
Toolset

Code
Generation
Toolset

Database
Generation
Toolset

System
Interface

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

The Database
Generation
Toolset
generates
information
needed for
data storage
and access

The System
Interface
provides for
file transfers
and query
resporting

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,
in what form

Processing
What operations on the inputs
are needed to produce the
desired output ?
What software can most
effectively support those
operations ?

Storage
Does the application use
previously stored data ?
Does it create data that must
be stored for future use by this
or other applications ?

END USER
DEVELOPMENT

Output
What information is needed
by end users and in what
form should the output be
presented ?

PEMBANGUNAN SISTEM INFORMASI :


PENDEKATAN SISTEM
PERUMUSAN
MASALAH

Define a problem or opportunity


using systems thinking

PENGEMBANGAN
BERBAGAI
ALTERNATIF
SOLUSI

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

PEMILIHAN
SOLUSI TERBAIK

DISAIN
SOLUSI TERBAIK

IMPLEMENTASI
SOLUSI

Inve

e
t
a
g
s ti
al
An

SIKLUS
PENGEMBANGAN
SISTEM INFORMASI
(SDLC)

Desi
gn

y ze

in ta
Ma
in

t
Implemen

SIKLUS
PENGEMBANGAN
SISTEM INFORMASI
Memahami
Permasalahan dan
Peluang
Sistem

Systems Investigation
Product
Feasibillity
Study

Systems Analysis
Product
Functional
Requirements

(SDLC)

Pengembangan
Solusi
Sistem Informasi

Implementasi
Solusi
Sistem Informasi

Systems Design
Product
System
Specifications

Systems Implementation
Product
Operational
systems

Systems Maintenance
Product
Improved system

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.

PRODUK INVESTIGASI SISTEM: LAPORAN STUDI KELAYAKAN

Organizational Feasibility

Economic Feasibility

How well proposed system


supports the strategic
objectives of the organization

Technical Feasibility

Cost savings
Increased revenue
Decreased investment
Increased profits

Operational Feasibility

Hardware, Software, and


network capability, reliability
and availability

End user acceptance


Management support
Customer, supplier, and
government requirements

TAHAPAN ANALISIS
PRODUK: 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.

CONTOH SALAH SATU PENDEKATAN ANALISIS DAN DISAIN


YANG MELIBATKAN TIM DAN PENGGUNAAN VIDEO

Open-ended
interviews
Open-ended
interviews
On-site, in-context
observations

Data
Analysis

Coview video with


developers
Understanding
Identify key
User Needs
issues

Form Systems
Development Team

User videotape
library and database
video
transcripts
site maps
mock-ups

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

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.

Tahapan Disain

User
UserInterface
Interface
Design
Design

Screen, Form, Report,


and Dialog design

Data
Data
Design
Design

Data Element structur


Design

Process
Process
Design
Design

Progam and
Procedure design

TAHAPAN
IMPLEMENTASI
Implementation
Activities

Acquisition of
Hardware,
Software,
and Services

Software
Development
or
Modification

End User
Training

System
Documentation

Conversion
Parallel
Pilot
Phased
Plunge

Sample Implementation Process

12-44

TAHAPAN IMPLEMENTASI
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.

Other Implementation Activities


Testing
Data conversion
Documentation
Training

12-46

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

Major System Conversion Strategies

(Plunge)
12-48

Post-Implementation Activities
System Maintenance
Corrective: fix bugs and logical errors
Adaptive: add new functionality
Perfective: improve performance
Preventive: reduce chances of failure

Post Implementation Review


Correct Errors
Periodic review/audit

Single most costly activity


12-49

Ujian sd 10 Januari 2015


1. Jelaskan bagaimana pengembangan sistem
informasi dengan menggunakan pendekatan
insourcing atau outsourcing di perusahaan !
2. Mantainaibility merupakan salah satu karakteristik
dari berkualitas tidaknya suatu software. Jelaskan
urgensi mantainaibility ini dalam konteks
implementasi suatu sistem informasi di organisasi?
3. Jelaskan bagaimana konversi sistem informasi
dapat dilakukan ?