Pengertian Aplikasi Komputer
Aplikasi berasal dari kata application yaitu bentuk
benda dari kata kerja to apply yang dalam bahasa Indonesia berarti
pengolah. Secara istilah, aplikasi komputer adalah suatu subkelas
perangkat lunak komputer yang menggunakan kemampuan komputer langsung untuk
melakukan suatu tugas yang diinginkan pemakai. Contoh utama perangkat lunak aplikasi adalah
program pengolah kata, lembar kerja, dan pemutar media.
Kumpulan aplikasi komputer yang digabung
menjadi suatu paket biasanya disebut paket atausuite
aplikasi (application suite). Contohnya adalah Microsoft
Office dan OpenOffice.org, yang menggabungkan suatu aplikasi pengolah kata,
lembar kerja, serta beberapa aplikasi lainnya. Aplikasi-aplikasi dalam suatu
paket biasanya memiliki antarmuka pengguna yang memiliki kesamaan sehingga
memudahkan pengguna untuk mempelajari dan menggunakan tiap aplikasi. Umumnya
aplikasi-aplikasi tersebut memiliki kemampuan untuk saling berinteraksi
sehingga menguntungkan pemakai. Contohnya, suatu lembar kerja dapat dimasukkan
dalam suatu dokumen pengolah kata walaupun dibuat pada aplikasi lembar kerja
yang terpisah.
Proses Pengembangan Aplikasi
Komputer
Proses
pengembangan perangkat lunak (Software development process) adalah suatu
struktur yang diterapkan pada pengembangan suatu produk perangkat
lunak yang bertujuan untuk mengembangkan sistem dan memberikan panduan
yang bertujuan untuk menyukseskan proyek pengembangan sistem melalui tahap demi
tahap.
Proses
ini memiliki beberapa model yang masing-masing menjelaskan pendekatan terhadap
berbagai tugas atau aktivitas yang terjadi selama proses. Contoh model proses
pengembangan perangkat lunak antara lain adalah proses iteratif, extream programming, waterfall serta agile.
Pengembangan
perangkat lunak (juga disebut pengembangan aplikasi, desain
perangkat lunak, merancang perangkat lunak, pengembangan aplikasi
perangkat lunak,pengembangan aplikasi perusahaan, atau pengembangan
platform) adalah pengembangan suatu produk perangkat lunak. Istilah
“pengembangan perangkat lunak” bisa dipakai untuk menyebut aktivitas
pemrograman komputer, yaitu proses menulis dan mengelola kode sumber, namun
dalam arti luas istilah ini mencakup semua hal yang terlibat antara penciptaan
perangkat lunak yang diinginkan melalui pewujudan akhir perangkat lunak,
idealnya dalam proses yang terencana dan terstruktur. Karena itu,
pengembangan perangkat lunak bisa mencakup penelitian, pengembangan baru,
purwarupa, modifikasi, pemakaian kembali, rekayasa ulang, pengelolaan, atau
aktivitas lain yang menghasilkan produk perangkat lunak.
Berikut penjelasan lebih detail dari model pengembangan
perangkar lunak.
1.
Linear Sequential Model
Linear sequential model (atau
disebut juga “classic life cycle” atau “waterfall model”)
adalah metode pengembangan perangkat lunak dengan pendekatan sekuensial dengan
cakupan aktivitas :
1.
Rekayasa sistem dan Analisis (Sistem
Engineering and Analysis)
Karena
perangkat lunak adalah bagian dari sistem yang lebih besar, pekerjaan dimulai
dari pembentukan kebutuhan-kebutuhan untuk seluruh elemen sistem dan kemudian
memilah mana yang untuk pengembangan perangkat lunak. Hal ini penting, ketika
perangkat lunak harus berkomunikasi dengan hardware, orang dan
basis data.
2.
Analisis kebutuhan perangkat
lunak (Software Requirements Analysis)
Pengumpulan kebutuhan dengan
fokus pada perangkat lunak, yang meliputi:
Domain informasi, fungsi yang
dibutuhkan, unjuk kerja/performansi dan antarmuka. Hasilnya harus didokumentasi
dan direview ke pelanggan
3.
Perancangan (Design)
Ada 4 atribut untuk program yaitu : Struktur Data,
Arsitektur perangkat lunak, Prosedur detil dan Karakteristik Antarmuka. Proses
desain mengubah kebutuhan-kebutuhan menjadi bentuk karakteristik yang
dimengerti perangkat lunak sebelum dimulai penulisan program. Desain ini harus
terdokumentasi dengan baik dan menjadi bagian konfigurasi perangkat lunak.
4.
Pembuatan
kode (Coding)
Penterjemahan perancangan ke
bentuk yang dapat dimengerti oleh mesin, dengan menggunakan bahasa pemrograman
5.
Pengujian (Testing)
Setelah kode program selesai
testing dapat dilakukan. Testing memfokuskan pada logika internal dari
perangkat lunak, fungsi eksternal dan mencari segala kemungkinan kesalahan dan
memriksa apakah sesuai dengan hasil yang diinginkan.
6.
Pemeliharaan (Maintenance)
Merupakan bagian paling akhir
dari siklus pengembangan dan dilakukan setelah perangkat lunak dipergunakan.
Kegiatan :
•
Corrective
Maintenance : Mengoreksi
kesalahan pada perangkat lunak, yang baru terdeteksi pada saat perangkat lunak
dipergunakan
•
Adaptive
Maintenance : Penyesuaian
dengan lingkungan baru, misalnya sistem operasi atau sebagai tuntutan atas
perkembangan sistem komputer, misalnya penambahanprinter driver
•
Perfektive
Maintenance : Bila
perangkat lunak sukses dipergunakan oleh pemakai. Pemeliharaan ditujukan untuk
menambah kemampuannya seperti memberikan fungsi-fungsi tambahan, peningkatan
kinerja dan sebagainya.
Berikut merupakan keuntungan dan kerugian penggunaan
model water fall :
Keuntungan:
·
Terstruktur
·
Tiap tahap memiliki metode untuk menghasilkan
suatu dokumen yang bisa diserahkan ke pemakai
·
Dokumen yang dihasilkan tiap tahap bisa di
spesifikasikan secara jelas dan mendetail
Kerugian:
·
Linear, tidak ada umpan balik (feedback)
·
Sumber daya dan penjadwalan harus di perkirakan
pada awal proyek
·
Tahap terisolasi, kurang terjalin transisi ke
tahap berikutnya. Akibat paling besar terasa pada tahap requirement
·
Pemakai tidak bisa melihat produk perangkat
lunak sampai akhir proyek
·
Penekanan terbesar pada dokumen
Model waterfall ini cocok untuk produksi suatu aplikasi
tunggal yang biayanya rendah dengan menggunakan:
·
Dekomposisi fungsi top-down
·
3GL konvensional untuk implementasinya
2. Agile Process Model
Agile Process merupakan sekelompok
aktifitas pembangunan perangkat lunak secara iteratif yang menekankan pada
aktifitas konstruksi (desain dan koding). Agile Process mengeliminasi
sebagian besar waktu untuk melakukan perencanaan sistem dan berusaha sebisa
mungkin mematuhi jadwal deliver sistem
yang telah dijanjikan. Requirements yang dibutuhkan
secara langsung di-drive oleh pelanggan itu
sendiri, dan apabila terjadi perubahan terhadaprequirements tersebut,
pengembang dituntut mampu beradaptasi dengan perubahan yang terjadi.
Secara mendasar, aktifitas-aktifitas umum dalam kerangka
kerja agile antara lain: komunikasi dengan pelanggan,
perencanaan, pemodelan, konstruksi, pengiriman (delivery), dan melakukan
evaluasi. Kemudian aktifitas akan berulang, terutama untuk perencanaan deliver berikutnya. Semua aktifitas tersebut di
buat seminimal mungkin, lebih memfokuskan dan konsentrasi pada konstruksi
serta delivery.
Kemudian, seperti apa saja sih bentuk dari pendekatan Agile
ini ? Terdapat banyak model pendekatan yang tergolong dalam Agile Process, namun tidak semua model saya bahas pada
tulisan ini, saya hanya menjelaskan dua model yaitu: Extreme Programming(XP), dan Adaptive Software Development (ASD).
·
Extreme Programming (XP)
XP merupakan suatu
model yang tergolong dalam pendekatanagile yang
diusulkan oleh Kent Back. Menurut penjelasan dia, definisi XP adalah sebagai
berikut: “Extreme Programming (XP) is a lightweight, efficient, low-risk,
flexible, predictable, scientific, and fun way to develop software“.
Model ini cenderung menggunakan pendekatan Object-Oriented.
Tahapan-tahapan yang harus dilalui antara lain: Planning,
Design, Coding, danTesting.
Pada saat perencanaan, dimulai
dengan membuat semacam “user strories” yang
ditempatkan index card. User Story (cerita) merupakan deskripsi
fitur-fitur fungsional yang akan disediakan perangkat lunak yang akan dibuat.
Dari cerita-cerita yang telah dibuat, pelanggan memberikan semacam nilai
(misalnya: prioritas). Kemudian tim XP mengkaji semua cerita tadi dan
menentukan rincian biaya serta memperkirakan waktu yang dibutuhkan untuk
membangun sistem.
Apabila waktu yang dibutuhkan
untuk mengimplementasikan cerita tersebut lebih dari tiga minggu, maka tim XP
meminta pelanggan memecah cerita tersebut menjadi cakupan yang lebih kecil.
Cerita-cerita yang telah dibuat dikelompokkan, sehingga dapat diperkirakan
untuk melakukan deliverable increments. Meskipun
telah dikelompokkan dan proses pembangunan perangkat lunak telah dimulai,
pelanggan masih bisa menambah, merubah, memecah dan menghapus cerita-cerita
tersebut, namun tentunya harus sesuai dengan persetujuan bersama.Keuntungan
dari model XP antara lain adalah:
Pertama, dapat merepresentasikan
situasi nyata yang sering terjadi, sehingga sistem yang akan dibuat mendukung
sebagian besar operasional pengguna.
Kedua, memudahkan pengguna memahami
dan memberikan masukan terhadap cerita tersebut.
Ketiga, dapat merepresentasikan
fitur-fitur fungsional secara bertahap (incremental).
Adaptive Software Development (ASD)
ASD merupakan suatu model yang tergolong dalam pendekatan
agile yang diusulkan oleh Jim Highsmith. ASD
menekankan pada pengorganisasian tim secara mandiri, kolaborasi
antar-perseorangan, dan terus belajar, baik secara individu maupun secara tim.
ASD menggunakan tools yang disebut “time-boxing” – yaitu berupa aktifitas yang menentukan
jangka waktu tertentu yang dialokasikan untuk menyelesaikan berbagai macam
tugas. Apabila waktu yang ditentukan tersebut selesai, maka pembangunan sistem
akan pindah ke tugas berikutnya, dengan harapan bahwa sebagian besar dari critical work telah berhasil diselesaikan sebelum
waktu keseluruhan tugas berakhir. Terdapat tiga tahapan pada model ASD,
yaitu: Speculation, Collaboration,
dan Learning.
Pada
tahap Speculation, proyek dimulai dan adaptive cycle planning diselenggarakan. Pada
tahapan ini, didefinisikan visi dan misi pengguna terhadap sistem yang akan
dibuat, selanjutnya mendefinisikan project constraints, misalnya:
waktu deliver. dan selanjutnya mendefinisikan satu set dari
requirements yang akan dikerjakan dalam suatu cycle. Pada
tahap Collaboration, pada tahap ini diorganisasikan tim kerja
untuk membangun sistem. Direkomendasikan menggunakan model Joint Application Development (JAD). Pada
tahap Learning, terdapat tiga aktifitas yaitu: pelanggan atau
end-user menyediakan feedback terhadap hasil incremental delivery, tim ASD melakukan review terhadap komponen
perangkat lunak untuk memperbaiki dan meningkatkan kualitas perangkat lunak
yang sedang dibuat.
Jenis Aplikasi Komputer Berdasarkan Fungsinya
1. Aplikasi Perkantoran
Aplikasi perkantoran (Office) adalah aplikasi komputer yang berguna menyediakan layanan perkantoran.
Jenis-jenis Aplikasi perkantoran antara lain:
Aplikasi perkantoran (Office) adalah aplikasi komputer yang berguna menyediakan layanan perkantoran.
Jenis-jenis Aplikasi perkantoran antara lain:
·
Ms. Word
Adalah Aplikasi perkantoran pengolah kata.
Berfungsi untuk membuat dokumen, tabel, surat dan sebagainya.
Adalah Aplikasi perkantoran pengolah kata.
Berfungsi untuk membuat dokumen, tabel, surat dan sebagainya.
·
Ms.
Excel
Adalah Aplikasi perkantoran pengolah angka (Aritmatika)
Berfungsi untuk membuat grafik dan perhitungan.
Adalah Aplikasi perkantoran pengolah angka (Aritmatika)
Berfungsi untuk membuat grafik dan perhitungan.
·
Ms.
Powerpoint
Adalah Aplikasi perkantoran pengolah Multimedia.
Berfungsi unutk membuat slide presentasi.
Adalah Aplikasi perkantoran pengolah Multimedia.
Berfungsi unutk membuat slide presentasi.
·
Ms.
Access
Adalah Aplikasi perkantoran pengolah data.
Berfungsi untuk membuat data karyawan, data barang dan sebagainya.
Adalah Aplikasi perkantoran pengolah data.
Berfungsi untuk membuat data karyawan, data barang dan sebagainya.
·
Ms.
Publisher
Adalah Aplikasi perkantoran pengolah publikasi.
Berfungsi untuk membuat desain, poster dan sebagainya.
Adalah Aplikasi perkantoran pengolah publikasi.
Berfungsi untuk membuat desain, poster dan sebagainya.
·
Ms.
Front Page
Adalah aplikasi perkantoran untuk membuat Web.
Adalah aplikasi perkantoran untuk membuat Web.
2.
Aplikasi Grafis
Software aplikasi grafis
adalah suatu program untuk mengolah data yang berformat gambar. Software
aplikasi grafis mengolah data gambar dengan membuat gambar baru maupun mengubah
gambar yang sudah dibuat sebelumnya.
Software aplikasi grafis dibagi
lagi menjadi tiga (3) bagian :
1. Aplikasi
grafis berbasis vektor
Aplikasi grafis berbasis
vector menggunakan dasar-dasar operasi vector dalam operasi programnya.
Aplikasi ini berfungsi membuat gambar baru dengan cara mengolah garis-garis
menggunakan operasi vector.
Contoh :
·
Adobe Illustrator
·
Corel Draw
·
Macromedia Freehand
·
Micrografx designer
2. Aplikasi
grafis berbasis pixel/BITMAP
Aplikasi
ini berfungsi berdasarkan piksel atau resolusi. Aplikasi ini berfungsi untuk
memperindah atau memanipulasi gambar yang sudah ada.
Contoh :
·
Adobe Photoshop
·
Macromedia Fireworks
·
Corel Photopaint
PERBEDAAN APLIKASI
BERBASIS VEKTOR DENGAN BITMAP
Vektor
|
Bitmap
|
1.
Gambar tetap jelas ketika di perbesar
|
1.
Gambar kurang jelas ketika di perbesar
|
2.
Tersusun oleh garis dan kurva
|
2.
Tersusun atas titik-titik/dot
|
3.
Ukuran File yang dihasilkan kecil
|
3.
Ukuran File yang dihasilkan besar
|
4.
Kualitas grafis tidak bergantung dari
banyaknya pixel |
4.
Kualitas grafis bergantung dari
banyaknya pixel |
3. Aplikasi grafis berbasis tata letak
Aplikasi ini berfugsi untuk
mengatur letak gambar dan tulisan pada suatu file baru. Aplikasi ini biasanya digunakan
untuk membuat undangan, membuat iklan, membuat poster, Membuat artikel majalah
atau Koran dan lain sebagainya.
Contoh :
·
Adobe FrameMaker
·
Adobe In Design
·
Adobe PageMaker
·
Corel Ventura
·
Microsoft Publisher
·
Quark Xpress
Jenis Aplikasi Komputer Berdasarkan Environment
1.
APLIKASI CLIENT – SERVER
Pengaplikasian dari CLIENT – SERVER adalah seperti LAN . Contoh aplikasi dalam CLIENT-SERVER adalah SKYPE ,kita mengirimkan data ke SKYPE dan Server SKYPE menerima data yang CLIENT kirim dimana SERVER SKYPE menerjemahkan kode yang kita kirim ke servernya setelah diterjemahkan SERVER mengirimkan data ke CLIENT sesuai apa yang SERVER sudah terjemahkan sebelumnya dan sebaliknya,adapun contoh aplikasi client server yang lain seperti Whatsapp Messenger,We Char dan sebagainya.
Pengaplikasian dari CLIENT – SERVER adalah seperti LAN . Contoh aplikasi dalam CLIENT-SERVER adalah SKYPE ,kita mengirimkan data ke SKYPE dan Server SKYPE menerima data yang CLIENT kirim dimana SERVER SKYPE menerjemahkan kode yang kita kirim ke servernya setelah diterjemahkan SERVER mengirimkan data ke CLIENT sesuai apa yang SERVER sudah terjemahkan sebelumnya dan sebaliknya,adapun contoh aplikasi client server yang lain seperti Whatsapp Messenger,We Char dan sebagainya.
2.
APLIKASI STAND ALONE
Istilah aplikasi ‘Standalone’ diartikan sebagai
aplikasi yang dijalankan tanpa perlu dilakukan instalasi terlebih dulu.
Beberapa publisher perangkat lunak sengaja merancang aplikasi yang bekerja
‘Standalone’. Beberapa publisher ada pula yang menyediakan versi khusus untuk
bekerja secara ‘Standalone’. Selain lebih praktis, mampu bekerja secara
insidensial, kemampuan aplikasi ‘Standalone’ tidak kalah dengan versi penuh
(full version) yang membutuhkan instalasi. Bisa bekerja secara ‘Portable’ atau
dapat pula digunakan sebagaimana aplikasi penuh (full version).
Aplikasi yang bekerja secara ‘Standalone’ belum tentu disebut ‘Portable’. Istilah ‘Portable’ merujuk pada manfaat untuk pendayagunaan media flash disk. Ada beberapa aplikasi ‘Portable’ yang dapat bekerja secara ‘Standalone’, ada pula beberapa aplikasi ‘Portable’ yang membutuhkan instalasi khusus, terutama jika difungsikan bersama aplikasi menu flash disk. Aplikasi ‘Standalone’ dapat dioperasikan tanpa instalasi dan dijalankan dari flash disk sekalipun.
Jenis Aplikasi Komputer Berdasarkan Cara
Mendapatkannya
1. Create Application
Program komputer merupakan
suatu aplikasi yang dibuat dengan menggunakan bahasa program tertentu dan telah
ter-install di dalam komputer. Program komputer merupakan contoh perangkat lunak
komputer yang menuliskan aksi komputasi yang akan dijalankan oleh komputer.
Komputasi ini biasanya dilaksanakan berdasarkan suatu algoritma atau
urutan perintah tertentu.Urutan perintah (atau algoritma)merupakan suatu
perangkat yang sudah termasuk dalam program komputer tersebut.Tanpa algoritma tersebut,program
komputer tak dapat berjalan dengan baik.
Program komputer dikelompokan
dalam kelompok low level language ,mid level language dan high level language.
Struktur Dasar Program
Secara umum struktur dasar yang
diperlukan sebuah program adalah:
·
Deklarasi variabel yang dipakai
·
modul input
·
pengolahan data
·
serta modul output
Struktur dari sebuah‘Programming Languages’berbeda-beda,
tapi secara umum seperti yang telah disebutkan tadi. Struktur pada Pascal berbeda
dengan ‘Visual Basic’, begitu struktur pada ‘Visual C++’ berbeda
dengan ‘Java’.
Membuat Program Mudah
Sebagian orang atau programmer pemula, mengatakan sulit untuk membuat program. Alasan yang sering mereka katakan umumnya seperti berikut :
Sebagian orang atau programmer pemula, mengatakan sulit untuk membuat program. Alasan yang sering mereka katakan umumnya seperti berikut :
·
Susah merancang alur program.
·
Rumit menghafal kode program.
·
Muncul pesan error saat program dijalankan.
Itulah sebagian alasan umum kendala dalam pembuatan
program. Sebenarnya kalau kita sudah mengetahui Tips-tips/Cara Buat Program,
Kita bisa mengatakan, “Membuat
Program Itu Mudah”. yakin itu akan pasti terucap oleh bibir kita.
Langkah Awal Membuat Program
Pembuatan program akan terasa lancar kalau kita melaksanakan urutan atau langkah pembuatan program seperti berikut :
Langkah Awal Membuat Program
Pembuatan program akan terasa lancar kalau kita melaksanakan urutan atau langkah pembuatan program seperti berikut :
1.
Mendefinisikan Masalah.
Tips mendefinisikan masalah :
Tips mendefinisikan masalah :
·
Kumpulkan informasi masalah yang akan kita
selesaikan dengan program yang dibuat.
·
Analisa informasi yang didapat, kalau masih
kurang ulangi mencari data pendukung.
2.
Membuat
Rumusan Masalah.
Dari data yang telah kita peroleh, buat rumusan masalahnya, caranya :
Dari data yang telah kita peroleh, buat rumusan masalahnya, caranya :
·
Pahami data yang didapat.
·
Kelompokan data. Katagorikan variabel data yang
dipakai, data input yang diperlukan, data yang akan diproses, serta ouptput
data yang diperlukan.
·
Kemudian rancang alur program atau flowchart.
Atau buat "pseudo code".
3.
Implementasikan.
Setelah alur program kita susun secara logis dan terstruktur. Selanjutnya konversikan alur program kita ke bahasa pemograman. Tipsnya sebagai berikut :
Setelah alur program kita susun secara logis dan terstruktur. Selanjutnya konversikan alur program kita ke bahasa pemograman. Tipsnya sebagai berikut :
·
Pahami stuktur baku bahasa program yang kita
pakai
·
Siapkan list kode / kamus dari bahasa program
yang kita pakai.
·
Pahami cara penulisan / penggunaan dari kode
atau command yang kita pakai
·
Tes jalankan per modul. Ini untuk mempermudah
kita mencari dan memperbaiki error yang muncul
4.
Dokumentasi.
Dokumentasikan program yang
sudah kita buat. Dokumentasi ini penting untuk perbaikan program yang kita buat
dimasa akan datang. Simpan semua dokumen pendukung dan source list.
2.
Menyewa Aplikasi
Internet memberi
perusahaan cara baru untuk mendapatkan software. Penyedia jasa aplikasi (application service
providers-ASPs) menyediakan Web-based software pada komputer mereka
dan mengirim software ke klien melalui Internet. Dalam hal ini, perusahaan
tidak harus membeli, memasang, dan mempertahankan software massal. Melainkan,
perusahaan “menyewa” software yang mereka
butuhkan dari ASP. Keuntungan dari cara ini adalah pengurangan biaya software
dan overhead administrasi, pembaruan software secara otomatis, penyesuaian
skala dengan pertumbuhan bisnis, akses global ke informasi, akses ke personel
ahli TI, dan kemungkinan untuk memfokuskan pada kompetensi keuangan inti, bukan
pada persyaratan TI.
3.
Membeli Aplikasi
Software massal (canned software) dibuat oleh
perusahaan pengembang software dan dijual di pasar terbuka untuk berbagai
lapisan pemakai yang memiliki persyaratan yang hampir sama. Beberapa perusahaan
menggabungkan software dan hardware, serta menjual keduanya sebagai satu paket.
Hal ini disebut sebagai sistem terima jadi(turnkey system’s), karena vendor
memasang keseluruhan sistem dan pemakai hanya perlu “terima jadi”. Banyak
sistem terima jadi dibuat oleh para vendor yang mengkhususkan diri dalam
industri tertentu. Contohnya, sistem khusus yang dibuat untuk para dokter dan
dokter gigi, perusahaan perbaikan mobil, restoran umum, restoran cepat saji, tempat
penyewaan video, dan toko ritel lainnya.
Sumber :
Tidak ada komentar:
Posting Komentar