Showing posts with label Pelajaran. Show all posts
Showing posts with label Pelajaran. Show all posts

Apa itu CDN ? berikut adalah penjelasan lengkapnya

8:46 PM Add Comment
Content Delivery Network


CDN (Content Delivery Network) adalah infrastruktur jaringan yang digunakan untuk mengirimkan konten digital ke pengguna di seluruh dunia dengan cepat dan efisien. Dalam artikel ini, kita akan membahas pengertian, fungsi, kelebihan, kekurangan, dan cara kerja dari CDN.


Pengertian CDN

CDN adalah infrastruktur jaringan yang terdiri dari server dan data center yang tersebar di seluruh dunia. Tujuan utama CDN adalah untuk mempercepat pengiriman konten digital seperti gambar, video, audio, dan teks ke pengguna di seluruh dunia dengan mengurangi jarak fisik antara server dan pengguna.


Fungsi CDN

Fungsi utama dari CDN adalah untuk mempercepat pengiriman konten digital ke pengguna di seluruh dunia. CDN bekerja dengan menempatkan konten digital di server yang tersebar di seluruh dunia. Ketika pengguna meminta konten digital, CDN akan mengirimkan konten dari server yang paling dekat dengan pengguna. Dengan cara ini, waktu respon menjadi lebih cepat, dan pengguna tidak perlu menunggu terlalu lama untuk memuat konten digital.

Baca juga Pengertian IoT dan contoh dalam kehidupan sehari - hari


Kelebihan dan kekurangan CDN

berikut adalah kelebihan dan kekurangan dari CDN :


1. Kelebihan CDN

Ada beberapa kelebihan menggunakan CDN, di antaranya:

  • Mempercepat waktu muat: CDN dapat mempercepat waktu muat halaman web dan konten digital lainnya dengan menempatkan konten di server terdekat dengan pengguna.
  • Menurunkan biaya bandwidth: Dengan menggunakan CDN, biaya bandwidth dapat diturunkan karena konten digital tidak perlu dikirim dari server pusat.
  • Mengurangi beban server: Dengan menggunakan CDN, beban server dapat dikurangi karena konten digital disajikan dari server CDN yang tersebar di seluruh dunia.
  • Meningkatkan keandalan: Dengan menggunakan CDN, konten digital dapat disajikan dari server CDN yang berbeda jika server CDN yang satu mengalami gangguan.


2. Kekurangan CDN

Meskipun CDN memiliki beberapa kelebihan, namun ada juga kekurangan yang perlu diperhatikan, di antaranya:

  • Biaya: Penggunaan CDN memerlukan biaya yang tidak murah karena pengguna harus membayar biaya sewa server dan biaya layanan CDN.
  • Masalah keamanan: CDN dapat menyebabkan masalah keamanan karena konten digital disimpan di server yang dikelola oleh pihak ketiga.
  • Kesulitan pengaturan: CDN dapat mengalami kesulitan pengaturan karena pengguna harus mengatur cache dan cache invalidation dengan benar agar tidak terjadi kesalahan.


Cara Kerja CDN

Cara kerja CDN adalah sebagai berikut:

  1. Pengguna meminta konten digital seperti halaman web, gambar, video, atau audio.
  2. Permintaan pengguna akan diarahkan ke server CDN terdekat.
  3. Server CDN akan mencari konten digital yang diminta di cache server.
  4. Jika konten digital ada di cache server, server CDN akan mengirimkan konten digital tersebut ke pengguna.
  5. Jika konten digital tidak ada di cache server, server CDN akan mengambil konten digital dari server pusat dan menyimpannya di cache server.
  6. Konten digital yang disimpan di cache server akan disajikan ke pengguna dari server.


Baca juga Fungsi dan cara kerja FTP


Kesimpulan

Dari pembahasan di atas, dapat disimpulkan bahwa CDN adalah infrastruktur jaringan yang digunakan untuk mempercepat pengiriman konten digital ke pengguna di seluruh dunia dengan mengurangi jarak fisik antara server dan pengguna. Dalam penggunaannya, CDN memiliki kelebihan dalam mempercepat waktu muat, menurunkan biaya bandwidth, mengurangi beban server, dan meningkatkan keandalan. Namun, CDN juga memiliki kekurangan seperti biaya yang tidak murah, masalah keamanan, dan kesulitan pengaturan.


Secara keseluruhan, CDN sangat berguna bagi pengembang web dan perusahaan yang ingin memberikan pengalaman terbaik bagi penggunanya dengan mempercepat waktu muat dan meningkatkan keandalan. Namun, sebelum memutuskan untuk menggunakan CDN, pengguna harus mempertimbangkan kelebihan dan kekurangan serta biaya yang terkait dengan penggunaan CDN.

Kumpulan Materi Kuliah Jurusan Teknik Informatika dan Ilmu Komputer

7:13 AM Add Comment
Kumpulan Materi Kuliah Jurusan Teknik Informatika dan Ilmu Komputer


Bagi temen-temen coders yang saat ini merupakan mahasiswa Teknik Informatika atau Ilmu Komputer tentu saja sudah sangat lumrah jika temen-temen sering kali belajar melalui internet, baik itu untuk sesuatu yang terkait langsung dengan kurikulum perkuliahan ataupun sebatas pengayaan untuk menambah wawasan seputar teknologi. Sewaktu saya kuliah dulu pun demikian. Bedanya mungkin zaman temen-temen saat ini jauh lebih mudah dalam menemukan materi belajar. Sudah banyak sekali web-web berbahasa Indonesia yang bisa membantu belajar, Waktu saya memulai kuliah dulu sekitar 7 tahun yang lalu, konten IT berbahasa Indonesia tidak seramai sekarang :D

Oleh karena itu dalam rangka memperkaya khazanah belajar buat temen-temen dalam belajar sebagai mahasiswa IT, pada kesempatan kali ini saya ingin membagikan "koleksi" Materi Kuliah Jurusan Teknik Informatika dan Ilmu Komputer yang selama kuliah saya telah kumpulkan sejak semester awal.

Sebenernya Materi Kuliah Jurusan Teknik Informatika dan Ilmu Komputer ini telah saya publikasikan di blog pribadi saya, namun saya merasa perlu untuk membagikannya di Newby agar jangkauan manfaatnya bisa tersebar lebih luas


Mungkin saja dalam materi kuliah yang saya bagikan ini ada beberapa hal yang sudah tidak releval lagi terhadap kurikulum dan perkembangan teknologi saat ini, untuk itu saya mohon maaf. Tapi saya rasa beberapa materi yang sifatnya fundamental dan basic itu pasti tidak akan banyak berubah.

Berikut ini Kumpulan Materi Kuliah Jurusan Teknik Informatika dan Ilmu Komputer, semoga bermnafaat terutama bagi teman-teman yang membutuhkan :D


Aljabar Linier
Matriks & Operasinya, Matriks Invers, Matriks-Matriks dengan Bentuk Khusus
Matriks dan Operasinya
SISTEM PERSAMAAN LINIER

  • Bab 1 Matriks
Analisa Perancangan SistemDasar-dasar UML
Analisa Perancangan Sistem Session 1
Analisa Perancangan Sistem Session 3
Analisa Perancangan Sistem Session 4
ANALISIS dan DESAIN SISTEM INFORMASI
Bagan Terstruktur (Structured Chart)
ENTITY RELATIONSHIP DIAGRAM
Diagram Entity-Relationship
KAMUS DATA
Pemodelan Sistem Perangkat Lunak
Pengenalan "Unified Modeling Language/UML" (Bagian I)
ANALISIS DAN DESAIN SISTEM INFORMASI bagian 1
ANALISIS DAN DESAIN SISTEM INFORMASI bagian 2
Perancangan Sistem Dengan Menggunakan UML


Analisa Sistem Informasi
Strukturisasi Kebutuhan Sistem : Pembuatan Model Logika
Strukturisasi Kebutuhan Sistem : Pembuatan Model Data Konseptual
PEMETAAN ER KE RELASIONAL

Arsitektur dan Organisasi Komputer
Arsitektur Sistem Komputer


Bahasa Rakitan
Pemrograman Bahasa Assembly


Data Warehouse
Pendahuluan Datamining
Modul dan Jurnal Praktek Data Mining


Teori Bahasa dan Automata
Materi Kuliah Teori Bahasa dan Otomata
TEORI BAHASA DAN AUTOMATA
TEORI BAHASA DAN OTOMATA
TEORI BAHASA DAN AUTOMATA
Deterministic Finite State Automata dan Non Deterministic Finite Automata
Penggabungan 2 Finite State Automata
Bentuk Normal Greibach


E-Commerce
Chapter 1 - Overview of Electronic Commerce
Chapter 2 - E-Marketplaces
Chapter 3 - Retailing in Electronic Commerce
Chapter 4 - Consumer Behavior, Market Research, and Advertisement
Chapter 5 - B2B E-Commerce
Chapter 6 - B2B Exchanges, Directories, and Other Support Services
Chapter 8 - Innovative EC Systems
Chapter 10 - Dynamic Trading: E-Auctions, Bartering, and Negotiations
E-Commerce: Konsep & Definisi


Etika Profesi
CYBER CRIME
CYBER ETHICS
Kejahatan KOMPUTER
TERMINOLOGI ETIKA
CIRI-CIRI PROFESI
PROFESI DI BIDANG TI

Interaksi Manusia dan Komputer
Tata Letak Menu & Formulir Isian
Terminologi Interaksi Manusia & Komputer


Jaringan Komputer
Komunikasi Data dan Jaringan Komputer


Kalkulus
Sistem Bilangan Riil
Fungsi
Limit dan Kekontinuan
Turunan
Aplikasi Turunan
Integral
Integral Tak Wajar
Teknik Pengintegralan
Fungsi Transenden
Aplikasi Integral

Keamanan Sistem dan Data
Keamanan Sistem dan Data


Konsep Sistem Informasi
Sistem Informasi Berbasis Komputer
Personil Pengembangan Sistem Informasi
Peranan Sistem Informasi
Konsep Dasar Sistem Informasi
Sistem Informasi dalam Organisasi
Konsep Sistem Informasi Korporasi
Konsep Dasar Sistem


Logika Informatika
Logika Informatika


Manajemen Proyek
Software Engineering: A Practitioner's Approach, 6/e
Process and Project Metrics
Estimation for Software Projects
Project Scheduling and Tracking


Manajemen Saint
Metode Transportasi/e

Apa Yang di pelajari di Teknik Informatika?

6:56 AM Add Comment
Teknik Informatika


Belum lama ini, ada salah satu thread di kaskus dengan judul yang cukup menarik tentang informatika. Judulnya adalah “kuliah jurusan komputer, maaf anda salah pilih“.  Inti tulisan itu adalah banyak lulusan komputer yang tidak bisa memprogram, bahkan kadang kalah dengan yang belajar otodidak. Keluhan lain di artikel itu adalah bahwa banyak lulusan IT yang tidak siap kerja. Si penulis artikel itu sendiri adalah orang yang belajar komputer secara otodidak yang akhirnya sukses menjadi programmer ahli walaupun tidak pernah mengenyam kuliah IT.

Dari artikel diatas, banyak yang pro dan kontra, sebagian lagi justru tambah galau terutama yang merasa salah jurusan di IT atau anak Sekolah yang ingin melanjutkan kuliah diperguruan tinggi. Saya baru menyadari kekuatan sebuah tulisan ternyata bisa mempengaruhi bahkan meracuni pikiran pembacanya. Dulu, saya juga pernah menulis artikel “mengapa sebaiknya anda tidak jadi programmer”, namun di artikel itu saya jelaskan kalau isinya hanya joke dan hiburan, walaupun tentu ada benarnya. Ternyata artikel bernada joke aja menimbulkan pro dan kontra, apalagi artikel diatas.

Artikel ini saya beri judul “apa yang dipelajari di jurusan TI” agar pembaca tahu bedanya belajar otodidak, belajar di tempat kursus dan belajar di kuliah. Dulu.  waktu saya mau masuk kuliahpun paman saya bilang ” Komputer bisa dipelajari sendiri/kursus, mending kamu masuk keguruan biar jadi guru (baca :PNS).” Namun, mengutip kata temen saya Ilham:” Jika memang komputer bisa dipelajari secara otodidak, kenapa masih ada jurusan komputer dari D3, S1,S2 bahkan S3?”. Pasti ada yang tidak bisa dipelajari sendiri disana.


Dalam artikel ini, saya akan meluruskan artikel kaskus diatas sehingga para pembaca tidak langsung panik atau merasa salah jurusan atau terbesit pikiran “Kalau komputer bisa dipelajari secara otodidak”. Yang perlu diperhatikan adalah “ilmu” cara memakai komputer  tidak sama dengan ilmu Komputer itu sendiri.  Untuk itu, saya akan bagi materi komputer menjadi 3 bagian yaitu materi Komputer literacy, materi kursus komputer dan materi di jurusan Teknik Informatika.

sebelum lebih jauh, kata ilmu komputer dan teknik informatika akan saya pakai secara bergantian untuk mengacu pada pembahasan yang sama. Jika dibahas lebih jauh, Teknik informatika dan ilmu komputer itu ada perbedaannya tapi untuk perkara ini tidak akan saya bahas panjang lebar.

materi komputer literacy

Komputer saat ini bukanlah barang mewah dan orang yang memakai komputer punt idak perlu harus kuliah atau kursus. Ilmu ilmu seperti bagaimana cara akses internet, cara memakai microsoft word dan cara Chat di Yahoo bukanlah ilmu komputer. Saya menyebut ilmu ini adalah “komputer literacy”. Di abad 21 ini, komputer literacy sama saja dengan “kemampuan membaca” di abad 20. Jadi memang sudah seharusnya setiap orang bisa memakai komputer, sama halnya setiap orang bisa membaca atau bisa naik motor.

Jika anda tidak kuliah atau anda kuliah di jurusan selain komputer, maka ilmu ilmu ini , termasuk berbagai macam buku yang bertebaran di toko buku itu bukan ilmu komputer. Catat sekali lagi, bukan Ilmu komputer, tapi lebih tepat disebut “ILmu cara memakai komputer”.  Ilmu ini bisa dipelajari sendiri secara otodidak atau ditempat kursus bagi yang benar benar awam.

materi kursus komputer

Materi kursus komputer, biasanya fokus ke satu skill, misalkan pemrograman visual basic, jaringan komputer atau desain grafis. Ilmu ini juga bisa dipelajari sendiri sebenarnya asal anda mempunyai kemampuan logika yang kuat. Materi kursus ini juga diajarkan di kuliah IT, tapi apa bedanya? Perbedaan mendasar adalah kursus hanya fokus pada “TODO” “Next” , “Habis ini, klik itu” . Lihat penekannya ada pada praktik. Orang yang kurus itu tidak memahami secara mendalam tentang apa itu variabel, mengapa ada integer ada float. Apa itu overflow, stack atau heap, itu semua tidak anda pelajari di kursus. Maka kekurangan paling nampak dari orang yang hanya kursus, dia mengetahui ilmu itu hanya dari satu sudut pandang. Efek sampingnya, dia akan kesulitan ketika diberi kasus yang berbeda atau disuruh membuat program dengan bahasa yang berbeda.



Kursus sangat cocok untuk orang yang mengejar ” cara cepat bisa Aplikasi FOO” secara “Mie instant”. Artinya anda memang bisa memahami ilmu itu, tapi tidak mendalam. Sekali lagi tidak mendalam. Kekurangna lain dari kursus adalah materi yang bersifat praktis, tidak terurut dan tidak mementingkan konsep.

Materi di Jurusan Teknik informatika

Jurusan teknik informatika, mempelajari ilmu yang bersifat teknik dan mendasar. Sebagai contoh Perancangan prosesor, Rancangan sistem operasi, Sistem berkas, compiler desain, computer vision Semantic Web  serta topik lain secara mendalam dan terurut. Bagi yang merasa tidak perlu kuliah dan mampu belajar sendiri silahkan baca buku -buku berikut:

Advanced Compiler design oleh  Steven S mucnick
Digital Design and Computer Architecture oleh David haris
Computer Vision: Models, Learning, and Inference by Dr Simon
Artifical intelegence:Modern aproach by  Stuart Russell dan peter norvig
dan ratusan topik Komputer lain
Jika anda  tanpa kuliah, hanya belajar otodidak  bisa memahami buku buku diatas, anda bisa paham, maka saya sepakat dengan anda bahwa kuliah TI itu tidak perlu, nyatanya, baru baca judulnya aja sudah mabok kan? .  Yang perlu anda tahu, Hanya karena anda bisa belajar hacking dan coding otodidak bukan berarti anda sudah menguasai ilmu komputer. Ilmu hacking dan programming itu hanya kurang dari 10% dari ilmu komputer yang sebenarnya. ini yang perlu ditanamkan dan dipahami. Jika anda ingin tahu luasnya ilmu komputer, silahkan buka http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/

Link diatas adalah link kuliah  gratis tentang ilmu komputer dari MIT, salah satu universitas terbaik didunia. Jika anda paham 10% saja dari yang dibahas, saya bisa sepakat dengan anda bahwa kuliah komputer/IT itu tidak perlu.

Link tambahan jika anda penasaran tentang materi ilmu komputer /teknik informatika :

http://en.wikipedia.org/wiki/Outline_of_computer_science


Tapi, Ilmu (kuliah)   tidak dipakai di dunia kerja?

jawabanya, pasti dipakai baik langsung ataupun tidak langsung. Banyak mahasiswa yang lulus dan sukses jadi programer atau ahli security akan merendahkan kampusnya sendiri dan sombong dengan mengatakan :” saya tahu seperti ini belajar sendiri kok, ilmu dikampus teori semua”. Termasuk saya dulu juga berpikir seperti itu. Tapi coba kita telisik lebih jauh,  Orang yang jago jadi programmer, waku kuliah, dari mana anda diperkenalkan konsep algoritma? yang udah jago Oracle dan jadi sysadmin , siapa yang mengenalkan konsep database? Yang sudah ahli di jaringan, Siapa yang amengajarkan ilmu TCP/IP dan osi?

Sekarang mari kita lihat ilmu kuliah yang paling abstract bagi para mahasiswa TI semester awal. Ilmu itu bernama “Struktur data”. Ilmu ini seakan akan tidak pernah dipakai, padahal hampir semua program yang dipakai dikomputernya memakai teori “struktur data” . Kita lihat contoh realnya “:Saat anda membuka excel, apa konsep penting di struktur data  yang dipakai, jawabanya :”Array dan Matrix”.  Saat kita membuka Windows explorer, apa structur data yang dipakai?” Jawabannya :”TREE”. Saat kita memakai Google map untuk mencari jalur perjalanan , apa teori yang dipakai :” GRAPH”.   Ilmu ilmu itu tidak akan pernah diajarkan di kursus, ilmu itu hanya diajarkan di kampus. Sayangnya, dosen yang mengajarkan materi ini juga jarang yang memberi contoh real sehingga seakan akan tidak bermanfaat.


Janganlah kita sombong merasa ilmu kuliah  idak diperlukan, rasa rasanya , dosen dosen itu tidak memberi manfaat apapun, padahal tanpa mereka mahasiswa yang katanya belajar otodidak  tidak akan behasil, berkat kuliah dari dosen itulah ilmu pondasi kita menjadi matang, itu yang jarang di disadari mahasiswa atau alumni.

Kalau anda kerjanya jadi tukang ketik ya jelas ilmu komputer tidak dipakai. Bayangkan anda membangun sistem yang besar misalkan Bank, Sistem kendali pabrik, menjadi peneliti, membuat robot dan sebagainya maka saya jamin 100% ilmu teori yang dulu didapat pasti dipakai.

Lulusan TI merasa tidak perlu ilmu TI ketika sudah lulus karena apa? ya karena mereka kerja diluar jalur, misal jadi teller bank, jadi juru ketik atau jadi petugas entri data bahkan ada yang banting setir dibidang yang sama sekali tidak berhubungan dengan komputer.

Ga kuliah/drop out kuliah  komputer, juga bisa sukses?

ini adalah pola pikir yang perlu dibrantas, untuk jelasnya silahkan baca artikel “Drop out kuliah lalu sukses, yakin lo?” . Inti dari tulisan itu, orang yang sering dijadikan contoh dropout lalu sukses seperti bill gate itu bukan Orang bodoh bro.Sayangnya buku buku tentang drop out sukses itu menakankan pada DROP OUT nya, bukan pada ALASAN dibalik drop out . Si bill gate ini  otaknya kelewat jenius, dia bisa membuat Bahasa pemrograman, sekali lagi CATET MEMBUAT BAHASA PEMROGRAMAN  Basic yang dia jual bahkan sebelum lulus kuliah. Karena bisnis menjual bahasa pemrograman cukup sukses, akhirnya dia memutuskan untuk dropout. Sama juga dengan Mark zukerberg, steve job dan lainnya.

Pola pikir drop out bisa sukses itu harus dibuang jauh jauh bro. Hanya karena beberapa orang sukses saat drop out, bukan berarti tanpa sekolah/kuliah kamu juga bisa mengalami sukses yang sama. Contoh bodohnya , jika di lamaran pekerjaan di butuhkan S1 teknik informatika, tapi anda Drop out, apa anda bisa melamar di lowongan itu? Jelas tidak! Sekali lagi, jangan cuman baca buku motivasi yang cuma menjual mimpi kosong.

Ingin Ahli IT?  Hindari buku ” 10 jam mahir belajar FOO!”.

Peter Norvig, direktur penelitian di Google menulis artikel dengan judul “Teach Yourself Programming in Ten Years” yang merupakan bentuk kekesalannya karena banyakny buku dengan judul “Teach your selft bla bla bla in 10 hours” atau kalau di indonesiakan menjadi ” Mahir ilmu FOO dalam 10 jam” atau judul sejenis. Tentunya kata FOO(L)  bisa anda ganti sendiri dengan topik topik komputer yang seakan akan gampang.  Topik sejenis adalah “FOO(L) for dummies”. Buku inilah yang membuat seakan akan ilmu komputer itu ilmu yang cetek, semuanya bisa belajar dan bisa ditempuh dalam hitungan hari. Pemikirin paling TOLOL yang pernah saya baca sejauh ini.”



Buku buku diatas adalah buku sampah karena menggampangkan perkara yang tidak gampang. Ambilah contoh :” Menjadi hacker dalam waktu 3 hari” atau ” Mahir pemrograman visual basic dalam waktu 10 jam”. Apa yang bisa kita dapat dari 10 jam belajar ilmu pemrograman. Paling paling anda tahu syntax bahasa pemrograman, copas code dan runing code.

Sekarang, bagaimana orang orang model belagu yang mengatakan bisa belajar komputer secara otodidak disuruh buat seperti ini:


bagi yang belajar otodidak, paham ga dengan perintah si anjing hackles?
” Buatlahlah kelas abstract untuk penyimpanan dan pencarian object serial dengan teknik self adjusing binary tree!”


Saya yakin dia tidak tahu sama sekali apa yang diperintahkan, coba perintah diatas berikan ke programer otodidak, paham ga? Ilmu seperti diatas hanya bisa dipelajari di kuliah, banyak materi dasar yang harus dikuasai sebelum menjadi “Real programer”, bukan programer kopas.  Untuk memahami perintah diatas saja kita minimal harus memahami OOAD (object oreinted analitic and desain),  OOP (object oriented programing) , Algoritma pemrograman,struktur data dan  bahasa pemrograman java.

Sekdar tambahan, Seorang disebut ahli kalau sudah berkecimpung dibidangnya minimal 10 tahun, jadi kalau baru lulus dan baru 2 tahun bekerja, itu masih “Junior level”, kalau sudah mencapai “4-5tahun” Masuk level” Senior level” dan kalau diatas 10 tahun baru disebut “expert”.


Kesimpulan

Jika anda ingin tahu cara memakai komputer dan internet, cukup beli buku “cara memakai komputer” dan anda bisa belajar otodidak. Jika anda ingin mengerti atau menguasai skill tertentu di bidang komputer (semisal jaringan atau desain) cukup kursus. Namun jika anda ingin benar benar mengerti dunia komputer dan ilmu komputer luar dalam sampai ke akar akarnya , tidak ada jalan lain selain Kuliah komputer. Dari sini, andalah yang paling tahu kebutuhan anda.

Mengatakan belajar ilmu komputer bisa dengan otodidak sama saja anda mengatakan bisa membangun gedung pencakar langit hanya dengan membaca buku arsitektur . Sama juga anda mengatakan, anda bisa jadi dokter spesialis hanya dengan otodidak dan membaca buku ilmu kedokteran”.

Satu lagi, hanya karena anda bisa membuat aplikasi Hotel yang dipakai diberbagai hotel, bukan berarti anda sudah mungasai ilmu komputer. Anda baru menguasai secuil ilmu komputer bernama “SISTEM INFORMASI”  jelas kan sekarang?

Sebagai penutup, kuasailah Logika/Matematika dan Bahasa inggris karena dua hal ini yang menjadi basis keilmuan dari Teknik Informatika, Jika anda ingin fokus ke embeded sistem maka kuasai juga fisika terutama masalah listrik dan elektronik.

Jika anda Ingin melihat Daftar Matakuliah Jurusan Teknik Informatika dan Penjelasannya anda bisa melanjutkan membaca Artikel dengan Judul “Mengenal Mata Kuliah Jurusan Teknik Informatika” Semoga Bermanfaat!


Mengatasi Masalah Tidak bisa SSH ke mesin JBOSS AS 7 Openshift

1:19 AM Add Comment
Openshift adalah salah satu platform cloud computing dari redhat. Saat ini masi tersedia layanan free 1 Giga byte untuk satu server. Anda bisa buat akun anda disitu, pilih jenis aplikasi anda, apakah java, php, nodejs atau yang lainnya.

Ok, kita langsung saja pada inti masalah:

Pada suatu hari, saya tidak bisa ssh ke mesin aplikasi di openshift, ketika aplikasi sedang running. Padahal sebelumnya baik-baik saja saat kita melakukan deploy component jboss.

Menurut mbah google, ternyata jika gear is out of threads, it blocks ssh access... atau dengan kata lain, gear ternyata bekerja keras sehingga melakukan block ssh access.

Step Troubleshot :

Sebelumnya pastikan rhc sudah ter install di computer anda.

1. Matikan secara paksa aplikasi anda dengan command berikut:
rhc app force-stop webdev
(webdev adalah nama aplikasi kita di openshift) 

2. Setelah aplikasi anda sudah mati, lakukan ssh. Pasti bisa masuk. lalu jalankan kembali aplikasi anda...


hufff....slmat...akhirnya bisa masuk ke aplikasi dan bisa liat log di dalam.

terima kasih mbah google. Jadi intinya, agar kita bisa ssh ke server, matikan dulu semua aplikasi yang kita create di openshift. 

Berikut ini adalah cara untuk restart gear:

Lakukan stop gear:

rhc cartridge stop mongodb-2.4 -a jbossas

Setelah itu lakukan start gear:

rhc cartridge start mongodb-2.4 -a jbossas

jbossas adalah nama aplikasi kita di openshift.


Jika kita membuat server free di openshift, maka kita hanya mendapatkan volume storage sebesar 1 Gb.  Jadi kita harus sering melakukan pengecekan quota yang masi available.  

to check is also how much disk space you are using on the gear du -ks ~/

untuk check quota gears apakah sudah habis atau masih banyak yang free:

rhc app-show --gears quota

sekian..... Terima kasih sudah membaca artikel ini, semoga bermanfaat. 

Cara export keyfilename.keytool (atau dot jks) ke private key (dot pem)

12:45 AM Add Comment
Cara export keyfilename.keytool (atau dot jks) ke private key (dot pem)

 

Kasusnya adalah anda hanya punya file dot keytool atau file dot jks, kemudian dari file tersebut anda ingin membuat file certificate dan file private key atau dot pem. Ikuti langkah-langkah berikut:
  1. Salin dari format JKS ke format PKCS12:

    keytool -importkeystore -srckeystore mykeystore.jks -destkeystore mykeystore.p12 -deststoretype PKCS12
    openssl pkcs12 -in mykeystore.p12 -nokeys -out cert.crt



  2. Export certificate dari format PKCS12. Hasilnya adalah file cert.crt:

    openssl pkcs12 -in mykeystore.p12 -nokeys -out cert.crt


  3. Export unencrypted private key dari file dot p12 atau format PKCS12. Hasilnya adalah file privatekey.pem:
    $ openssl pkcs12 -in mykeystore.p12  -nodes -nocerts -out privatekey.pem
Selain dengan cara di atas, yaitu cara menggunakan openssl, bisa juga menggunakan software keytool. Untuk melihat public key dari file privatekey.pem:
$ openssl x509 -in privatekey.pem -text -noout

Setting SSH Tunneling dari Mac atau Linux

12:36 AM Add Comment
Setting SSH Tunneling dari Mac atau Linux


Kita menggunakan koneksi ssh tunnel ke suatu mesin jika mesin tersebut hanya boleh menerima paket data dari ip dan port tertentu saja.

Contoh case nya, kita akan mengirimkan paket data ke mesin A (192.168.10.254:1521) dan mesin C (192.168.10.253:1521) melalui mesin B (192.168.20.254), dimana user dan password untuk mesin B adalah b_user dan b_password. Mesin A dan C adalah server database oracle, jadi biasanya menggunakan port 1521.

Berikut ini adalah cara konfigurasi ssh tunnel dari kasus di atas dari operating sistem mac atau linux.

1. buka terminal, ketik sudo vi .ssh/config
2. copy paste script berikut:

Host mesindevelopmentku
   User b_user
   HostName 192.168.20.254
   ForwardX11 yes
   # host database pertama. mesin A
   LocalForward 9002 192.168.10.254:1521
   # host database kedua. mesin C
   LocalForward 9001 192.168.10.253:1521

3. save script di atas dengan command, :wq!
4. ketik ssh mesindevelopmentku lalu tekan enter.
5. Masukkan password mesin B tadi: b_password
6. Anda telah berhasil masuk di mesin B. Terminal yang anda gunakan untuk masuk ke mesin B, jangan ditutup. ketik top lalu tekan enter.
7. Sekarang anda sudah bisa melakukan koneksi ke mesin A dan C melalui port 9002 untuk mesin A dan melalui port 9001 untuk mesin C.


Jika anda akan masuk ke mesin A dan C yang mana mesin ini adalah server database oracle, hostname nya menggunakan localhost dan port nya 9001 atau 9002

Sekian.

Terima kash sudah membaca tutorial ini.

SSH via internet ke private network yang terlindung proxy

12:32 AM Add Comment
Case nya adalah anda ingin melihat log aplikasi di private server yang koneksi nya harus lewat proxy.
Teman anda yang ada di kantor client diberi akses lewat wifi internal dan harus konek pakai proxy yang telah ditentukan.
Anda berada di kantor HQ ingin melihat log tadi langsung dari server client. Berikut ini adalah gambar ilustrasi network arsitektur nya.

SSH via internet ke private network yang terlindung proxy

Dari gambar di atas, berikut adalah cara yang saya pakai untuk masuk ke server tadi melalui jalur internet.


1. dari MACBOOK A, ketik command: "sudo route -n add -net CLOUD_IP MODEM_IP" kalau pakai linux: "sudo route add CLOUD_IP gw MODEM_IP" gunanya adalah untuk mengarahkan paket data dari ip local ke ip tujuan (CLOUD_IP) melalui ip internet gateway modem (MODEM_IP)
2. dari MACBOOK A, ketik command: "ssh -R 19999:localhost:22 clouduser@CLOUD_IP" gunannya adalah membuat koneksi ssh tunneling dari macbook A ke cloud server. Jangan di close terminal sehingga koneksi tetap terjalin.
3. dari MACBOOK B, ketik command: "ssh clouduser@CLOUD_IP"
4. sekarang MACBOOK B dan cloud server telah terhubung. selanjutnya dari dalam cloud server, lakukan ssh ke macbook A. ketik: "ssh macbook_a_user@localhost -p 19999"
5. sekarang MACBOOK B telah terhubung ke MACBOOK A. selanjutnya anda sudah bisa masuk ke private server client anda melalui proxy.

Jika anda ingin melihat table route ketik command: netstat -nr

Sekian tutorial kali ini. semoga bermanfaat.

Perbedaaan Restart, Sleep, Hibernate dan Shutdown Pada Komputer

2:20 AM Add Comment
Perbedaaan Restart, Sleep, Hibernate dan Shutdown Pada Komputer

Mungkin bagi kita sudah tidak asing lagi, mendengar istilah - istilah restart, sleep, hibernate, dan shutdown. Tetapi apasih sebenarnya istilah-istilah tersebut ?

Sebagian dari kita mungkin sudah memahami fungsi Opsi opsi tersebut. semisal Shutdown untuk mematikan komputer secara total, Sleep untuk menonaktifkan komputer tetapi tidak secara total alias tidur, dan Restart untuk menjalankan ulang Sistem dari awal apabila Desktop terjadi masalah seperti Hang atau Sistem tidak berjalan dengan normal, atau permasalahan yang lainnya.

Sementara mungkin opsi Hibernate bagi sebagian orang dari kita masih sedikit asing. Karena Opsi ini tidak muncul pada Menu bawaan atau default Pabrik. Biasanya hibernate ini hanya muncul pada Laptop. Jika hibernate tidak ada pada laptop anda ada pengaturan khusus agar Opsi menu Hibernate muncul dan dapat digunakan.

Pernahkah terlintas dalam pikiran anda, mengenai opsi menu power ini. Dari cara kerjanya, fungsi sebenarnya, kelebihan atau kekurangan, dan kapan waktu yang tepat untuk menggunakan opsi ini?

Nah di artikel kali ini mari kita bahas satu-persatu mengenai macam-macam Opsi Menu Power yang terdapat Pada komputer, yang bisa dijadikan untuk menambah wawasan, agar kita tidak salah dalam penggunaannya.

Baca juga Apa itu Sistem Operasi ?

Penjelasan 

1. Shutdown

Shutdown adalah perintah yang berfungsi untuk mematikan komputer secara total. Dengan perintah shutdown Komputer akan benar berhenti secara total. Mulai dari sistem yang sedang berjalan akan dihentikan, aliran listrik akan dihentikan dan semua data-data akan disimpan pada media penyimpanan (storage device). Komputer akan benar-benar Off, tidak ada lagi aktivitas.

Kelebihan: Komputer dapat beristirahat secara total, dengan begitu dapat memperpanjang umur hardware agar tidak cepat rusak.

Kekurangan: harus menjalankan dari awal lagi jika ingin menggunakan Komputer kembali. Selain itu Data yang tidak di simpan atau lupa disimpan akan hilang, seperti data yang diolah dengan Microsoft Word, Photoshop, dll.


2. Sleep

Sleep atau dalam arti indonesia adalah tiru. Maka dengan kata lain Sleep merupakan perintah yang membuat komputer tertidur sementara. 

Komputer yang di Sleep, akan dalam keadaan setengah istirahat atau tidur . Semua komponen dalam keadaan mati kecuali RAM, Karena  RAM  akan tetap dialiri listrik dan bekerja.

Semua data-data yang dijalankan sebelumnya akan disimpan/save sementara kedalam RAM. Karena RAM tidak akan bekerja bila tidak dialiri listrik. Oleh sebah itu untuk opsi Sleep, RAM masih mendapatkan pasokan  aliran listrik.

Baca juga Apa itu partisi pada Harddisk

Data-data yang disimpan dalam RAM akan langsung ditampilkan ketika User kembali menggunakan Komputernya. Sehingga komputer tidak akan Booting dari awal.

Kelebihan: Proses yang cepat dalam menghidupkan Komputer kembali, cukup dengan mengeser mouse atau menekan sembarang tombol Keyboard. Maka sistem yang berjalan sebelumnya langsung ditampilkan, Misal terakhir kita membuka Photoshop, maka aplikasi tersebut akan langsung ditampilkan tanpa harus membuka dari awal, termasuk Projek terakhir juga tidak hilang meskipun belum disimpan/Save.

Kekurangan: Komputer tidak bisa beristirahat secara total khususnya RAM, kareina masih membutuhkan aliran listrik meskipun itu relatif kecil. Kemungkinana RAM bisa cepat rusak, karena dalam Opsi Sleep ini RAM masih berjalan, jika setiap hari Komputer anda hanya di Sleep, artinya RAM dalam komputer anda berkerja setiap hari.


3. Restart

Restart adalah perintah yang berfungsi untuk menjalankan ulang Sistem komputer. Sistem yang sebelumnya sedang berjalan akan dihentikan terlebih dahulu semua dan akan kembali dijalankan dari awal, dengan cara memutus aliran listrik sementara.

Perintah restart ini biasa digunakan jika Sistem Komputer terdapat masalah atau yang sering terjadi ketika  Aplikasi Not Responding.

Karena Sistem Komputer ini terdiri dari banyak File atau  Data yang dijalankan secara bersamaan, apabila terdapat salah satu Data yang gagal dijalankan maka kemungkinan akan berdampak ke semuanya, sistem tidak akan dapat bekerja dengan semestinya. Itulah yang kadang menyebabkan Komputer harus di Restart.

Dengan melakukan Restart Komputer diharapkan Sistem dapat kembali berfungsi sebagai mana mestinya, karena file atau data yang gagal dijalankan akan dijalankan ulang.

Baca juga Apa itu malcodes ?

Tetapi  apabila masalah yang disebabkan karena salah satu File atau data yang hilang karena Virus atau semacamnya, kemungkinan Opsi Restart tidak akan begitu berpengaruh.   

Kelebihan: Dapat memperbaiki Sistem yang tidak dapat berjalan atau bekerja dengan semestinya, akibat ada File atau Data yang gagal dijalankan.

Kekurangan: Karena restart artinya memulai dari awal. Anda  harus menunggu proses Booting, apalagi jika anda masih menggunakan media penyimpanan seperti Harddisk yang tipe HDD, maka akan menunggu cukup lama. 

 

4. Hibernate

Hibernate merupakan perintah yang membuat Komputer untuk beristirahat secara total (tidak ada komponen yang dialiri listrik), namun apabila Komputer dihidupkan kembali , tidak perlu menjalankan Sistem dari awal lagi.

Hibernate bisa dikatakan adalah gabungan antara Shutdown dan Sleep. Komputer dalam keadaan istirahat secara total, tidak ada perangkat yang dialiri listrik (seperti hanya  Shutdown). Namun saat menghidupkan kembali komputer anda tidak harus mengulangi dari awal lagi (seperti di Sleep).

Baca juga Penjadwalan proses dalam sistem Operasi

Itu dikarenakan Data-data Sistem yang sebelumnya dijalankan akan disimpan terlebih dahulu sementara kedalam Harddisk. Sehingga apabila Komputer dinyalakan kembali, maka akan langsung ditampilkan.

Kelebihan: Komputer dapat beristirahat secara total seperti hanya Shutdown dan tidak perlu kembali menjalankan Sistem dari awal, sama seperti hanya Sleep.

Kekurangan:Dengan opsi Hibernate ini membutuhkan ruang penyimpanan atau Harddisk yang cukup besar untuk menyimpan data sementara, dapat ber GB-GB. Jadi pastikan ketika anda menggunakan opsi hiberni ini Partisi Sistem  (C) anda masih memiliki banyak ruang yang kosong.

Itulah perbedaan Perbedaaan Restart, Sleep, Hibernate dan Shutdown Pada Komputer. Semoga artikel ini bermanfaat dan bisa menambah ilmu dan wawasan anda.

Terimakasih, sampai jumpa diartikel yang lainnya.


RANGKUMAN SOFTWARE REQUIREMENT

6:25 PM Add Comment

 Kali ini kita akan membahas tentang apa itu software requirement. Sebelum membahas mengenai software requirement alangkah lebih banyaknya kita memahami apa itu software. Software adalah program komputer, prosedur, dokumentasi dan data berkaitan untuk mengoperasikan sistem komputer. untuk lebih lengkap pengertian software bisa dibaca disini.

Sekarang apa itu requirement ?

Requirement (persyaratan) mencerminkan kebutuhan customer untuk sistem yang memiliki tujuan tertentu, seperti mengendalikan perangkat, menempatkan pesanan atau mencari informasi.

Requirements Engineering (RE) merupakan proces menemukan, menganalisa, mendokumentasikan, memeriksa layanan dan batasannya.

Requirement berisi pernyataan abstrak layanan sistem yang harus tersedia atau batasan sistem. 

Baca juga Pengertian dan contoh Rekayasa Perangkat Lunak

Jenis-jenis informasi requirement

Hubungan antara Beberapa Jenis Requirement Informasi

  • Business Requirement : tujuan tingkat tinggi bisnis organisasi yang membangun produk atau yang customer peroleh.
  • Business Rules : kebijakan, pedoman, standar atau regulasi yang membatasi beberapa aspek bisnis.
  • Constraint : batasan yang dikenakan dalam pilihan yang tersedia bagi pengembang untuk mendesain dan mengkonstruksi produk.
  • Eksternal Interface Requirement : Gambaran hubungan antara sistem software dan user, sistem software lainnya  atau perangkat hardware
  • Feature : merupakan satu atau lebih kapabilitas sistem yang menyediakan nilai bagi pengguna dan dijelaskan oleh suatu set functional requirement.
  • Functional Requirement : Gambaran perilaku sistem yang akan ditampilkan dalam kondisi tertentu.
  • NonFunctional Requirement : Gambaran properti atau karakteristik sistem yang harus ditampilkan atau batasan yang harus dipatuhi.
  • Quality Attribute : adalah jenis dari non-Functional Requirement yang menggambarkan layanan atau karakteristik performance produk
  • User Requirement : adalah tujuan atau tugas spesifik pengguna yang mampu dilakukan dengan sistem atau atribut produk yang diharapkan.
  • System Requirements : merupakan penjelasan dari apa yang sistem harus lakukan, layanan yang tersedia dan batas operasinya. System Requirement : requirement produk level atas yang berisi beberapa subsistem, bisa jadi seluruh software atau software dan hardware.


Dokumen SRS

SRS merupakan dokumen analis bisnis kebutuhan fungsional, menggambarkan keseluruhan perilaku penting yang diharapkan dari sistem software.

SRS digunakan dalam pengembangan, pengujian, jaminan kualitas, manajemen proyek dan yang berhubungan dengan pekerjaan proyek

SRS memiliki standar berdasarkan ISO/IEC/IEEE/2011.SRS mencakup dokumen business requirements, functional spesification, requirement documentdan lainnya.

Baca juga Manajemen pemartisian statis dan dinamis

Klasifikasi Software System Requirements


Functional requirements, (dinyatakan secara eksplisit apa yang dilakukan sistem) 

  • pernyataan layanan sistem yang tersedia
  • bagaimana sistem bereaksi terhadap input tertentu
  • bagaimana kelakuan sistem dalam situasi tertentu
  • Spesifikasi sistem functional requirements harus lengkap (seluruh layanan yang dibutuhkan oleh user didefinisikan) dan konsisten (definisi requirements tidak berlawanan). – praktisnya sulit untuk mencapai requirements lengkap dan konsisten 
Contoh functional requirements

  • Software secara otomatis memvalidasi customer berdasarkan Contact Management System
  • Sistem penjualan harus mengijinkan user untuk merekam transaksi penjualan
  • Warna latar belakang seluruh aplikasi window berwarna biru dengan hexadecimal RGB 0x0000FF.
  • Hanya karyawan level manager yang memiliki hak untuk melihat data keuntungan.
  • Sistem software harus terintegrasi dengan API bank

Non-functional requirements, (berlaku untuk keselurhan sistem)

  • Batasan layanan atau fungsi yang ditawarkan sistem. Mencakup batas pemilihan waktu, batas pengembangan proses dan batas yang dikenakan oleh standar
  • Misalnya reliability, respon time, security, performance
  • kapabilitas I/O devices, merupakan data representation yang digunakan dalam antar muka (interface) dengan sistem lain

Contoh non-functional requirements

  • Para pengguna haru merubah password  setelah berhasil melakukan login pertama kali, password awal, dan password awal tidak dapat dipergunakan lagi.
  • Para karyawan tidak diijinkan untuk mengupdate informasi gaji. Jika ada yang melakukan update, akan dilaporkan ke security administrator.
  • Setiap upaya kegagalan akses user akan direkam pada audit trail.
  • Website harus memiliki kemampuan untuk menangani 20 juta pengguna yang berdampak pada kinerja website
  • Software harus bersifat portable, dapat berpindah dari satu OS ke OS yang lain tanpa masalah.
  • Informasi yang bersifat rahasia, data yang di export secara terbatas, memiliki intellectual property rights, harus diperiksa

Memodelkan Requirement

Terdapat beberapa cara untuk memodelkan requirement, tentu diagram - diagram tersebut diseseauikan dengan kebutuhan, berikut cara memodelkan requirement :

  1. Data Flow Diagrams (DFDs)
  2. Process Flow Diagrams seperti swimlane diagramsState-Transition Diagrams (STDs) dan state tables
  3. Dialog maps
  4. Decision Tables dan Decision Trees
  5. Event-Response tables
  6. Feature Trees
  7. Use Case Diagrams
  8. Activity Diagrams
  9. Entity Relationship Diagrams (ERDs)


Akhir kata 

itulah pembahasan mengenai apa itu requirement, semoga bermanfaat dan sampai jumpa.


SISTEM PENGELOLAAN DATA RUMAH SAKIT BERBASIS JAVA CLI

5:59 PM Add Comment

Rumah sakit merupakan salah satu sarana pelayanan kesehatan dengan memberdayakan berbagai kesatuan personel terlatih dan terdidik dalam menghadapi dan menangani masalah medik untuk pemulihan dan pemeliharaan kesehatan yang baik. Teknologi informasi memiliki peran penting dalam pelayanan kesehatan saat ini. Dimana kualitas pengolahan informasi merupakan faktor penting bagi keberhasilan institusi pelayanan kesehatan. 

Sistem informasi yang baik dapat mendukung alur kerja klinis dengan berbagai cara yang akan memberikan kontribusi untuk perawatan pasien yang lebih baik. Sistem informasi mempunyai 3 peranan penting dalam mendukung proses pelayanan kesehatan, yaitu: mendukung proses dan operasi pelayanan kesehatan, mendukung pengambilan keputusan staf dan manajamen serta mendukung berbagai strategi untuk keunggulan kompetitif.

Sistem pengelolaan data rumah sakit (SPDRS) dapat dicirikan dengan fungsinya melalui informasi dan jenis layanan yang ditawarkan. Untuk mendukung perawatan pasien dan administrasinya, SPDRS mendukung penyediaan informasi, terutama tentang pasien, dalam cara yang benar, relevan dan terbarukan, mudah diakses oleh orang yang tepat pada tempat/lokasi yang berbeda dan dalam format yang dapat digunakan. Transaksi data pelayanan dikumpulkan, disimpan, diproses, dan didokumentasikan untuk menghasilkan informasi tentang kualitas perawatan pasien dan tentang kinerja rumah sakit serta biaya. Ini mengisyaratkan bahwa sistem informasi rumah sakit harus mampumengkomunikasikan data berkualitas tinggi antara berbagai unit di rumah sakit.

Baca juga Sejarah Singkat Java

Analisis

Perancangan kebutuhan aplikasi pengolahan data Rumah Sakit ini dapat memudahkan Administrator rumah sakit. Aplikasi ini memiliki berbagai fungsi yang digunakan untuk mendukung kemudahan pengelolaan data
Aplikasi yang akan dibuat terdiri dari :
  1. Aplikasi ini dapat mengolah data Pasien
  2. Aplikasi ini dapat mengelolah data Transaksi


Adapun analisis context diagram untuk memperlihatkan ekternal entity yang berinteraksi dengan sistem informasi. Eksternal entity diilustrasikan sebagai segiempat, sedangkan lingkaran di tengah merupakan proses sebagai pusat sistem informasi. Untuk lebih jelasnya mengenai context diagram dapat dilihat pada gambar dibawah ini.

Context diagram sistem rumah sakit

No.

Proses

Masukan

Keluaran

Logika proses

1

Pendaftaran Pasien

Input Nama_ lengkap,jenis_ kelamin, alamat,no_tlp,keluhan

 

Informasi data pendaftar

Begin

Read (nama_lengkap)

Read (Jenis_kelamin)

Read (Alamat)

Read (no_tlp)

Read (keluhan)

If data==valid then

Save data

End if

End

2.

Info Pasien

 

Informasi data_pasien

Begin

While data_pasien

Write (data_pasien)

End while

End

3.

Info kamar

 

Informasi data_kamar

Begin

While data_kamar

Write (data_kamar)

End while

End

4.

Transaksi

Input no_pasien, kelas_kamar, hari_rawat, pengantian_inpus,jumlah uang

Informasi data_pasien, data_kamar, data_transaksi

Begin

Read (no_pasien)

Read (kelas_kamar)

Read (hari_rawat)

Read (pengantian_inpus)

Write (data_pasien)

Write (data_kamar)

Write (data_transaksi)

Read(jumlah_bayar)

If(jumlah_bayar > data_transaksi)

    Kembalian=jumlah_bayar-data_transaksi

Write(kembalian)

End if

Write ( “Terimakasih”)

End

Baca juga Set dan Get pada Java

Implementasi

Adapun untuk script aplikasinya adalah sebagai berikut :

package RumahSakit;


import java.util.ArrayList;

import java.util.Arrays;

import java.util.Scanner;


public class RumahSakit{

    public static void main(String[] args) {

        Scanner input = new Scanner(System.in);

        Scanner tiga = new Scanner (System.in);

        Scanner satu = new Scanner (System.in);

        Scanner dua = new Scanner (System.in);

        char balik;

        String kamar    [] = {"VIP A","VIP B","KELAS 1","KELAS 2","KELAS 3"};

        int tarif_kamar [] = {1475000,1275000,785000,650000,275000};

        String nama     [] = {};

        String jk       [] = {};

        String alamat   [] = {};

        String hp       [] = {};

        String keluhan  [] = {};

        String status   [] = {};

        String penyakit;

        int jum = 1;

        

        do{

            

            System.out.println("\n--------------- Aplikasi Rumah Sakit Umum ---------------");

            System.out.println(" Menu Utama : ");

            System.out.println("1. Pendaftaran pasien ");

            System.out.println("2. Info Pasien ");

            System.out.println("3. Info Kamar ");

            System.out.println("4. Pembayaran ");

            System.out.println("5. Selesai");

            System.out.print("\nSilahkan pilih menu utama yang ada : ");

            int menu = input.nextInt();

                      

           

            if (menu==1) {     

                

                    System.out.println("---------------------------------------------------------");

                    System.out.println("Pendaftaran Pasien ");

                    System.out.println("---------------------------------------------------------");

                    System.out.println("Silahkan isi data dibawah ini : ");  

                    System.out.println("\nNo. Pasien            : "+(jum));

                

                    System.out.print("Nama Lengkap          : ");

                    String in_nama = tiga.nextLine();

                    ArrayList<String> myList = new ArrayList<>(Arrays.asList(nama));

                    myList.add(in_nama);

                    nama = myList.toArray(nama);

                

                    System.out.print("Jenis Kelamin         : ");

                    String in_jk = satu.nextLine();

                    ArrayList<String> myjk = new ArrayList<>(Arrays.asList(jk));

                    myjk.add(in_jk);

                    jk = myjk.toArray(jk);

                

                    System.out.print("Alamat                : ");

                    String in_alamat = satu.nextLine();

                    ArrayList<String> myalamat = new ArrayList<>(Arrays.asList(alamat));

                    myalamat.add(in_alamat);

                    alamat = myalamat.toArray(alamat);

                

                    System.out.print("No Handphone          : ");

                    String in_hp = dua.nextLine();

                    ArrayList<String> myhp = new ArrayList<>(Arrays.asList(hp));

                    myhp.add(in_hp);

                    hp = myhp.toArray(hp);

         

                    System.out.println("1. Sesak Nafas");

                    System.out.println("2. Kencing Manis");

                    System.out.println("3. Stroke");

                    System.out.print("Keluhan               : ");

                    int in_keluh = tiga.nextInt();

                    if (in_keluh==1) {

                        penyakit="Sesak Nafas";

                        ArrayList<String> mykeluh = new ArrayList<>(Arrays.asList(keluhan));

                        mykeluh.add(penyakit);

                        keluhan = mykeluh.toArray(keluhan);

                    } else if (in_keluh==2) {

                        penyakit="Kencing Manis";

                        ArrayList<String> mykeluh = new ArrayList<>(Arrays.asList(keluhan));

                        mykeluh.add(penyakit);

                        keluhan = mykeluh.toArray(keluhan);

                    } else if (in_keluh==3){

                        penyakit="Stroke";

                        ArrayList<String> mykeluh = new ArrayList<>(Arrays.asList(keluhan));

                        mykeluh.add(penyakit);

                        keluhan = mykeluh.toArray(keluhan);

                    }

                    

                    ArrayList<String> array_status = new ArrayList<>(Arrays.asList(status));

                    array_status.add("Belum Dibayar");

                    status = array_status.toArray(status);

                    System.out.println("---------------------------------------------------------");

            

                jum+=1;   

            

            } else if (menu==2){

                System.out.println("---------------------------------------------------------");

                System.out.println("Data Pasien ");

                System.out.println("---------------------------------------------------------");

                for (int i = 0; i < nama.length ; i++) {

                    System.out.println("Nomor Pasien        : " + (i+1));

                    System.out.println("Nama                : " + nama  [i]);

                    System.out.println("Jenis Kelamin       : " + jk    [i]);

                    System.out.println("Alamat              : " + alamat[i]);

                    System.out.println("No. Handphone       : " + hp    [i]);

                    System.out.println("Keluhan             : " + keluhan[i]);

                    System.out.println("Status Pembayaran   : " + status[i]);

                    System.out.println("--------------------------------------------------------");

                }

            } else if (menu==3){

                System.out.println("---------------------------------------------------------");

                System.out.println("Info Tipe Kamar & Tarif");

                System.out.println("---------------------------------------------------------");

                for (int i = 0; i < kamar.length ; i++) {

                    System.out.println((i+1)+". "+ kamar[i]+ "\t Tarif : Rp."+ tarif_kamar[i]);

                }

                System.out.println("---------------------------------------------------------");

            

            } else if (menu==4){

                int pelayanan = 50000;

                System.out.println("---------------------------------------------------------");

                System.out.println("Pembayaran ");

                System.out.println("---------------------------------------------------------");

                System.out.print("Masukkan No. Pasien       : ");

                int info = input.nextInt();

                System.out.println("Tipe kamar pasien          ");

                for (int i = 0; i < kamar.length; i++) {

                    System.out.println((i+1)+". "+kamar[i]);

                }

                System.out.print("Ketik nomor tipe kamar ---> ");

                int tipekamar = input.nextInt();

                System.out.print("Berapa hari pasien dirawat: ");

                int hari = input.nextInt();

                System.out.print("Banyak penggantian infus  : ");

                int infus = input.nextInt();

           

                System.out.println("\n------------- Bukti Transaksi Rumah Sakit --------------");

                System.out.println("No. Pasien              : " + info);

                System.out.println("Nama Pasien             : " + nama[info-1]);

                System.out.println("Jenis Kelamin           : " + jk[info-1]);

                System.out.println("Alamat                  : " + alamat[info-1]);

                System.out.println("Tipe Kamar              : " + kamar[tipekamar-1]);

                System.out.println("Biaya Kamar             : " + "Rp." + (tarif_kamar[tipekamar-1]*hari));

                System.out.println("Biaya Infus             : " + "Rp." + (infus*75000));

                System.out.println("Biaya Pelayanan         : " + "Rp." + pelayanan);

                System.out.println("Total Biaya             : " + "Rp." + ((tarif_kamar[tipekamar-1]*hari)+(infus*75000)+(pelayanan)));

                System.out.println("---------------------------------------------------------");

                System.out.print("Masukkan jumlah uang anda : Rp.");

                int bayar = input.nextInt();

                    if(bayar < (tarif_kamar[tipekamar-1]*hari)+(infus*75000)+(pelayanan)){

                        System.out.println("\nNominal uang anda kurang dari total biaya yang ada");

                        System.out.println("Silahkan ambil kembali uang anda & melakukan pembayaran ulang");

                        System.out.println("---------------------- Terima Kasih ---------------------");

                        status[info-1] = "Belum lunas";

                    } else if (bayar == (tarif_kamar[tipekamar-1]*hari)+(infus*75000)+(pelayanan)) {

                        System.out.println("\n---------------------- Terima Kasih ---------------------");

                        status[info-1] = "Lunas";

                    } else if (bayar > (tarif_kamar[tipekamar-1]*hari)+(infus*75000)+(pelayanan)){

                        System.out.println("\nKembalian anda sebesar Rp." + (bayar - (tarif_kamar[tipekamar-1]*hari)+(infus*75000)+(pelayanan)));

                        System.out.println("\n---------------------- Terima Kasih ---------------------");

                        status[info-1] = "Lunas";

                    }   

                

            } else if (menu==5){

                break;

            }

            

            System.out.print("Kembali ke menu utama (y/t): ");

            balik = input.next().charAt(0);

        } while(balik == 'y');

    }

}


Hasil dan tampilan aplikasi

Tampilan Awal

Tampilan Pendaftaran Pasien

Tampilan Infomasi Pasien

Tampilan Informasi Kamar

Tampilan Transaksi
Baca juga Constructor pada java

Kesimpulan

Perancangan Sistem Pengolahan rumah sakit ini merupakan pengembangan dari sistem yang sedang berjalan dan diperbaiki dengan sistem yang telah selesai dibangun yaitu menggunakan bahasa pemprograman java dan berbasis console. Dengan menggunakan aplikasi yang setelah selesai dibangun menggunakan console ini memeliki berbagai kelebihan yaitu kompatibel di berbagai device baik windows, linux, mac os, android, dll, karena menggunakan console sebagai pratformnya. Selain itu size yang terbilang sangat kecil bisa mempercat dan mempermudah proses penginputan data, sehingga tercapainya efisiensi.