Sei sulla pagina 1di 15

Magister Teknik Informatika

Universitas Langlangbuana

Kuliah Matrikulasi TA 2019/2020


Pengantar Rekayasa Perangkat Lunak

Software Engineering Governance

Jumat, 23 Agustus 2019


Software Engineering Governance
• Software Engineering Governance is the set of
structures, processes and policies by which the
software development and deployment function
within an organisation is directed and controlled so as
to yield business value and to mitigate risk.
• Software Engineering Governance is a component part
of IT Governance.

2
Software Engineering Governance Model
business business
pressure needs

Evaluation

Direct Monitor

strategy, policy performance

Software
Software Software
Software Plan Development
& Deployment Operation Evaluation

Diadaptasi dari ISO/IEC 38500 Corporate Governance of IT


3
Software Engineering Management
• Software engineering management can be defined as
the application of management activities to ensure
that software products and software engineering
services are delivered efficiently, effectively, and to the
benefit of stakeholders.
http://swebokwiki.org/

4
5
Application Lifecycle Management
• Application lifecycle management, or ALM, is an integrated
system of people, processes, and tools that manage the life
an application from concept to retirement.
• ALM is similar to Software Development Lifecycle (SDLC), but
more comprehensive in scope.
• ALM includes governance, development, maintenance, and
decommissioning of software, while SDLC focuses primarily
on the development phase.
Sumber: https://www.techopedia.com/definition/20387/software-life-cycle
6
Software Life Cycle
• The software life cycle refers to all the phases of a software
product throughout its planning, development, and use, all
the way through to its eventual obsolescence or retirement.
• This process has many variable parts, but it can often be
segmented into several main pieces.
• This helps developers and others to understand how a
product is created, implemented and used.

Sumber: https://www.techopedia.com/definition/20387/software-life-cycle
7
Software Development Lifecycle

8
Software Development
• Proses dimana persoalan/kebutuhan pemakai
diterjemahkan menjadi produk perangkat lunak melalui
suatu rangkaian aktivitas tertentu sesuai model proses,
metode, dan alat bantu yang digunakan.

Mewakili persoalan yang Produk yang dihasilkan


akan dibantu komputer sebagai solusi persoalan
Proses yang dilaksanakan dengan
urut-urutan aktivitas tertentu
9
Model Proses Pengembangan
• Cara atau strategi bagaimana perangkat lunak dibuat
sedemikian rupa sehingga produk perangkat lunak tersebut
dapat diwujudkan.
• Beberapa model proses pengembangan PL:
 Waterfall / Linear-Sequential Model
 Prototyping Model
 Spiral Model
 Rational Unified Process (RUP)
 Extreme Programming (XP)

10
Metode Pengembangan
• Pendekatan, sudut pandang, atau kumpulan aturan
yang harus diikuti untuk menyelesaikan tahap-tahap
aktivitas pengembangan perangkat lunak.
• Beberapa metode pengembangan PL:
 Konvensional atau tradisional (1955)
 Berorientasi Data (1975)
 Berorientasi Aliran Data atau Proses (1976)
 Berorientasi Objek (1980an)

11
Alat Bantu Pengembangan
• Perangkat bantu atau kakas otomatis dan semi-
otomatis yang akan digunakan untuk mendukung
proses dan metode.
• Bentuk-bentuk alat bantu pengembangan:
 Diagram-diagram untuk memodelkan hasil setiap tahap
pengembangan.
 Perangkat lunak untuk membantu pelaksanaan analisis,
perancangan, pembuatan program, atau pengelolaan proyek.
 Bahasa pemrograman untuk penulisan program

12
Alat Bantu dan Metode Pengembangan
Tahap Pengembangan Alat Bantu
Konvensional

Analisis Flowmap
Perancangan System Flowchart, Program Flowchart

Implementasi Bahasa pemrograman


Tahap Pengembangan Alat Bantu
Analisis DFD, DD, p-spec, ERD
Fungsi

Perancangan Structure chart, pseudo-code


Implementasi Bahasa pemrograman prosedural
Tahap Pengembangan Alat Bantu
Objek

Analisis dan Perancangan UML


Implementasi/Pemrograman Bahasa pemrograman objek

13
Aktivitas Pengembangan (Umum)
• Analisis dan pemodelan persoalan
 Analisis (pemahaman) persoalan
 Pemodelan persoalan
• Analisis dan perancangan sistem (jika sistem belum
ada/belum dibuat)
• Pembuatan perangkat lunak:
 Analisis Kebutuhan
 Perancangan
 Konstruksi / Implementasi / Coding
 Pengujian
 Deployment
14
Aktivitas Pengembangan (Umum)
Layer Aktivitas Pelaksana
Persoalan Analisis Persoalan Subject Matter Analyst,
Pemodelan Persoalan System Analyst
Sistem Analisis Sistem System Analyst, DBA,
Perancangan Sistem Network Engineer
Perangkat Lunak Analisis Kebutuhan System Analyst, Software
Perancangan Architect
Implementasi Programmer
Pengujian Software Tester
Deployment Deployment Team

15