Selasa, 27 Februari 2018

Pengertian Rekayasa Perangkat Lunak



Mata kuliah ini menjelaskan tentang Konsep Dasar
Perangkat Lunak, Daur Hidup, dan Tahapan
Pembangunan Perangkat Lunak, mulai dari tahapan
requirement, analisis, perancangan, konstruksi,
pengujian, dan perawatan dengan menggunakan
metode terstruktur yang dilengkapi studi kasus untuk
setiap tahapannya.

Perangkat Lunak (Software)
Software adalah sekelompok item atau
objek yang membentuk konfigurasi di
mana di dalamnya termasuk:
·         Program : sekumpulan instruksi yang
ketika dieksekusi akan memberi
fungsi dan hasil yang diinginkan.
·         Data : sekumpulan data yang
memungkinkan program
memanipulasi informasi.
·         Dokumen : sekumpulan dokumen
yang menggambarkan operasi dan
penggunaan program.

Senin, 19 Februari 2018

Grid computing dan Cloud computing

     Komputasi Grid atau Grid Computing adalah kumpulan sumber daya komputer dari berbagai lokasi untuk mencapai tujuan bersama. Grid dapat dianggap sebagai sistem terdistribusi dengan beban kerja non-interaktif yang melibatkan sejumlah besar file.
    Komputasi grid dibedakan dari sistem komputasi kinerja tinggi konvensional seperti komputasi cluster dalam bahwa komputer jaringan memiliki setiap node diatur untuk melakukan tugas yang berbeda atau aplikasi.  komputer Grid juga cenderung lebih heterogen dan geografis (dengan demikian tidak secara fisik ditambah) dari komputer klaster  Meskipun grid tunggal dapat didedikasikan untuk aplikasi tertentu, umumnya grid digunakan untuk berbagai tujuan.. Grids sering dibangun dengan tujuan umum perpustakaan software jaringan middleware.

Contoh Grid Computing:

a)     Scientific Simulation
Komputasi grid diimplementasikan di bidang fisika, kimia, dan biologi untuk melakukan simulasi terhadap proses yang kompleks.

b)     Medical Images
Penggunaan data grid dan komputasi grid untuk menyimpan medical-image. Contohnya adalah eDiaMoND project.

c)     Computer-Aided Drug Discovery (CADD)
Komputasi grid digunakan untuk membantu penemuan obat. Salah satu contohnya adalah: Molecular Modeling Laboratory (MML) di University of North Carolina (UNC).

d)      Big Science
Data grid dan komputasi grid digunakan untuk membantu proyek laboratorium yang disponsorioleh pemerintah Contohnya terdapat di DEISA.

e)     E-Learning
Komputasi grid membantu membangun infrastruktur untuk memenuhi kebutuhan dalam pertukaran informasi dibidang pendidikan. Contohnya adalah AccessGrid.

f)     Visualization
Komputasi grid digunakan untuk membantu proses visualisasi perhitungan yang rumit.

g)     Microprocessor design
komputasi grid membantu untuk mengurangi microprocessor design cycle dan memudahkan design center untuk membagikan resource lebih efisien. Contohnya ada diMicroprocessor Design Group at IBM Austin.

Beberapa konsep dasar dari grid computing :

  • Sumber daya dikelola dan dikendalikan secara lokal.
  • Sumber daya berbeda dapat mempunyai kebijakan dan mekanisme berbeda, mencakup Sumber daya komputasi dikelola oleh sistem batch berbeda, Sistem storage berbeda pada node berbeda, Kebijakan berbeda dipercayakan kepada user yang sama pada sumber daya berbeda pada Grid.
  • Sifat alami dinamis: Sumber daya dan pengguna dapat sering berubah
  • Lingkungan kolaboratif bagi e-community (komunitas elektronik, di internet)
  • Tiga hal yang di-,sharing dalam sebuah sistem grid, antara lain : Resource, Network dan Proses. Kegunaan / layanan dari sistem grid sendiri adalah untuk melakukan high throughput computing dibidang penelitian, ataupun proses komputasi lain yang memerlukan banyak resource komputer.


Cara Kerja Grid Computing :

Menurut tulisan singkat oleh Ian Foster ada check-list yang dapat digunakan untuk mengidentifikasi bahwa suatu sistem melakukan komputasi grid yaitu :

  1. Sistem tersebut melakukan koordinasi terhadap sumberdaya komputasi yang tidak berada dibawah suatu kendali terpusat. Seandainya sumber daya yang digunakan berada dalam satu cakupan domain administratif, maka komputasi tersebut belum dapat dikatakan komputasi grid.
  2. Sistem tersebut menggunakan standard dan protokol yang bersifat terbuka (tidak terpaut pada suatu implementasi atau produk tertentu). Komputasi grid disusun dari kesepakatan-kesepakatan terhadap masalah yang fundamental, dibutuhkan untuk mewujudkan komputasi bersama dalam skala besar. Kesepakatan dan standar yang dibutuhkan adalah dalam bidang autentikasi, otorisasi, pencarian sumberdaya, dan akses terhadap sumber daya.
  3. Sistem tersebut berusaha untuk mencapai kualitas layanan yang canggih, (nontrivial quality of service) yang jauh diatas kualitas layanan komponen individu dari komputasi grid tersebut.

Kemudian hal yang tidak boleh dilupakan adalah mengenai keberadaan dari elemen-elemen dari grid computing, elemen ini tidak bisa dilepaskan dari grid computing. Elemen grid computing adalah berikut :

Hardware
Software
Brainware

Keuntungan Utama Penggunaan Grid Computing       

Teknologi  grid computing mampu menjadi solusi bagi perusahaanperusahaan untuk memiliki suatu    sistem informasi yang berteknologi canggih,      yang mampu mendukung kinerja perusahaan, dengan biaya yang lebih murah.      

Kemampuan teknologi tersebut untuk mendukung kinerja perusahaan tidak      diragukan lagi.  Teknologi  grid computing membuka peluang bagi adanya      kerjasama lintas organisasi, lintas benua, dan lintas bangsa. Selain itu, terbuka      pula peluang untuk  melakukan komputasi yang rumit dengan menggunakan      superkomputer yang canggih, tanpa harus melakukan investasi besar-besaran         dalam bidang teknologi informasi
       
       Grid computing menjadi suatu hal yang menjanjikan bagi perusahaan disebabkan oleh 3 hal, yaitu:
  1. Lebih hemat biaya dalam  penggunaan sejumlah tertentu sumber daya komputer,
  2. Sebagai cara untuk memecahkan masalah yang mungkin tidak dapat dipecahkan tanpa sejumlah besar daya komputasi, dan 
  3. Karena menunjukkan bahwa sumberdaya dari banyak komputer dapat kooperatif dan dimanfaatkan secara sinergis, serta dikelola sebagai sebuah kolaborasi mencapai tujuan bersama

Perkalian dari sumber daya: Resource pool dari CPU dan storage tersedia ketika idle
Lebih cepat dan lebih besar: Komputasi simulasi dan penyelesaian masalah apat berjalan lebih cepat dan mencakup domain yang lebih luas
Software dan aplikasi: Pool dari aplikasi dan pustaka standard, Akses terhadap model dan perangkat berbeda, Metodologi penelitian yang lebih baik
Data: Akses terhadap sumber data global, dan Hasil penelitian lebih baik

Kekurangan Grid Computing

       Kekurangan pada grid computing yang lebih saya tekankan disini adalah mengenai hambatan yang dialami oleh masyarakat Indonesia dalam mengaplikasikan teknologi grid computing. Hambatan-hambatan tersebut adalah sebagai berikut :
  1. Manajemen institusi  yang terlalu birokratis menyebabkan mereka enggan untuk fasilitas yang dimiliki untuk digunakan secara bersama agar mendapatkan manfaat yang lebih besar bagi masyarakat luas.
  2. Masih sedikitnya sumber daya manusia yang  kompeten dalam mengelola grid computing.
  3. Kurangnya pengetahuan yang mencukupi bagi teknisi IT maupun user non teknisi mengenai manfaat dari grid computing itu sendiri.

Dengan adanya beberapa manfaat dan hambatan mengenai tersedianya grid computing di Indonesia, maka harus ada solusi yang berfungsi untuk mewujudkan manfaat dan menghilangkan hambatan yang muncul tersebut. Solusi itu antara lain adalah sebagai berikut :
  1. Memberikan sosialisasi pada instansi pendidikan maupun institusi non pendidikan mengenai manfaat serta biaya dengan menggunakan sistem komputasi grid.
  2. Kerjasama riset dan pengembangan antara departement dalam suatu perguruan tinggi dan industri.
  3. Diberikannya mata kuliah tentang grid computing sehingga dapat menghasilkan generasi yang menguasai teknologi ini.
  4. Adanya pengembangan aplikasi yang relevan dengan grid computing.


Sumber : 

CLOUD COMPUTING

Komputasi awan (cloud computing) adalah teknologi yang menjadikan internet sebagai pusat pengelolaan data dan aplikasi, di mana pengguna komputer diberikan hak akses (login). Penerapan komputasi awan saat ini sudah dilakukan oleh sejumlah perusahaan IT terkemuka di dunia. Sebut saja di antaranya adalah Google (google drive) dan IBM (blue cord initiative). Sedangkan di Indonesia, salah satu perusahaan yang sudah menerapkan komputasi awan adalah Telkom (Anggi, pusatteknologi.com).

Ada 3 (tiga) model pengiriman (delivery) dalam komputasi awan:
 (1) Software as a Service (SaaS),
 (2) Platform as a Service (PaaS), dan
 (3) Infrastructure as a Service (IaaS).
 SaaS merupakan layanan untuk menggunakan aplikasi yang telah disediakan – penyedia layanan mengelola platform dan infrastruktur yang menjalankan aplikasi tersebut.
 PaaS merupakan layanan untuk menggunakan platform yang telah disediakan – pengembang fokus pada aplikasi yang dibuat tanpa memikirkan tentang pemeliharaan platform.
 IaaS merupakan layanan untuk menggunakan infrastruktur yang telah disediakan.

Ada 4 (empat) model penyebaran (deployment) dalam komputasi awan:
 (1) public cloud,
 (2) private cloud,
 (3) hybrid cloud, dan
 (4) community cloud.

 Public cloud penggunaannya hampir sama dengan shared hosting, di mana dalam 1 (satu) server ada banyak pengguna.
 Private cloud hanya ada 1 (satu) pengguna dalam server. Hybrid cloud dapat digunakan untuk public atau private cloud.
 Sedangkan community cloud dapat digunakan bersama-sama oleh beberapa perusahaan yang memiliki kesamaan kepentingan (Ulum, 2015, blog.wowrack.co.id).

 Model penyebaran komputasi awan kadang sering disebut sebagai cloud storage.
Komputasi awan menjawab masalah dan tantangan IT. Sebut saja di antaranya adalah masalah tingginya anggaran investasi IT dan rencana pemulihan bencana (Disaster Recovery Plan, DRP) sebagai bagian dari business continuity. Kedua masalah tersebut dapat terjawab dengan baik oleh komputasi awan. Masalah lainnya, seperti tingginya tuntutan kebutuhan perusahaan, dapat terjawab dengan baik oleh komputasi awan dengan cara ketangkasan dalam pengembangan (seagate.com).

Beberapa pertimbangan utama sebelum beralih ke komputasi awan:
 (1) ketersediaan dan kecepatan internet,
 (2) kontrak jaminan tingkat pelayanan (Service Level Agreement, SLA),
 (3) komitmen/kesungguhan pelayanan penyedia jasa,
 (4) pengalaman penyedia jasa (khususnya di bidang komputasi awan),
 (5) on demand self service,
 (6) komputer server down,
 (7) keamanan dan privasi,
 (8) lokasi data dan yurisdiksi/ketetapan hukum,
 (9) backup data dan DRP, dan
 (10) biaya yang akan dikeluarkan.
Dengan adanya komputasi awan, jumlah komputer beserta sejumlah perangkat infrastruktur yang melekat dapat dihilangkan/dikurangi secara signifikan. Pergeseran tren perusahaan dalam membeli serta memelihara server dan aplikasi on-premise yang mahal, bergerak menuju ke bentuk metode penyewaan IT, sesuai dengan kebutuhan (cloudindonesia.com).
IT bukan merupakan pemberi kontribusi terbesar dalam pertambahan panas di Bumi. Tapi dengan menerapkan Green IT, salah satunya menerapkan komputasi awan, maka akan memberikan kontribusi positif dalam rangka mengurangi dampak negatif dari pemanasan global. Aktivitas cetak-mencetak kertas dapat dihindari. Komputasi awan mendukung Green IT, khususnya dalam hal efisiensi energi (karena penghilangan komputer beserta perangkatnya) dan paperless.

Sumber:


info kampus:ubpkarawang.ac.id

physical model


   Physical Data Model (PDM) adalah presentasi suatu implementasi database secara spesifik dari suatu Logical Data Model (LDM) yang merupakan konsumsi komputer yang mencakup detail penyimpanan data di komputer yang direpresentasikan dalam bentuk record format, record ordering dan access path. Dan menjelaskan bagaimana data itu disimpan di dalam media penyimpanan yang digunakan secara fisik. Sasarannya adalah menciptakan perancangan untuk penyimpanan data yang menyediakan kinerja yang baik dan memastikan integritas, keamanan, serta kemampuan untuk dipulihkan.

Perancangan PDM bertujuan untuk meningkatkan efisiensi dalam pemprosesan data yang mencakup :
1.    Relasi yang sudah ternormalisasi, juga mencakup perhitungan kasar volume data yang akan disimpan.
2.      Definisi dan deskripsi masing-masing atribut pada setiap entitas yang ada.
3.      Deskripsi tentang kapan dan dimana data digunakan, meliputi langkah-langkah pemasukan data, pemanggilan, penghapusan serta pembaruan.
4.      Kebutuhan akan waktu dalam mem-backup, recovery dan pemeliharaan integritas data.
5.     Deskripsi teknologi (sistem database, DBMS) yang digunakan untuk mengimplementasikan data.

Dalam membangun database secara fisik membutuhkan pilihan kritis yang akan berimasukan  pada integritas dan kinerja aplikasi yaitu:
1.      Pemilihan format (Tipe (Tipe data) dengan mempertimbangkan Penggunaan Ruang, niai, perbaikan integritas dan  manipulasi data;
2.      Pengelompokan atribut;
3.      Perekaman, pengorganisasian dan pembaharuan serta recovery;
4.      Pemilihan struktur database
5.      Penyiapan strategi penggunaan query
Physical Data Model (PDM) menjelaskan cara komputer memandang data, bahwa data tersimpan pada lokasi fisik sebagai file-file yang terpisah. Model data fisik terbagi menjadi 2 yaitu :

1. Penyimpanan berurutan
    yaitu organisasi atau penyusunan data di suatu medium penyimpanan yang terdiri dari satu record mengikuti satu record lain dalam suatu urutan tertentu. Misalnya, record pegawai disusun dalam urutan nomor pegawai. Saat penyimpanan berurutan digunakan, data pertama harus diproses pertama, data kedua diproses kedua, dan seterusnya sampai akhir file itu ditemukan. Contoh media penyimpanan ini adalah pita magnetik (magnetic tape).

2. Penyimpanan akses lansung
    yaitu suatu cara mengorganisasikan data yang memungkinkan record-record ditulis dan dibaca tanpa pencarian secara berurutan. Unit perangkat keras yang memungkinkan hal ini disebut Direct Access  Storage Device (DASD). DASD memiliki mekanisme membaca dan menulis yang dapat diarahkan ke lokasi manapun dalam media penyimpanan. Yang paling populer adalah piringan magnetik (magnetic disc).
 
Sumber :
1.      Adi Nugroho. 2011, Perancangan dan Implementasi Sistem Basis Data. Yogyakarta: Penerbit ANDI


info kampus: ubpkarawang.ac.id

Conceptual Database

Conceptual Database Design

Conceptual database design adalah proses membangun suatu model berdasarkan informasi yang digunakan oleh perusahaan atau organisasi, tanpa pertimbangan perencanaan fisik (Connolly,2002,p419).

Langkah pertama : Membuat local conceptual data model untuk setiap pandangan yang spesifik. Local conceptual data model terdiri dari :
a. Entitiy types
Menurut Connoly (2002,p331), entity types adalah kumpulan objek yang mempunyai karakteristik yang sama, dimana telah diidentifikasi oleh perusahaan.Menurut Silberschatz (2002,p27), entity types adalah kumpulan dari entity yang memiliki tipe dan karakteristik yang sama.
Entity dapat dibedakan menjadi dua yaitu :
· Strong Entity : entity yang keberadaannya tidak tergantung kepada entity lain (Fathansyah,1999,p94).
· Weak entity : entity yang keberadaannya tergantung dari entity lain (Fathansyah,1999,p94).
Contohnya adalah entity mahasiswa dan orang tua. Dimana mahasiswa merupakan strong entity dan orang tua merupakan weak entity karena keberadaan entity orang tua tergantung dari entity mahasiswa.

      b. Relationship types
Menurut Connolly (2002,p334) definisi dari relationship types adalah kumpulan antar entity yang saling berhubungan dan mempunyai arti.

     c. Attribute dan attribute domains
Attribute adalah karakteristik dari suatu entity atau relasi (Connolly,2002,p338). Setiap attribute diperbolehkan untuk memiliki nilai yang disebut dengan domain. Attribute domains adalah kumpulan dari nilai-nilai yang diperbolehkan untuk satu atau lebih attribute.

                  Ada beberapa jenis dalam attribute :

· Simple attribute dan Composite attribute
Simple attribute adalah attribute yang terdiri dari komponen tunggal dimana attribute tersebut tidak dapat dipisahkan lagi, sedangkan composite attribute adalah attribute yang masih dapat dipisahkan menjadi beberapa bagian. Contoh dari simple attribute adalah nama_barang sedangkan untuk composite attribute adalah alamat pada entity mahasiswa, karena dalam alamat bisa dibagi menjadi bagian entiti jalan, entiti kode_pos dan entiti kota (Silberchatz,2002,p29).

· Single-valued attribute dan Multi-valued attribute
Single-valued attribute adalah attribute yang memiliki satu nilai pada setiap entity, sedangkan multi-valued attribute adalah attribute yang mempunyai beberapa nilai pada setiap entity (Connolly,2002,p340). Contoh dari single-valued attribute adalah Nim, nama_Mhs, tanggal_lahir, dan lain-lain. Sedangkan untuk multi-valued attribute contohnya adalah jam_pelajaran, hobi, dan lain-lain.

      · Derived attribute
Derived attribute merupakan attribute yang nilai-nilainya diperoleh dari hasil perhitungan atau dapat diturunkan dari attribute lain yang berhubungan (Silberschatz,2002,p30). Contohnya adalah attribute umur pada entity mahasiswa dimana attribute tersebut diturunkan dari attribute tanggal_lahir dan tanggal_hari_ini.

d. Primary key dan alternate keys
Primary key adalah key yang telah menjadi candidate key yang dipilih secara unik untuk mengidentifikasi suatu entity types. Candidate key adalah kumpulan attribute minimal yang unik untuk mengidentifikasikan suatu entity types (Connolly,2002,p340).
Alternate key adalah key yang digunakan sebagai alternatif dari key yang telah didefinisikan (Fathansyah,1999,p104).

e. Integrity constraints
Integrity constraints adalah batasan-batasan yang menentukan dalam rangka melindungi basis data untuk menghindari terjadinya inconsistent. (Connolly,2002,p457).

Pada tahap conceptual model, langkah-langkah yang dilakukan adalah sebagai berikut :
a. Mengidentifikasi entity types
Bertujuan untuk menentukan entity types utama yang dibutuhkan. Menentukan entity dapat dilakukan dengan memeriksa user’s requirement specification. Setelah terdefinisi, entity diberikan nama yang tepat dan jelas seperti mahasiswa, dosen, mata_kuliah.

b. Mengidentifikasikan relationship types
Bertujuan untuk mengidentifikasi suatu relationship yang penting yang ada antar entity yang telah diidentifikasi. Nama dari suatu relationship menggunakan kata kerja seperti mempelajari, memiliki mempunyai dan lain-lain.

c. Mengidentifikasi dan menghubungkan attribute dengan entity atau relationship types
Bertujuan untuk menghubungkan attribute dengan entity atau relationship yang tepat. Attribute yang dimiliki setiap entity atau relationship memiliki identitas atau karakteristik yang sesuai dengan memperhatikan attribute berikut : simple/composite attribute, single/multi-valued attribute dan derived attribute.

d. Menentukan attribute domain
Bertujuan untuk menentukan attribute domain pada conceptual data model. Contohnya yaitu menentukan nilai attribute jenis_kelamin pada entity mahasiswa dangan ‘M’ atau ‘F’ atau nilai attribute sks pada entity mata_kuliah dengan ‘1’, ’2’, ‘3’ dan ‘4’.

e. Menentukan candidate key dan primary key attributes
Bertujuan untuk mengidentifikasi candidate key pada setiap entity dan memilih primary key jika ada lebih dari satu candidate key. Pemilihan primary key didasari pada panjang dari attribute dan keunikan key di masa datang.

f. Mempertimbangkan penggunaan enhance modeling concepts (pilihan)
Pada langkah ini bertujuan untuk menentukan specialization, generalization, aggregation, composition. Dimana masing-masing pendekatan dapat dilakukan sesuai dengan kebutuhan yang ada.
Specialization dan generalization adalah proses dalam mengelompokan beberapa entity dan menghasilkan entity yang baru. Beda dari keduanya adalah cara prosesnya, dimana spesialisasi menggunakan proses top-down dan generalisasi menggunakan proses bottom-up.
Aggregation menggambarkan sebuah entity types dengan sebuah relationship types dimana suatu relasi hanya akan ada jika telah ada relationship lainnya.

g. Mengecek redundansi
Bertujuan untuk memeriksa conceptual model untuk menghindari dari adanya informasi yang redundan. Yang dilakukan pada langkah ini adalah :
· Memeriksa kembali one-to-one relationship.
Setelah entity diidentifikasikan maka kemungkinan ada dua entity yang mewakili satu objek. Untuk itu dua entity tersebut harus di-merger bersama. Dan jika primary key-nya berbeda maka harus dipilih salah satu dan lainnya dijadikan alternate key.
· Menghilangkan relasi yang redundansi.
Untuk menekan jumlah model data, maka relationship data yang redundan harus dihilangkan.

h. Memvalidasi conceptual model dengan transaksi.
Bertujuan untuk menjamin bahwa conceptual data model mendukung kebutuhan transaksi. Dengan menggunakan model yang telah divalidasi tersebut, dapat digunakan untuk melaksanakan operasi secara manual. Ada dua pendekatan yang mungkin untuk mejamin bahwa local conceptual data model mendukung kebutuhan transaksi yaitu :
· Mendeskripsikan transaksi
Memeriksa seluruh informasi (entities, relationship, dan attribute) yang diperlukan pada setiap transaksi yang disediakan oleh model dengan mendokumentasikan penggambaran dari tiap kebutuhan transaksi.
· Mengunakan transaksi pathways
Pendekatan kedua, untuk memvalidasi data model dengan keperluan transaksi yang melibatkan diagram yang mewakili pathways diambil dari tiap transaksi secara langsung yang terdapat pada E-R diagram menggambarkan komponen-komponen dari entity dan relasi yang masing-masing dilengkapi dengan attribute-attribute yang merepresentasikan seluruh fakta dari real-world yang kita tinjau (Fathansyah,1999,p79). Sedangkan menurut Silberschartz (2002,p42), E-R diagram dapat menyatakan keseluruhan struktur logical dari basis data dengan menggunakan bagan.

i. Melihat kembali conceptual data model dengan pengguna.

Bertujuan untuk melihat kembali conceptual model dan memastikan bahwa data model tersebut sudah benar.




info kampus:ubpkarawang.ac.id