Thursday, 3 September 2015

Macam-macam Jenis Pemeliharaan Sistem


Definisi Pemeliharaan Sistem:
Suatu kombinasi dari berbagai tindakan yang dilakukan untuk menjaga suatu sistem dalam, atau memperbaikinya sampai, suatu kondisi yang bisa diterima. Pada bulan April 1970 didefinisikan sebuah istilah untuk Teknologi Pemeliharaan yang mencakup pengertian yang lebih luas dari pada pengertian Pemeliharaan diatas. Istilah ini adalah Teroteknologi.
Merupakan siklus terakhir dari SDLC yaitu dengan pemeriksaan periodik, audit dan permintaan pengguna akan menjadi source untuk melakukan perawatan system diseluruh masa hidup system.
Tujuan dari pemeliharaan system:
• Untuk memperpanjang usia kegunaan asset dari system tersebut. Hal ini terutama penting dinegara berkembang karena kurangnya sumber daya modal untuk penggantian. Dinegara-negara maju kadang-kadang lebih menguntungkan untuk ‘mengganti’ daripada ‘memelihara’.
• Untuk menjamin ketersediaan optimum peralatan
• Untuk menjamin kesiapan operasional dari seluruh peralatan yang diperlukan dalam keadaan darurat setiap waktu.
• Untuk menjamin keselamatan orang yang menggunakan sarana tersebut
Jenis Pemeliharaan
Pemeliharaan Korektif

Pemeliharaan korektif adalah bagian pemeliharaan sistem yang tidak begitu tinggi nilainya dan lebih membebani, karena pemeliharaan ini mengkoreksi kesalahan-kesahan yang ditemukan pada saat sistem berjalan.
Pemeliharaan Adaptif

Pemeliharaan adaptif dilakukan untuk menyesuaikan perubahan dalam lingkungan data atau pemrosesan dan memenuhi persyaratan pemakai baru. Lingkungan tempat sistem beroperasi adalah dinamik, dengan demikian, sistem harus terus merespon perubahan persyaratan pemakai. Misalnya, Undang-Undang Perpajakan yang baru mungkin memerlukan suatu perubahan dalam kalkulasi pembayaran bersih. Umumnya pemeliharaan adatif ini baik dan tidak dapat dihindari.
Pemeliharaan Perfektif

Pemeliharaan penyempurnaan mempertinggi cara kerja atau maintainabilitas (kemampuan untuk dipelihara). Tindakan ini juga memungkinkan sistem untuk memenuhi persyaratan pemakai yang sebelumnya tidak dikenal.
Ketika membuat perubahan substansial modul apapun, petugas pemeliharaan juga menggunakan kesempatan untuk mengupgrade kode, mengganti cabang-cabang yang kadaluwarsa, memperbaiki kecerobohan, dan mengembangkan dokumentasi.
Sebagai contoh, kegiatan pemeliharaan ini dapat berbentuk perekayasaan ulang atau restrukturisasi perangkat lunak, penulisan ulang dokumentasi, pengubahan format dan isi laporan, penentuan logika pemrosesan yang lebih efisien, dan pengembangan efisiensi pengoperasian perangkat.
Pemeliharaan Preventif

Pemeliharaan Preventif terdiri atas inspeksi periodik dan pemeriksaan sistem untuk mengungkap dan mengantisipasi permasalahan.
Karena personil pemeliharaan sistem bekerja dalam sistem ini, mereka seringkali menemukan cacat-cacat (bukan kesalahan yang sebenarnya) yang menandakan permasalahan potensial. Sementara tidak memerlukan tindakan segera, cacat ini bila tidak dikoreksi di tingkat awal, jelas sekali akan mempengaruhi baik fungsi sistem maupun kemampuan untuk memeliharanya dalam waktu dekat.
Siklus Hidup Pemeliharaan Sistem (SMLC)

• Permintaan Perubahan
• Mengubah permohonan pemeliharaan menjadi suatu perubahan
• Menspesifikasi perubahan Membangun pengganti
• Menguji pengganti
• Melatih pengguna dan melakukan tes penerimaan
• Pengkonversian dan pelepasan ke operasi
• Mengupdate dokumentasi
• Melakukan pemeriksaan pascaimplementasi
Prosedur Pemeliharaan Sistem

SDLC dan SWDLC
Aplikasi yang professional dalam SDLC dan SWDLC dan teknik maupun perangkat modeling yang mendukungnya adalah hal-hal keseluruhan yang terbaik yang dapat seseorang lakukan untuk meningkatkan maintainabilitas system.

Definisi data standar
Trend ke arah sistem manajemen database relasional mendasari dorongan ke normalisasi data dan definisi data standart.

Bahasa pemrograman standar
Penggunaan bahasa pemrograman standart,misalnya C atau COBOL,akan mempermudah pekerjaan pemeliharaan.

Rancangan Moduler
Programer pemeliharaan dapat mengganti modul program jauh lebih mudah daripada jika ia berurusan dengan kedeluruhan program.

Modul yang dapat digunakan kembali
Modul biasa dari kode yang dapat digunakan kembali,dapat diakses oleh semua aplikasi yang memerlukannya.

Dokumentasi standar
Diperlukan system,pemakai,perangkat lunak dan dokumentasi operasiyang standart sehingga semua informasi yang diperlukan untuk beroperasi dan pemeliharaan aplikasi khusus akan tersedia.

Kontrol sentral
Semua program,dokumentasi dan data test seharusnya diinstal dalam penyimpanan pusat dari system CASE (Computer-Aided Softtware Engineering atau computer Assisted Software Enginering.

Mengelola Pemeliharaan Sistem
Tantangan mengelola pemeliharaan sistem adalah sama dengan tantangan mengelola usaha-usaha lain . Yaitu tantangan untuk mengelola manusia.

Prioritas untuk mengarahkan pemeliharaan sistem adalah mengumpulkan sekelompok pemelihara yang berkompeten dan termotivasi,serta menyuplai mereka dengan perngkat dan sumber-sumber untuk melakukan pemeliaraan sistem yang terjadwal maupun yang tidak terjadwal.
Pemeliharaan sistem terjadwal dapat dibuat menurut kalender atau diagram gantt.Pemeliharaan tidak terjadwal biasanya dilakukan atas inisiatif pemakai dan operator. Bagaimanapun juga pihak manajemen seharusnya menetapkan suatu cara untuk mengawali,merekam,dan mengevaluasi aktivitas pemeliharaan. Dengan melalui evaluasi kegiatan pemeliharaan,seorang manager akhirnya dapat mengoptimalkan program pemeliharaan sistem secara keseluruhan.
Cara pemeliharaan sistem
Pemeliharaan sistem
Semua informasi sewaktu-waktu berubah. Pemeliharaan sistem adalah kegiatan yang membuat perubahan ini.
A. Keperluan pemeliharaan sistem
Sistem perlu dipelihara karena beberapa hal, yaitu:
1. System memiliki kesalahan yang dulunya belum terdeteksi, seingga kesalahan-kesalahan system perlu diperbaiki
2. System mengalami perubahan-perubahan karena permintaan baru dari pemakai system
3. Sistem mengalami perubahan karena perubahan lingkungan luar (perubahan bisnis)
4. System perlu ditingkatkan

B. Jenis pemeliharaan system
Pemeliharaan system dapat digolongkan menjadi empat jenis:
1) Pemeliharaan korektif
Adalah bagian pemeliharaan system yang tidak begitu tinggi nilainya dan lebih membebani, karena pemeliharaan ini mengkoreksi kesalahan-kesalahan yang ditemukan pada saat system berjalan

2) Pemeliharaan adaptif
Dilakukan untuk menyesuaikan perubahan dalam lingkungan data atau pemrosesan dan memenuhi pesyaratan pemakai baru

3) Pemeliharaan perfektif
Mempertinggi cara kerja atau maintainabilitas (kemampuan untuk dipelihara). Tindakan ini juga memungkinkan system untuk memenuhi persyaratan pemakai yang sebelumnya tidak dikenal

4) Pemeliharaan preventif
Pemeliharaan preventif terdiri atas inspeksi periodik dan pemeriksaan system untuk mengungkap dan mengantisipasi permasalahan.

C. Prosedur untuk memeliharan system
System maintainability (kemampuan pemeliharaan system) adalah kapasitas personil pemeliharaan untuk melakukan pemeliharaan korektif, adaptif, prefektif, dan preventif.

Maintainabilitas (maintainability) system bertambah jika sistemnya dirancang agar mudah diubah. Aspek ini meliputi prosedur-prosedur berikut;
• SDLC (system development life cycle) dan SWDLC (software development life cycle)
• Definisi data standar
• Bahasa pemrograman standar
• Rancangan moduler
• Modul yang dapat digunakan kembali
• Dokumentasi standar
• Control sentral



PHP bahasa scripting server-side

PHP bahasa scripting server-side untuk membuat website interaktif dan dinamis
Sintaks PHP hampir sama dengan perl dan C. PHP banyak digunakan bersama dengan Apache (web server) disemuasistem operasi.

PHP Kependekan dari PHP: HypertextPreprocessor,èPHP adalah bahasa server-side scripting , sepertiASP , èPHP script dieksekusi di server dan mendukung hampir semua server (IIS, Apache, dll), PHP mendukung banyak databases (MySQL,Informix, Oracle, Sybase, Solid, PostgreSQL, Generic ODBC),è PHP adalah software open source (OSS), dapat didownload di www.php.net ,è PHP dapat dijalankan pada platform yang berbeda (Linux, Windows, dll)
Instalasi System èInstalasi Apache server (Web Server) dimesin Windows atau LinuxèInstalasi PHP (Web Application)èInstalasi MySQL (Database)
Jenis Situs Web =>

Berdasarkan lokasi publikasi :=>Diskbased website, situs web yang dipublikasi dalam komputer lokal menggunakan PWS.=>Serverbased website, situs web yang dipublikasi dalam web server, seperti IIS( Internet Information Server), Apache.
Berdasarkan Konten =>Static Website, isinya bersifat statis.=>Situs ini sangat cocok untuk perusahaan yang berskala kecil yang ingin memberikan informasi singkat mengenai keberadaan perusahaan, produk atau jasa yang diberikan.=>Perubahan atau penambahan isi harus dilakukan secara manual (modifikasi script).
Berdasarkan Konten=>Dynamic Website, situs web yang isi dan tampilannya disimpan dalam suatu database.=>Situs ini sangat cocok untuk perusahaan  berskala menengah hingga besar.=>Perubahan dan penambahan data dilakukan terhadap database.=>Isinya semakin lengkap, karena semua isi disimpan dalam sistem manajemen database yang rapih.
Threetier Architecture
Presentation Tier=>Tingkatan paling atas dari aplikasi. Memberikan informasi kepada pengguna aplikasi. Berinteraksi dengan tingkatan lainnya, contohnya mengirimkan permintaan user kemudian menampilkan datanya.
Application Tier=>Middle tier, Business Logic, operasi logika, akses dan proses data. Tingkatan ini memiliki fungsi untuk mengontrol fungsionalitas aplikasi dan melakukan proses yang mendetil.
Data Tier=>Tingkat ini mengacu ke Database Server. Pengelolaan data yang independense perti ini, meningkatkan skalabilitas dan performa aplikasi.
Penggunaan pada pengembangan website
Presentation Tier (Frontend)contoh :Konten yang digenerate oleh browser.
Application Tier (Server Side Script)contoh:Server Side Scripting, seperti PHP, JSP, ASP, SSJS (Server Side JS), dll.
Data Tier (Backend)contoh: Database server
Web Server èMerupakan sebuah perangkat lunak dalam server yang berfungsi menerima permintaan (request) berupa halaman web melalui HTTP atau HTTPS dari klien yang dikenal dengan browser web dan mengirimkan kembali (response) hasilnya dalam bentuk halaman-halaman web yang umumnya berbentuk dokumen HTML.
Apache Web Server (http://www.apache.org) èInternet Information Service, IIS (http://www.microsoft.com/iis)èXitami Web Server (http://www.xitami.com)
PWS èSun Java System Web Server
Server Side Scripting
Server Side Scripting merupakan sebuah teknologi scripting atau pemrograman web dimana script (program) dikompilasi atau diterjemahkan di server. Dengan SSS, memungkinkan untuk menghasilkan halaman web yang dinamis.
Script yang dieksekusi pada web server. Biasa digunakan untuk website dinamis yang menggunakan database atau media penyimpanan data lainnya
Server Side Scripting
ASP (Active Server Page) dan ASP.NET èoldFusionèJava Server PagesèPerlèPhytonèPHP
Instalasi Web Server & SSS
Instalasi Terpisah (PHP, Apache, MySQL)
Instalasi Gabungan:èXAMPP èAppServèWAMPèFoxServ èPHPTriad
Array merupakan tipe data terstruktur yang berguna untuk menyimpan sejumlah data yang bertipe berbeda
Bagian yang menyusun array disebut elemen array
Di PHP, index array dapat berupa bilangan integer atau string.
èFungsi merupakan bagian dari program yang melakukan aksi tertentu.
èFungsi dapat dipanggil sewaktu-waktu oleh bagian program yang lain.
èFungsi dapat mempunyai nilai keluaran (return value) dan dapat juga tidak.
èFungsi dapat mempunyai parameter(argumen) dan dapat juga tidak
èString merupakan kumpulan dari karakter. Dalam PHP, karakter sama dengan byte,
èdimana terdapat 256 karakter.
èUntuk menuliskannya dapat dengan:èsingle quoted – kutip tunggal ( ' )èdouble quoted – kutip ganda ( " )èheredoc sintaks
èModularisasi berarti melakukan pembuatan program berdasarkan modul-modul.
èSetiap modul dikembangkan untuk tujuan atau fungsi khusus.
èDua fungsi yang identik dalam segala hal, kecuali bagaimana mereka menangani kesalahan:
èinclude() menghasilkan peringatan, tapi script akan melanjutkan eksekusi
èrequire() menghasilkan kesalahan fatal, dan Script akan berhenti
èKedua fungsi ini digunakan untuk membuat fungsi, header, footer, atau elemen yang dapat digunakan pada beberapa halaman.
èTag <FORM> mendefinisikan satu
kesatuan masukan.
èDalam satu halaman dapat terdiri dari satu
atau lebih tag <form>
èDalam satu tag <FORM> dapat terdiri dari
beberapa jenis masukan.
¨  Atribut ACTION terdapat di dalam tag
<FORM>
¨  Atribut ini menentukan di halaman mana
form masukan akan diproses.
¨  Dapat berisi nama_halaman.php, atau
kosong (“”)
¨  Atribut METHOD terdapat di dalam tag
¨  <FORM>
¨  Atribut ini menentukan bagaimana form
akan diproses.
¨  Method dalam form ada 2, yaitu POST dan
GET.
¨  SUBMIT BUTTON merupakan trigger yang
menandakan suatu form akan diproses.
¨  Pada dasarnya SUBMIT BUTTON dapat
berupa tombol atau komponen HTML yang
lain yang difungsikan sebagai tombol.
¨  RESET digunakan untuk mengosongkan
data yang telah diisi sebelumnya.
<FORM ACTION=action base> form tags </FORM>
<FORM METHOD=method> form tags </FORM>
<FORM ENCTYPE=media type> form tags </FORM>
<FORM ACTION=action base TARGET="target
window name"> form tags </FORM>
<FORM SCRIPT=URL> form tags </FORM>
¨  Note : target window name diisikan berupa:
_blank : buka window baru
_self : pada window yang sama
_parent
_top
Penanganan Form di PHP
è$_POSTèDigunakan untuk form dengan method POST,
data tidak akan ditampilkan di address browser.
è$_GETèDigunakan untuk form dengan method GET,
data ditampilkan di address browser.
è$_REQUESTèDigunakan untuk form dengan method POST
maupun GET.
Jenis-jenis Form MasukanTEXTèPASSWORDèRADIO buttonèCHECKBOXèCOMBO BOXèTEXTAREA
Prinsip kerja Basis Data: Pengaturan data/arsip
Tujuan Basis Data:
èKemudahan dan kecepatan dalam pengambilan data ( speed)èEfisiensi ruangan penyimpanan ( space)èMengurangi/menghilangkan redudansi dataèKeakuratan (Accuracy)èPembentukan kode & relasi antar data berdasar aturan/batasan (constraint) tipe data, domain data, keunikan data, untuk menekan ketidakakuratan saat entry / penyimpanan data.
Tujuan Basis Data:
Ketersediaan (Avaibility)èPemilahan data yang sifatnya pasif dari database aktif
Kelengkapan ( Completeness)èKompleksnya data menyebabkan perubahan struktur database.
Keamanan ( Security)èMemberikan keamanan atas hak akses data.
Kebersamaan pemakaian (Sharebility) èBersifat multiuser.
Pengguna Basis Data: èKepegawaian èPergudangan èAkuntansièBankèReservasièCustomer Service, dll.

Sistem yang terdiri atas kumpulan table yang saling berhubungan & sekumpulan program(RDBMS)  yang memungkinkan berbagai user dan/atau program lain dapat mengakses dan memanifulasi table-table tsb.
Contohprogramaplikasi:DBMS:èDbaseèFoxProèMySQLèMS AccessèSQL ServerèOracleèDB2
¨  DBMS merupakan perantara antara user dengan database.
¨  Cara komunikasi diatur dalam suatu bahasa khusus yang telah ditetapkan oleh DBMS.
Contoh: SQL, dBase, QUEL, dsb.
¨  Bahasa database, dibagi dalam 2 bentuk:
¤  Data Definition Language (DDL)
¤  Data Manipulation Language (DML)
¨  Data Definition Language (DDL)
¨  Digunakan dalam membuat tabel baru, indeks, mengubah tabel, menentukan struktur tabel, dsb.
¨  Hasil dari kompilasi perintah DDL berupa kumpulan tabel yang disimpan dalam file khusus: Kamus Data (Data Dictionary).
¨  Data Dictionary: merupakan metadata(superdata), yaitu data yang mendeskripsikan data sesungguhnya. Data dictionary ini akan selalu diakses dalam suatu operasi database sebelum suatu file data yang sesungguhnya diakses.
¨  Data Manipulation Language (DML)
¨  Digunakan dalam memanipulasi dan pengambilan data pada database.
¨  Manipulasi data, dapat mencakup:
- Pemangilan data yang tersiman dalam database (query)
- Penyisipan/penambahan data baru ke database (Insert)
- Pengubahan data pada database ( Update)
- Penghapusan data dari d ataase b ( Delete)
¨  Pemodelan sistem dengan ER Data Model (ER Diagram) digunakan dalam pembuatan basis data (database).
¨  Basis data (Database) adalah Kumpulan file atau data yang saling berhubungan.ER Diagram menggambarkan tipe objek mengenai data itu dimanajemen, serta relasi antara objek tersebut.
¨  ER Diagram digunakan oleh System Analyst dalam merancang database.
¨  ER Model dibuat berdasarkan persepsi atau pengamatan dunia nyata yang terdiri atas entitas dan relasi antara entitas-entitas tersebut.
¨  Sebuah database dapat dimodelkan sebagai:
¤  Kumpulan Entity/Entitas, 
¤  Relationship/Relasi diantara entitas.
¨  Entitas adalah sebuah obyek yang ada (exist) dan dapat dibedakan dengan obyek yang lain.
¨  Entitas ada yang bersifat konkrit, seperti: orang, buku, pegawai, perusahaan; dan ada yang bersifat abstrak, seperti: kejadian, mata kuliah, pekerjaan dan sebagainya.
¨  Setiap entitas memiliki atribut sebagai keterangan dari entitas, misal. entitas mahasiswa, yang memiliki atribut: nrp, nama dan alamat.
key atribut) yang bersifat unik.
Jenis – Jenis Atribut:
¨  Simple/Atomic Attribute: adalah atribut yang tidak dapat dibagi bagi lagi menjadi atribut yang lebih mendasar.
¨  Composite Attribute: atribut yang terdiri dari beberapa atribut yang lebih mendasar, Contoh:
¤  - Atribut ALAMAT, terdiri atas atribut JALAN, KOTA,KODE POS. 
¤  - Atribut NAME, terdiri atas atribut FNAME, MNAME dan LNAME pada suatu entitas (EMPLOYEE).
¨  Single-Valued Attribute: atribut yang hanya memiliki satu harga/nilai, Contoh:
¤  - Atribut UMUR pada entitas PEGAWAI
¤  - Atritub LOCATIONS pada  entitas DEPARTMENT
¨  Multi-Valued Attribute: adalah atribut yang memiliki isi lebih dari satu nilai, Contoh:
- Atribut PENDIDIKAN TINGGI pada entitas PEGAWAI, dapat berisi lebih dari satu nilai: SMP, SMU, Perguruan Tinggi(Sarjana), Doktor, dll.
- Atribut HOBBY pada entitas MAHASISWA, dapat memiliki lebih dari satu nilai: sepak bola, menyani y , menari, tennis, dsb.
- Atribut PRASYARAT pada entitas MATA_KULIAH, dapat memiliki lebih dari satu nilai: Konsep Pemrograman & Algoritma Struktur Data untuk prasyarat mata kuliah Pemrograman Lanjut.
¨  Null Values Attribute: adalah atribut dari entitas yang tidak memiliki nilai, Contoh:
Atribut PENDIDIKAN TINGGI untuk tamatan SMP.
¨  Derived Attribute: adalah atribut yang nilainya dapat diisi atau diturunkan dari perhitungan atau algoritma tertentu. Contoh:
¨  - Atribut UMUR, dapat dihitung dari atribut TGL_LAHIR
¨  - Atribut LAMAKULIAH, dapat dihitung dari NIM yang merupakan kombinasi antara digit tahun dan digit yang lain
¨  Relasi adalah hubungan antar entitas.
¨  Relasi dapat memiliki atribut, dimana terjadi
¨  adanya transaksi yang menghasilkan suatu nilai tertentu.
¨  Derajad Relasi
¨  Derajad Relasi adalah jumlah entitas yang berpatisipasi dalam suatu relasi.
¨  Derajad Relasi dapat berupa:
¨  Unary Relationship (Relasi Berderajad 1)
¨  Binary Relationship (Relasi Berderajad 2) 
¨  Ternary Relationship (Relasi Berderajad 3)
¨  Untuk melakukan mapping (pemetaan) dari skema ER Diagram ke skema relasi terdapat langkah-langkah yang harus diperhatikan.
¨  Langkah- langkah mapping:
¨  Untuk setiap entitas skema relasi R yang menyertakan seluruh SimpleAtribute dan Simple Attribute dari Composite Attribute yang ada, pilih salah satu atribut kunci sebagai Primary Key.
¨  Untuk setiap relasi binary 1:1, tambahkan Primary Key dari sisi yang lebih ”ringan” ke sisi (entitas) yang lebih ”berat”. Suatu sisi dianggap lebih”berat” timbangannya apabila mempunyai partisipasi total.Tambahkan juga Simple Attribute yang terdapat pada relasi tersebutke sisi yang lebih ”berat”.
¨  Untuk setiap relasi binary 1:N, tentukan mana sisi yang lebih ”berat”. Sisi di anggap lebih ”berat” timbangannya adalah sisi-N. Tambahkan Primary Key dari sisi yang ””ringan ke skema relasi sisi yang lebih ”berat”.
¨  Untuk setiap relasi binary M:N, buatlah skema relasi baru R dengan atribut seluruh simple attribute yang terdapat pada relasi biner tersebut. Tambahkan primary key yang terdapat pada kedua sisi ke skema relasi R. Kedua Foreign Key yang didapat dari kedua sisi tersebut digabung  menjadi satu membentuk Primary Key dari skema relasi R.
¨  NOT NULL, Tidak boleh berisi NULL (kosong).
¨  UNIQUE, Satu data dengan data yang lainnya tidak boleh sama.
¨  PRIMARY KEY
¨  FOREIGN KEY 
¨  Sebagai relasi antara 2 tabel

¨  Dalam bahasa SQL pada umumnya informasi tersimpan dalam tabel-tabel yang secara logik merupkan strukur dua dimensi terdiri dari baris (row atau record) dan kolom(column atau field). Sedangkan dalam sebuah database dapat terdiri dari beberapa table.