You are on page 1of 15

Hudi Kusuma Bharata, 341208719

[PRODUK DAN PROSES


SOFTWARE ENGINEERING]
[Tugas Mata Kuliah Software Engineering, Semester II Pasca Sarjana STTI Eresha Benarif Indonesia.]
Contents
Produk dan Proses ........................................................................................................................................ 3

1. Produk ............................................................................................................................................... 3

Evolusi Peran Software ......................................................................................................................... 3

Software ................................................................................................................................................ 4

2. Proses .................................................................................................................................................... 7

2.1.1. Proses, Metode dan Tools........................................................................................................... 7

2.1.2. Pandangan umum tentang software engineering ...................................................................... 7

2.2. Proses software.............................................................................................................................. 9

2.3. Model Proses Software .................................................................................................................. 9

2.4. Model Sequential Linier ............................................................................................................... 10

2.5. Model Iterative ............................................................................................................................ 10

2.6. Rapid Application Development (RAD) ........................................................................................ 11

2.7. Evolusi Model Proses Software .................................................................................................... 11

2.8. Developmen berbasis komponen ................................................................................................ 14

2.9. Model formal method .................................................................................................................. 14

2.10 Teknik Generasi ke empat........................................................................................................... 14

2.11. Teknologi Proses ........................................................................................................................ 14

2.12. Proses dan Produk ..................................................................................................................... 15

Page | 2
Produk dan Proses

1. Produk

Evolusi Peran Software


Buku populer yang diterbitkan pada tahun 1970-an dan 1980-an memberikan
sejarah perubahan persepsi komputer dan perangkat lunak dan dampaknya
terhadap budaya kita, a.l:
• Osborne [OSB79] characterized a "new industrial revolution."
• Toffler [TOF80] called the advent of microelectronics part of "the third
wave of change" in
• human history
• Naisbitt [NAI82] predicted a transformation from an industrial society to an
"information society."
• Feigenbaum and McCorduck [FEI83] suggested that information and
knowledge (controlled by computers) would be the focal point for power in
the twenty-first century
• Stoll [STO89] argued that the "electronic community" created by networks
and software was the key to knowledge interchange throughout the world
Buku-2 pada tahun 1990-an membahas tentang:
• Toffler [TOF90] described a "power shift" in which old power structures
(governmental, educational, industrial, economic, and military)
disintegrate as computers and software lead to a "democratization of
knowledge."
• Yourdon [YOU92] worried that U.S. companies might loose their
competitive edge in softwarerelated businesses and predicted “the decline
and fall of the American programmer.”
• Hammer and Champy [HAM93] argued that information technologies were
to play a pivotal role in the “reengineering of the corporation.”
• During the mid-1990s, the pervasiveness of computers and software
spawned a rash of books by “neo-Luddites” (e.g., Resisting the Virtual Life,
edited by James Brook and Iain Boal and The Future Does Not Compute by
Stephen Talbot). These authors demonized the computer, emphasizing
legitimate concerns but ignoring the profound benefits that have already
been realized. [LEV95]
• Yourdon [YOU96] re-evaluated the prospects for the software professional
and suggested the “the rise and resurrection” of the American
programmer.
• Today, “ubiquitous computing” [NOR98] has spawned a generation of
information appliances that have broadband connectivity to the Web to

Page | 3
provide “a blanket of connectedness over our homes, offices and
motorways” [LEV99].

Software
• Instructions (computer programs) that when executed provide desired
function and performance
• Data structures that enable the programs to adequately manipulate
information
• Documents that describe the operation and use of the programs

Karakteristik software
• Dihasilkan dari proses rekayasa
• Tidak akan “habis-pakai”
• Bersifat kompleks

Software Aplikasi
Jenis-2 Software
• Software system
• Software real-time
• Software bisnis
• Software engineering dan scientific
• Software embedded
• Software PC
• Software web-based
• Software artificial intelligence

Tantangan Proses Development Software


• Bagaimana memastikan kualitas software yang dihasilkan?
• Bagaimana mengkompromikan kebutuhan yang berkembang dengan
budget yang harus dijaga?
• Bagaimana mengupgrade tanaman software yang sudah tua?
• Bagaimana menghindari waktu delay yang merusak?
• Bagaimana kita sukses meresmikan software baru?

Page | 4
Mitos Software

Grafik Biaya perubahan software

Management Myths
Myth: Why should we change our approach to software development?
We’re doing the same kinds of programming now that we did ten
years ago.
Reality: Demand for greater productivity and quality

Myth: We already have a book full of standards and procedures


Reality: Is it used? Are the practitioner aware of its existence? Does it reflect
modern software development practice? Is it complete?

Myth: We have state-of-the-art software development tools; we buy them


the newest computers
Reality: It takes more than the latest PC. Software tools are more important
than hardware

Myth: If we fall behind schedule, just add more programmers


Reality: …adding people to a late software makes it later…

Page | 5
Myth: If I decide to outsource the software project to a third party, I can
just relax
Reality: first need to manage and control sofware

Customer Myths
Myth: A general statement of objectives is sufficient to begin writing – we
can fill in details later
Reality: A poor up-front definition is the major cause of failed software
efforts.

Myth: Change can be easily accommodated because software is flexible


Reality: the impact of change varies with the time it is introduced

Practitioner’s Myths
Myth: Once we write the program and get it work, our job is done
Reality: … the sooner writing code, the longer getting it done

Myth: Until I get the program “running”, I have no way of assessing its
quality
Reality: software reviews are quality filter that is more effective than testing

Myth: The only deliverable is the working program


Reality: + documentation

Myth: Software engineering will make us create voluminous and


unnecessary documentation, and will slow us down
Reality: Software Engineering is about quality. Better quality leads to
reduced rework

Page | 6
2. Proses

Definisi Software Engineering adalah:


Estabilishment dan penggunaan prinsip-2 software engineering untuk memperoleh
keekonomian software yang handal dan bekerja effisien di mesin yang sebenarnya [Fritz
Bauer]
Pemakaian pendekatan development yang dapat dikuantifikasi, sistematis, disiplin, operasi,
maintenance software

2.1.1. Proses, Metode dan Tools


• Proses software engineering adalah perekat layer teknologi yang memungkinkan
development software yang rasional dan tepat waktu
• Metode-2 software engineering menghasilkan teknik “how-to” dalam rekayasa
software
• Tools software engineering menghasilkan dukungan otomatis atau semi otomatis
bagi proses dan metode

2.1.2. Pandangan umum tentang software engineering


Fase Definisi – Menggambarkan apa yang harus dilakukan oleh software
Fase Development – Menggambarkan bagaimana siftware tersebut hatus dibuat
Fase Support – Memungkinkan dilakukannya perubahan (koreksi, adaptasi, pengembangan
dan pencegahan)

Page | 7
Aktivitas yang sering dilakukan
❏ Software project management
❏ Formal technical reviews
❏ Software quality assurance
❏ Software configuration management
❏ Document preparation and production
❏ Reusability management
❏ Measurement
❏ Risk management

Framework Proses Umum


❏ A common process framework is established by defining a small number of framework
activities that are applicable to all software projects, regardless of their size and
complexity
❏ Task set, a collection of SE work tasks, project milestones, work product, and quality
assurance points, enable the framework activities to be adapted to the characteristics of
the project
❏ Umbrella activities overlay the process model

Framework Proses
• Framework proses dibentuk dengan mendefinisikan sejumlah kecil framework
aktivtas yang bisa dipakai seluruh proyek software tanpa membedakan ukuran dan
kompleksitasnya
• Kumpulan task, koleksi task SE, milestone proyek, produk hasil pekerjaan serta poin-
2 jaminan mutu akan membuat framework aktivitas beradaptasi kedalam
karakteristik proyek
• Aktivitas payung model proses

Page | 8
2.2. Proses software
SEI (Software Engineering Institute) telah mengembangkan model komprehensif
kemampuan software engineering yang harus merepresentasikan pencapaian organisasi
dalam tingkat ‘maturity’. Adapun modelnya adalah sbb:
❏ Level 1: Initial – ad hoc, occasional
❏ Level 2: Repeatable – basic project management processes are established
❏ Level 3: Defined – process is documented, standardized, and integrated
❏ Level 4: Managed – process and products are quantitatively understood and controlled
using detailed measures
❏ Level 5: Optimizing – quantitative feedback, innovative ideas and technology

2.3. Model Proses Software


L.B.S. Racoon [1995] menggunakan fractal sebagai basis diskusi sifat sebenarnya dari proses
software dengan model sbb:

a. Phase looping problem solving

Page | 9
b. Phase didalam phase looping problem solving

2.4. Model Sequential Linier

Permasalahan model linier


• Project riil jarang mengikuti alur sequential
• Sering sulit bagi customer untuk menyatakan seluruh requiremen secara eksplisit
• Pelanggan harus sabar menunggu versi yang working sampai akhir-2 masa proyek

2.5. Model Iterative

Permasalahan
Customer melihat apa yang nampak sebagai versi working, padahal dibuat secara terburu-2
Developer sering membuat kompromi implementasi agar prototype dapat bekerja

Page | 10
2.6. Rapid Application Development (RAD)

❏ Sebuah model proses development software incremental yang menekankan siklus


pendek development
❏ Dicapai menggunakan konstruksi berbasis komponen
❏ Persyaratan dipahami dengan baik, dan cakupan proyek dibatasi
❏ Tahapan: model bisnis, model data, pembuatan aplikasi, testing & turnover

Kekurangan RAD
❏ Memerlukan sumber daya manusia yang memadai untuk proyek-proyek skala besar
❏ Memerlukan komitmen dari developer dan pelanggan untuk menyelesaikan sistem
dalam waktu singkat
❏ Tidak semua jenis aplikasi tepat menggunakan RAD - baik untuk modular dan bukan
untuk sistem kinerja tinggi
❏ Tidak sesuai ketika resiko teknis yang tinggi

2.7. Evolusi Model Proses Software


Evolusi model bersifat iterative. Cirinya adalah dengan cara yang memungkinkan para software
engineer untuk melengkapi versi-2 software dengan bertahap

Page | 11
2.7.1. The Incremental Model

2.7.2. Model Spiral

Page | 12
2.7.3. Model Spiral WINWIN

2.7.4. Model development concurrent

Page | 13
2.8. Developmen berbasis komponen

2.9. Model formal method

Model metode formal mencakup serangkaian kegiatan yang mengarah ke spesifikasi matematis
formal dari software. Metode formal memungkinkan software engineer untuk menentukan,
mengembangkan, dan verifikasi sebuah sistem berbasis komputer dengan menerapkan notasi
matematis secara ketat, Variasi pada pendekatan ini, yang disebut rekayasa perangkat lunak
Cleanroom Software Engineering [MIL87, DYE92] telah diterapkan oleh beberapa perusahaan
software development.

2.10 Teknik Generasi ke empat


Teknik generasi keempat (4GT) diarahkan pada tools yang memungkinkan software engineer
untuk menentukan beberapa karakteristik high-level software, kemudian tools tersebut secara
otomatis menghasilkan soure-code berdasarkan spesifikasi developer.

2.11. Teknologi Proses


Tools teknologi proses memungkinkan sebuah organisasi software untuk membangun
model framework proses, tugas set, dan kegiatan payung secara otomatis. Model, biasanya
digambarkan sebagai sebuah jaringan, kemudian dapat dianalisis untuk menentukan workflow
dan memeriksa struktur proses alternatif yang mungkin
mengarah pada pembangunan dengan mengurangi waktu atau biaya

Page | 14
2.12. Proses dan Produk
Jika proses lemah, tidak sekedar produk akhir nya akan menderita, namun melainkan keyakinan
yang berlebihan pada prosesnya juga akan membahayakan.

Page | 15

You might also like