Bab II Dasar Teori Kontes Pemrograman

Ukuran: px
Mulai penontonan dengan halaman:

Download "Bab II Dasar Teori Kontes Pemrograman"

Transkripsi

1 Bab II Dasar Teori Pada Bab ini, akan dibahas hasil studi literatur maupun eksplorasi yang akan dipakai pada Tugas Akhir ini. Studi literatur ini mencakup penjelasan mengenai kontes-kontes pemrograman, desain dan aspek security yang harus dimiliki sebuah sistem kontes pemrograman. Karena sistem ini akan dibangun secara terdistribusi untuk meningkatkan skalabilitas maka di bab ini juga akan dijelaskan mengenai dasar teori load sharing pada sebuah sistem terdistribusi Kontes Pemrograman Pada bagian ini akan dibahas mengenai kontes pemrograman yang merupakan latar belakang dari pembangunan sistem pelatihan kompetisi pemrograman ini Ikhtisar Kontes Pemrograman Kontes pemrograman secara umum memiliki banyak peran. Kontes pemrograman sebagai sebuah olahraga, memberikan hiburan kepada penonton dan juga peserta. Kontes juga bertujuan sebagai wadah untuk berprestasi. Kontes memotivasi peserta untuk memasuki sebuah disiplin ilmu, mempelajari, dan berlatih berbagai kemampuan dan keterampilan. Kontes juga berperan sebagai model bagi kompetisi yang serupa dan memajukan kontes-kontes yang lain serta kurikulum informatika. Dengan adanya kontes, dapat terbangun sebuah komunitas yang terdiri atas pelajar, pelatih, dan pendukung lainnya [COR06]. Adanya kontes membuat pengajaran berbagai bidang menjadi lebih atraktif. Saat pelajar mempelajari sebuah konsep dasar dari ilmu komputer, mereka segera dapat menemukan tempat di mana mereka dapat mendemonstrasikan kemampuan mereka, karya mereka, membagikan pemikiran mereka, dan membandingkan diri mereka dengan orang lain [DAG06]. II-1

2 II Kontes-Kontes Pemrograman Pada subbab-subbab berikut akan dibahas mengenai 2 buah kontes pemrograman yang paling popular di dunia sekarang ini yakni IOI yang menjadi model utama materi kompetisi pemrograman yang digunakan serta ACM ICPC ACM Intercollegiate Programming Contest ACM ICPC [ACM09] adalah sebuah kontes pemrograman yang ditujukan bagi mahasiswa. Pada kontes ini, sebuah tim yang terdiri dari 3 orang berbagi sebuah komputer dan diminta untuk mengerjakan beberapa soal dalam waktu 5 jam. Setiap soal terdiri atas deskripsi permasalahan, format masukan, format keluaran, dan juga sebuah contoh sederhana antara masukan dan keluaran yang diminta. Tim dapat mengerjakan setiap persoalan tanpa urutan tertentu dan menghasilkan sebuah potongan program yang ditulis dalam bahasa pemrograman seperti Pascal, C. C++, dan Java. Program tersebut harus dapat menangani semua masukan yang valid. Kode program yang dihasilkan oleh tim, dikumpulkan secara online ke judge yang kemudian melakukan pengujian terhadap semua test case. Jika program tersebut berjalan pada waktu dan memori yang ditentukan serta menghasilkan keluaran yang benar maka program diterima, sebaliknya ditolak. Tidak ada penilaian untuk test case yang benar (partial). Setiap tim dapat mengumpulkan kembali jawaban kembali jika jawaban sebelumnya salah. Ketika sebuah program diterima maka tim akan mendapat penalti, 1 poin untuk setiap menit berjalan sejak kontes dimulai dan 20 poin untuk setiap jawaban yang salah yang sudah dikumpulkan. Peringkat peserta ditentukan dari jumlah soal yang berhasil dikerjakan dengan jumlah penalti sebagai tie-breaker. Selama kontes berjalan, terdapat sebuah papan skor yang menampilkan jumlah soal yang diselesaikan dan penalti untuk setiap tim. Kontestan dan penonton (untuk kontes onsite dan online) dapat melihat papan skor. Meski demikian papan skor tidak diupdate selama satu jam terakhir untuk menimbulkan rasa tegang bagi peserta sebelum pengumuman dilaksanakan. Pada setiap komputer peserta akan

3 II-3 dipasang balon-balon berwarna warni untuk setiap soal yang telah diselesaikan oleh peserta International Olympiad of Informatics International Olympiad of Informatics atau IOI [IOI05] adalah sebuah kompetisi tahunan di bidang ilmu komputer. IOI pertama kali didirikan pada tahun 1989 dan meniru model International Mathematical Olympiad. IOI ditujukan bagi peserta dari sekolah menengah terutama yang memiliki bakat di bidang ilmu komputer. Tujuan dari IOI adalah untuk mempopulerkan disiplin ilmu komputer kepada pelajar sekolah. Setiap delegasi sebuah negara terdiri dari 4 orang peserta. Setiap peserta berkompetisi dalam dua buah sesi 5 jam yang dipisahkan pada hari yang berbeda. Pada setiap sesi peserta diminta untuk menyelesaikan 3 buah soal yang mempunyai spesifikasi mirip dengan ACM ICPC. Soal ini telah diterjemahkan ke dalam bahasa asal peserta. Solusi harus ditulis dalam bahasa Pascal, C, dan C++ dan dikumpulkan secara online. Meski demikian peserta tidak dapat melihat nilai dari hasil pekerjaannya. Peserta dapat mengumpulkan jawaban berkali-kali. Nilai akan diumumkan secara tertulis kepada peserta satu persatu di hari setelah sesi dilaksanakan. Test case juga diberikan supaya peserta dapat melihat letak kesalahannya ataupun juga melakukan protes kepada panitia jika peserta yakin bahwa test case tersebut salah. Berbeda dengan ACM ICPC, IOI memberikan nilai kepada jawaban untuk setiap test case yang berhasil dikerjakan oleh program peserta (partial scoring). Batas waktu runtime program biasanya sangat ketat sehingga hanya algoritma yang terbaik yang dapat menyelesaikan semua test case. Selain dari tipe soal yang mirip ACM ICPC tersebut, terdapat 2 jenis soal yang lain yakni output only dan interactive. Pada tipe soal output only atau yang lebih dikenal dengan open-data test, peserta telah diberikan sekumpulan test case masukan. Dengan test case tersebut peserta diminta untuk menghasilkan data keluaran yang diharapkan. Pada tipe interactive task, peserta diminta membuat

4 II-4 sebuah program yang nantinya akan berinteraksi dengan program yang dimiliki oleh panitia. Tujuan dari interactive task ini biasanya adalah untuk mensimulasikan sebuah permainan di mana program peserta akan mengeluarkan langkah untuk menjawab langkah yang diberikan oleh program yang diberikan untuk memaksimalkan keuntungan pada permainan. Pada IOI 2008, implementasi interaksi ini dilakukan dengan format library. Peserta diminta untuk mengumpulkan jawaban dalam bentuk library. Sebelum 2008, implementasinya dilakukan dengan menggunakan standard input dan output Sistem Manajemen Kontes Pemrograman Untuk melaksanakan kontes-kontes pemrograman seperti yang dibahas pada Subbab sebelumnya, diperlukan adanya sistem yang membantu penyelenggara kontes. Sistem ini biasanya menyediakan fungsionalitas untuk melakukan penilaian jawaban peserta secara otomatis di samping fungsionalitas seperti manajemen kontestan, administrasi, dan lain-lain Desain Sistem Manajemen Kontes Pemrograman Fungsionalitas utama yang disediakan oleh sebuah sistem kontes pemrograman adalah automated judge. Perangkat ini bertugas untuk melakukan evaluasi jawaban kontestan secara otomatis. Proses evaluasi biasanya dilakukan dalam 3 tahap utama yakni melakukan kompilasi kode program jawaban, mengeksekusi program tersebut pada beberapa test case yang telah disediakan, dan terakhir memeriksa kebenaran keluaran program. Fungsionalitas lain yang penting dalam menyelenggarakan sebuah sistem kontes adalah manajemen user (termasuk autentikas dan pengaturan akses), administrasi (menambahkan/menyunting soal, test case, konfigurasi soal, dan melakukan rejudging jawaban peserta), dan sebuah portal kontes (menampilkan ranking, jawaban, klarifikasi, dan informasi lain) Beberapa kontes sistem yang ada sekarang ini memberikan fungsionalitas tambahan seperti melakukan backup data dan juga mencetak kode jawaban.

5 II Kebutuhan Sistem Kontes Pemrograman Forizek menyebutkan bahwa terdapat beberapa kebutuhan yang harus dimiliki oleh sebuah sistem kontes [FOR06]. 1. Flexibility Setiap kontes pemrograman memiliki kebutuhan yang berbeda satu sama lain. Sebuah sistem kontes harus dapat dengan mudah diadopsi untuk peraturan kontes yang berbeda-beda. Untuk mencapai fleksibilitas yang baik, sebuah kontes harus didesain secara moduler. 2. Robustness Sistem kontes harus robust dan reliable. Sistem tidak boleh crash sewaktu-waktu ketika kontes sedang dijalankan. 3. User-friendliness and Support Sistem harus mudah digunakan dan memiliki dokumentasi yang baik. Kebanyakan sistem kontes hanya memiliki fungsionalitas minimal untuk dapat berjalan. Banyak sistem yang memiliki dokumentasi sangat minim sehingga hanya dapat digunakan oleh pengembang. 4. Trust Sistem harus dapat membatasi akses ke beberapa informasi, menjaga integritas hasil kontes, dan lain-lain. Pengembang sistem kontes harus dapat menjaga kepercayaan dari pemilik kontes Implementasi Perangkat Lunak Manajemen Kontes Pemrograman Pada subbbab ini dibahas 3 buah sistem manajemen kontes pemrograman yang telah banyak digunakan: Mooshak, PC 2, dan MO-Eval Mooshak Mooshak [MOO08] adalah sebuah sistem manajemen kontes pemrograman yang berbasis web. Fitur-fitur dasar Mooshak terdiri atas automatic judging untuk

6 II-6 jawaban peserta kontes, tanya jawab untuk soal, manajemen soal, dan lain-lain. Selain itu Mooshak juga menyediakan fitur-fitur administrasi yang cukup lengkap seperti melakukan replikasi dan backup data kontes, peserta, jawaban, dan juga soal. Mooshak juga mendukung berbagai jenis aturan kontes yang ada. Penyelenggara kontes diberikan banyak sekali pilihan-pilihan konfigurasi untuk kontes dan soal yang akan digunakan. Mooshak dikembangkan sebagai aplikasi open source untuk lingkungan dengan sistem operasi Linux menggunakan server Apache dan bahasa script TcL. Sistem ini mampu menangani source code dalam berbagai bahasa pemrograman, khususnya yang sering digunakan dalam kompetisi pemrograman: C, C++, Java dan Pascal. Bahasa pemrograman jamak ditangani dengan menggunakan kompilator-kompilator eksternal yang harus didefinisikan terlebih dahulu oleh administrator sistem. Mooshak juga sering digunakan pada pembinaan yang diadakan oleh TOKI PC 2 PC 2 atau Programming Contest Control System [PCC09] dan sering diucapkan P-C-square adalah sebuah sistem yang dikembangkan untuk mendukung pelaksanaan sebuah lomba dalam berbagai lingkungan komputasi. Aplikasi ini mempunyai fasilitas pengumpulan jawaban berupa kode melalui jaringan komputer. Juri dapat melakukan kompilasi ulang jawaban tersebut, mengeksekusinya, melihat isi jawaban, melihat hasil penilaian, dan mengirimkan respons kepada peserta atas jawaban yang sudah dikumpulkan. Sistem secara otomatis memberi penanda waktu dan menyimpan jawaban yang dikirim, menampilkan dan melakukan update kedudukan sementara dari para peserta dalam berbagai cara, dan memberikan fasilitas kepada juri untuk mengambil dan menilai ulang jawaban yang sudah pernah dikirim. Aplikasi ini juga memberikan fasilitas bagi peserta untuk meminta klarifikasi kepada para juri. Para juri juga dapat menuliskan pengumuman bagi semua peserta. Selain itu, PC2 juga mendukung pengadaan kontes yang diadakan secara simultan pada tempat yang berbeda-beda dan menampilkan sebuah papan kedudukan untuk setiap tempat.

7 II-7 Sistem ini juga memberikan banyak opsi-opsi yang dapat dipilih dan dikonfigurasi secara bebas oleh administrator untuk menyesuaikan sistem untuk peraturan kontes yang lebih spesifik. Opsi tersebut antara lain jumlah peserta, jumlah soal, bahasa pemrograman yang digunakan, metode penilaian, dan lain-lain. Aplikasi juga memberikan kemudahan untuk penyuntingan langsung ke dalam basisdata. Sistem ini dikembangkan di California State University. Sistem ini pertama kali dikembangkan dengan menggunakan Turbo Pascal. Akan tetapi versi terakhir dikembangkan menggunakan Java dengan antarmuka Java Swing. Sistem ini sering dipakai dalam kontes pemrograman ACM ICPC. PC 2 didistribusikan dalam bentuk binary dan closed source MO-Eval MO-Eval [MAR07] yang memiliki nama asli MO Contest Environment adalah sebuah sistem manajemen kontes sederhana yang menerapkan aturan kontes pada IOI. Pada aturan ini, peserta kontes mengerjakan soal dan kemudian mengirimkan jawaban yang nantinya akan dinilai secara offline pada akhir kontes. Meski demikian MO-eval di masa depan akan dikembangkan lebih moduler sehingga dapat memfasilitasi konfigurasi-konfigurasi aturan kontes lain seperti ACM- ICPC. Tipe soal yang didukung oleh sistem ini antara lain offline task (batch), interactive, dan open-data task (output only). Oleh pengembangnya, MO-eval digunakan pada Czech Olympiad in Programming dan Czech-Polish-Slovak Preparation Camp. MO-eval dikembangkan oleh Martin Mares sejak tahun Sistem ini dikembangkan dengan bahasa C dan bahasa shell scripting Bash untuk mesin bersistem operasi Linux dengan arsitektur prosesor i386. Sistem ini didistribusikan secara open source dibawah lisensi GPL2. Tabel II-1. Perbandingan Kontes Sistem Mooshak PC 2 MO-Eval Antarmuka Web based Desktop based Command line Penggunaan Online Onsite Offline Teknologi CGI dan TcL Java Bash dan C Tipe soal Batch task IOI & Batch task ACM Custom defined task ACM style

8 II Sistem Pelatihan Pemrograman Online Selain dari sistem-sistem manajemen kontes yang digunakan secara langsung pada saat kontes berjalan, terdapat sistem-sistem pelatihan yang dapat digunakan oleh pelajar untuk melakukan latihan setiap saat. Dengan sistem ini pelajar dapat mengukur kemampuannya dengan hasil yang diberikan oleh sistem. Meski demikian umumnya sistem pelatihan menyediakan fungsi kontes di mana peserta selain dapat mengukur kemampuannya juga dapat membandingkannya dengan peserta lain. Pada subbab berikut penulis akan menjabarkan 2 buah sistem pelatihan online yang banyak digunakan di dunia USACO Training USACO (USA Computing Olympiad) Training [USA09] adalah sistem pelatihan berbasis Internet yang berupa kumpulan tulisan yang sifatnya instruksi dan berisi soal-soal pemrograman yang mendukung. Sistem ini dibuat untuk mendukung pelatihan di USACO sendiri meski sistem ini juga memperbolehkan peserta di luar Amerika Serikat untuk mengaksesnya dan melakukan latihan di sana. Pada sistem ini, peserta dihadapkan oleh beberapa bab latihan. Bab-bab tersebut disusun dari tingkat kesulitan terendah sampai tersulit. Untuk mengerjakan soalsoal pada bab tersebut, peserta diharuskan untuk membaca instruksi atau materi yang ada di awal bab. Setelah itu peserta dapat membuka soal-soal dan mengumpulkan jawaban. Untuk dapat mengakses sebuah bab, peserta harus menyelesaikan semua soal-soal yang ada di bab sebelumnya. Selain dari layanan pelatihan, USACO juga memberikan kesempatan bagi peserta untuk mengikuti kontes yang diadakan secara periodik. Setiap kontes dibagi ke dalam 3 tingkat kesulitan : bronze, silver, dan gold. Tingkat kesulitan soal termudah terdapat pada tingkat bronze hingga gold merupakan kontes dengan soal yang tersulit. Untuk dapat mengikuti kontes silver, peserta harus mempunyai rating yang cukup setelah mengikuti kontes bronze. Setelah itu peserta dapat naik ke kontes silver hingga kontes gold.

9 II Z-Trening Z-Trening [ZTR09] adalah sebuah situs pelatihan pemrograman online. Situs ini dibuat oleh Alexandar Zlateski. Situs ini memiliki fitur yang sangat lengkap. Peserta dapat melihat melihat kumpulan-kumpulan soal yang disediakan pada situs. Soal-soal ini dikelompokkan berdasarkan kategori-kategori tertentu. Peserta dapat mengakses setiap soal yang ada kemudian mengumpulkan jawaban untuk soal tersebut. Proses penilaian yang dilakukan oleh sistem secara realtime. Peserta dapat melihat status jawabannya mulai dari pengumpulan, menunggu autograder, dan pengujian pada test case secara langsung. Selain itu peserta dapat melihat statistik pengumpulan jawaban yang sudah dilakukan. Pada statistik ini, sistem menampilkan trend pengumpulan jawaban, jumlah jawaban benar, jumlah soal yang dikerjakan, persentase jawaban benar, dan lain-lain. Untuk setiap soal yang ada, sistem menampilkan deskripsi soal, informasi soal, rating soal, rasio jawaban benar, jawaban-jawaban terakhir yang dikumpulkan oleh peserta, peserta-peserta yang menjawab benar, dan lain-lain. Situs juga menyediakan forum-forum diskusi untuk setiap soal sehingga peserta-peserta dapat berdiskusi mengenai soal tersebut. Sebagai tambahan, situs ini juga menyelenggarakan kontes-kontes yang diadakan secara online dan periodik. Peserta dapat mengikuti kontes-kontes yang diadakan tersebut. Sistem juga menampilkan kontes-kontes yang telah diikuti oleh seorang peserta dan medali yang didapatkannya. Selain itu sistem juga menampilkan kontes-kontes yang telah diadakan sebelumnya dan juga kontes yang akan datang dalam bentuk kalender Aspek Penting Pada Sistem Pelatihan dan Kontes Pemrograman Beberapa kebutuhan untuk sebuah sistem kontes pemrograman telah dijelaskan pada Subbab 2.2.2: flexibility, robustness, user-friendliness, dan trust. Di dalam Tugas Akhir ini penulis memfokuskan pada aspek yang menjadi rumusan masalah. Rumusan masalah ini merupakan bagian dari kebutuhan tersebut. Kebutuhan flexibility ingin dicapai pada aspek extensibility sehingga sistem dapat

10 II-10 beradaptasi dengan kebutuhan-kebutuhan dan perkembangan tipe-tipe soal baru. Selain itu aspek security dan scalability merupakan bagian dari kebutuhan robustness di mana sistem dapat terjaga sehingga tidak mudah crash Extensibility Extensibility adalah kemudahan pengadaptasian produk perangkat lunak terhadap perubahan spesifikasi [MEY97]. Ada 2 hal yang penting di dalam meningkatkan extensibility 1. Design simplicity Arsitektur yang sederhana akan mudah diadaptasi daripada yang lebih rumit. 2. Decentralization Semakin otonom sebuah modul maka kemungkinan besar perubahan kecil hanya akan mempengaruhi satu atau sedikit modul daripada menimbulkan efek berantai yang mempengaruhi sistem secara keseluruhan. Di dalam pengembangan soal, aspek extensibility pada sistem dimaksudkan untuk memfasilitasi pengembangan soal sehingga sistem mampu menggunakan soalsoal yang telah dibuat atau akan dibuat meski terdapat perubahan-perubahan spesifikasi dalam sistem Security Karena sebuah sistem kontes umumnya menerima source code sebagai bentuk jawaban maka sistem ini menjadi sangat rentan untuk diserang. Forizek juga mendaftarkan beberapa serangan-serangan yang dapat terjadi pada sebuah sistem kontes. Serangan-serangan ini dapat diklasifikasikan menjadi 3 jenis berdasarkan waktu serangan: compilation-time, execution-time, dan contest-time. Serangan compilation-time dan execution-time terjadi pada saat proses penilaian jawaban peserta sementara serangan contest-time meliputi serangan-serangan lain. Selain berdasarkan waktu serangan, serangan juga dapat diklasifikasikan berdasarkan tujuan serangan: denial of service, privileges escalation, destructive attack, dan covert channel. Serangan denial of service bertujuan untuk membatasi beberapa pengguna dalam mengakses layanan sistem. Serangan priviliges

11 II-11 escalation bertujuan untuk mendapatkan akses ke area atau materi yang seharusnya tidak dapat diakses. Destructive attack bertujuan untuk merusak layanan sistem sehingga tidak dapat diakses oleh siapapun. Covert channel adalah situasi di mana penyerang menggunakan sebuah cara yang tidak diberikan oleh pengembang sistem untuk berkomunikasi dengan pengguna lain Forcing High Compilation Time Serangan ini termasuk ke dalam tipe compilation-time dan denial of service. Sebuah kode yang pendek dan sederhana dapat membutuhkan waktu kompilasi yang sangat lama. Jika sistem tidak membatasi waktu kompilasi maka hal ini akan digunakan untuk membatasi aktivitas compiler dan dapat berujung pada terhentinya proses automated judging. #include <map> using namespace std; typedef map<int,int> M1; typedef map<m1,m1> M2; typedef map<m2,m2> M3; typedef map<m3,m3> M4; typedef map<m4,m4> M5; typedef map<m5,m5> M6; typedef map<m6,m6> M7; typedef map<m7,m7> M8; int main() { M8 tmp; } Kode II-1. Forcing High Compilation Time Untuk pencegahan, sistem perlu memberikan batasan waktu kompilasi. Selain itu, menggunakan lebih dari satu mesin akan mengurangi dampak dari serangan ini; jika sebuah mesin terhenti maka mesin yang lain masih dapat berjalan untuk melakukan automated judging Consuming Resource At Compilation Time Serangan ini termasuk ke dalam tipe compilation-time dan denial of service. Beberapa compiler melakukan lookahead dalam melakukan parsing kode

12 II-12 program (untuk memahami sebuah kode, compiler harus melihat kode yang mengikutinya dan hal ini tidak dapat dibatasi). Jika compiler diberikan sebuah masukan yang sangat besar maka compiler akan membaca seluruh input tersebut ke dalam memori. Sebuah baris kode #include /dev/random pada mesin dengan sistem operasi UNIX akan berakibat fatal bagi sistem. Compiler akan terus membaca masukan random ke dalam memori sampai seluruh memori digunakan. Untuk mencegah serangan ini, perlu adanya pembatasan lingkungan kompilasi pada proses kompilasi. Compiler hanya dapat mengakses beberapa resource tertentu. Hal sederhana yang dapat dilakukan adalah untuk menjalankan compiler dengan lingkungan yang sama dengan yang digunakan pada saat menjalankan program kontestan Accessing Restricted Material Serangan ini termasuk ke dalam tipe compilation-time, execution time, dan priviliges escalation. Penyerang mungkin mengakses materi-materi yang sifatnya rahasia: keluaran yang benar, solusi juri, jawaban lain, berkas nilai, dan lain-lain. Salah satu contoh serangan ini adalah pada saat kompilasi, jika seorang kontestan mengetahui atau menebak lokasi yang benar dari sebuah resource maka kontestan akan mencoba memasukkan resource tersebut ke dalam kode program. Pada saat kompilasi dan eksekusi, seharusnya resource tersebut tidak tersedia pada mesin yang sedang digunakan Misusing The Network Serangan ini termasuk ke dalam tipe contest-time dan priviliges escalation. Jika kontestan dapat memonitor dan menyimpan trafik jaringan terutama trafik ke sistem automated judge, maka kontestan dapat melakukan intersepsi jawaban kontestan lain dan mengumpulkan jawaban tersebut sebagai miliknya. Kontestan juga dapat melakukan komunikasi dengan kontestan lain melalui jaringan atau menggunakan password kontestan lain untuk mencuri jawaban milik kontestan tersebut. Untuk mencegahnya, komunikasi pada sistem kompetisi berbasis web

13 II-13 harus dilakukan dengan menggunakan protokol HTTPS. Untuk sistem kompetisi onsite, pencegahan juga dapat dilakukan dengan cara melakukan konfigurasi jaringan, memonitor trafik jaringan, dan juga mencatat aksi-aksi kontestan Modifying or Harming Testing Environment Serangan ini termasuk ke dalam tipe execution time, destructive, dan DoS. Serangan paling sederhana dari tipe ini adalah dengan mengirimkan kode yang dapat menghilangkan berkas apa pun yang bisa dihilangkan. Cara lain adalah dengan menuliskan keluaran sebesar-besarnya sehingga sistem menjadi kekurangan space harddisk. Meski dengan penggunaan sandbox, pengembang sistem kontes harus tetap berhati-hati atas apa yang boleh dijalankan oleh program peserta. Hampir semua yang tidak penting untuk program yang benar dapat disalahgunakan untuk merusak sistem Circumventing the Time Measurement Serangan ini termasuk ke dalam tipe execution time. Pada serangan ini, peserta berusaha untuk memotong waktu hasil pengukuran automated judge untuk memperoleh waktu komputasi yang lebih lama. Salah satu caranya adalah jika sistem hanya mengukur waktu proses yang dijalankan oleh sistem maka proses tersebut dapat mengeksekusi fork untuk membuat child process yang akan menjalankan komputasi Exploiting Covert Channel Serangan ini termasuk ke dalam tipe contest-time dan covert channel. Sistem kontes biasanya memberitahukan hasil penilaian kepada peserta secara langsung. Informasi ini biasanya bergantung pada perilaku program peserta terhada test case yang rahasia. Informasi yang diberikan ini dapat digunakan untuk mendapatkan informasi mengenai test case yang rahasia tersebut. Informasi yang diberikan biasanya berupa informasi mengenai kompilasi gagal, eksekusi gagal, penggunaan memori berlebihan, dan waktu eksekusi berlebihan. Dengan menggunakan informasi ini peserta dapat menebak-nebak test case. Pencegahan dapat dilakukan dengan mendesain test case yang bagus.

14 II-14 void sendinformation(int n) { malloc(1024*(n&31));//send 5 bits in the memory size n >>= 5; if (n==0) exit(0);//terminate with a wrong answer if (n==1) assert(0);//abort if (n==2) while(1);//exceed the time limit if (n==3) { int a=3*n; a/=9-a; }//division by zero } Kode II-2. Exploiting Covert Channel Misusing Additional Services Serangan ini termasuk ke dalam tipe contest-time dan denial of service. Biasanya sistem kontes memiliki fasilitas tambahan seperti pencetakan kode program dan juga fasilitas backup. Peserta dapat melakukan serangan terhadap fasilitas seperti ini, contohnya mencetak berkas sebanyak 500 halaman sehingga menghabiskan kertas pada printer. Peserta juga dapat melakukan backup data yang sangat besar sehingga mesin kehabisan space pada harddisk. %!PS /Times-Roman findfont 100 scalefont setfont /page 0 def { /page page 1 add def % increment the page counter page 4 gt { exit } if % try omitting this line! moveto page 20 string cvs show % print the page number showpage % ship out the page } loop Kode II-3. Misusing Additional Service Exploiting Bugs In Operating System Serangan ini termasuk ke dalam tipe execution-time, contest-time dan priviliges escalation. Jika kontestan mampu mengakses mesin di mana jawaban dinilai, maka kontestan dapat melakukan scanning mesin ini untuk mencari kelemahan

15 II-15 sistem dan mencoba mengeksploitasinya. Kontestan dapat mencoba menjalankan sebuah kode pada mesin termasuk di dalamnya sebuah exploit. Eksploitasi yang berhasil akan berujung pada pemaparan test case yang rahasia sampai membiarkan kontestan merusak sistem yang bersangkutan. Untuk mencegahnya, perlu dibuat isolasi pada beberapa subsistem sehingga tidak dapat diakses oleh kontestan. Kontestan hanya dapat berinteraksi dengan sebuah komputer yang berperan sebaga antar muka dari kontes. Jawaban kontestan harus dieksekusi pada sebuah sandbox yang aman untuk dapat mencegah pengaksesan bagian-bagian dari sistem operasi Obfuscation Obfuscation bukan merupakan tipe serangan melainkan sebuah cara untuk membantu kesuksesan tipe serangan yang lain. Sebagai contoh, pada banyak sistem kontes metode penanganan fungsi-fungsi terlarang pada kode program dilakukan dengan mencari nama fungsi tersebut pada kode program. Akan tetapi cara demikian tidak cukup ketika nama kode program diobfuskasi. Untuk melakukan pencegahan pemanggilan fungsi tersebut perlu dilakukan pencegahan pada level system call. Sistem perlu mendeteksi pemanggilan system call yang dilakukan oleh program peserta Scalability Peningkatan kinerja adalah salah satu isu yang paling penting di dalam sistem komputasi terdistribusi. Peningkatan kinerja ini biasanya ditangani dengan 2 cara yakni menambahkan node ke dalam sistem (scale out) atau meningkatkan kapasitas dari sebuah node (scale up). Meski demikian, banyak situasi buruk disebabkan oleh pendistribusian kerja yang buruk pada keseluruhan sistem. Untuk itu dibutuhkan strategi load balancing yang baik pada pembagian kerja dari node sumber pekerjaan (source) kepada node yang melakukan pekerjaan. (server) Load sharing adalah usaha untuk menjaga kemampuan sistem dalam bekerja dengan menjamin bahwa tidak ada satu node yang idle dalam menunggu pekerjaan [WAN85]. Load balancing sendiri adalah pendekatan dimana proses yang ingin dikerjakan akan didistribusikan ke pada semua node sehingga beban

16 II-16 kerjanya menjadi sama. Load sharing sering diacu sebagai load balancing karena proses load sharing juga bertujuan untuk menyamakan beban kerja pada setiap node. Sifat-sifat yang diinginkan dari adanya load sharing antara lain 1. Optimal Overall System Performance Jumlah kapasitas pemrosesan menjadi maksimal dan mempunyai jeda yang dapat diterima. 2. Fairness of Service Kinerja yang adil untuk setiap pekerjaan yang dilakukan. 3. Failure Tolerance Sistem dapat berjalan dengan baik meski dapat terjadi beberapa kesalahan. Wang juga membagi load sharing kedalam dua jenis taksonomi. Taksonomi pertama membagi load sharing kedalam dua jenis yakni source initiative dan server initiative. Di dalam source initiative, source akan memilih server node untuk diberi pekerjaan. Sedangkan server initiative, algoritma pembentukan antrian dilakukan pada server node. Perbedaan yang lain adalah pada source initiative, keputusan pembagian terjadi pada saat pekerjaan tiba, sedangkan pada server initiative, keputusan terjadi pada saat pekerjaan pergi dari server. Tabel II-2. Klasifikasi Load Sharing Information Source Initiate Server Initiate Dependency 1 server = f(source) source = f(server) 2 server = f(source, ω) source = f(server, ω) 3 server = f(source, ω, sequence state) source = f(server, ω, sequence state) 4 server = f(source, ω, source = f(server, ω, sequence state, sequence state, server busy/idle status) source queue emptiness) 5 server = f(source, ω, source = f(server, ω, sequence state, sequence state, server queue length) source queue length) 6 server = f(source, ω, server = f(source, ω, sequence state, sequence state, server queue length, arrival epoch of jobs at departure epoch of source) completed job at servers) 7 server = f(source, ω, server = f(source, ω,

17 II-17 Information Source Initiate Dependency sequence state, server queue length, departure epoch of completed and remaining job at servers) * ω randomly generated parameter Server Initiate sequence state, server queue length, arrival epoch and execution times of jobs at sources) Taksonomi kedua disebut dengan information dependency. Jenis ini membagi load sharing ke dalam derajat-derajat berdasarkan informasi yang dibutuhkan oleh server node tentang status dari source node atau sebaliknya. Terdapat 7 derajat ketergantungan informasi mulai dari derajat pertama di mana pembagian kerja tidak membutuhkan informasi sama sekali dan derajat terakhir di mana strategi membutuhkan informasi tambahan. Adanya informasi ini akan meningkatkan kinerja dengan penambahan overhead pada komunikasi dan koordinasi. Tabel II.2 menunjukkan perbedaan information dependency pada sourceinitiative dan server-initiative. Algoritma source-initiative dilambangkan dengan sebuah fungsi. yang berarti server yang ditunjuk merupakan fungsi dari. Begitupula dengan algoritma server-initiative..

TOKI Learning Center Sistem Pelatihan Kompetisi Pemrograman Komputer

TOKI Learning Center Sistem Pelatihan Kompetisi Pemrograman Komputer TOKI Learning Center Sistem Pelatihan Kompetisi Pemrograman Komputer LAPORAN TUGAS AKHIR Disusun sebagai syarat kelulusan tingkat sarjana oleh: Petra Novandi Barus NIM: 13505059 PROGRAM STUDI TEKNIK INFORMATIKA

Lebih terperinci

Bab III Analisis Analisis Masalah

Bab III Analisis Analisis Masalah Bab III Analisis Bab ini terdiri dari dua bagian yakni Analisis Masalah dan Analisis Perangkat Lunak. Bagian pertama menjelaskan masalah yang menjadi fokus utama Tugas Akhir yakni pengembangan sistem pelatihan

Lebih terperinci

PENJURIAN ONLINE BERBASIS WEB SERVICE

PENJURIAN ONLINE BERBASIS WEB SERVICE PENJURIAN ONLINE BERBASIS WEB SERVICE Dwi Sunaryono 1, Wahyu Suadi 2, I Made Krisna Widhiastra 3 1,2,3 Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember Surabaya, 60111 E-mail : [email protected],

Lebih terperinci

Bab I Pendahuluan Latar belakang

Bab I Pendahuluan Latar belakang Bab I Pendahuluan 1.1. Latar belakang Saat ini ada banyak kompetisi pemrograman untuk pelajar setingkat sekolah menengah yang telah diselenggarakan baik secara internasional maupun regional. Kompetisi-kompetisi

Lebih terperinci

INSTITUT TEKNOLOGI BANDUNG SENIOR PROGRAMMING CONTEST 3 REGULASI DAN PERATURAN

INSTITUT TEKNOLOGI BANDUNG SENIOR PROGRAMMING CONTEST 3 REGULASI DAN PERATURAN INSTITUT TEKNOLOGI BANDUNG SENIOR PROGRAMMING CONTEST 3 REGULASI DAN PERATURAN 1. PENGANTAR. Institut Teknologi Bandung Programming Contest 3 ( ITBPC 3 ) adalah acara tahunan yang diadakan oleh Program

Lebih terperinci

OLIMPIADE SAINS NASIONAL VII

OLIMPIADE SAINS NASIONAL VII PERATURAN KOMPETISI OLIMPIADE SAINS NASIONAL VII BIDANG INFORMATIKA MAKASSAR, SULAWESI SELATAN Selamat Bekerja, Berkompetisi, Jadilah Yang Terbaik! OSN 2008 Bidang Komputer Peraturan Kompetisi Ringkasan

Lebih terperinci

INSTITUT TEKNOLOGI BANDUNG JUNIOR PROGRAMMING CONTEST 3

INSTITUT TEKNOLOGI BANDUNG JUNIOR PROGRAMMING CONTEST 3 INSTITUT TEKNOLOGI BANDUNG JUNIOR PROGRAMMING CONTEST 3 REGULASI DAN PERATURAN 1. PENGANTAR. Institut Teknologi Bandung Programming Contest 3 ( ITBPC 3 ) adalah acara tahunan yang diadakan oleh program

Lebih terperinci

SISTEM OPERASI TERDISTRIBUSI

SISTEM OPERASI TERDISTRIBUSI SISTEM OPERASI TERDISTRIBUSI PENGANTAR DATA TERDISTRIBUSI Materi: 1. Pendahuluan 2. Manfaat Sistem Operasi Terdistribusi 3. Komponen Inti Sistem Operasi Pertemuan: 5 Pendahuluan Sistem operasi terdistribusi

Lebih terperinci

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. Tabel 2.1 Tinjauan Pustaka

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. Tabel 2.1 Tinjauan Pustaka BAB II TINJAUAN PUSTAKA DAN DASAR TEORI 2.1 Tinjauan Pustaka Tinjauan pustaka diambil dari beberapa karya tulis, sebagai berikut : Tabel 2.1 Tinjauan Pustaka No parameter Objek Bahasa interface penulis

Lebih terperinci

Manual Book 5 th NPLC

Manual Book 5 th NPLC Isi Panduan: Total Halaman (+Cover): 16. Manual Book 5 th NPLC Instruksi : Bacalah panduan ini dengan Seksama! Didukung Oleh: Daftar Isi 1. Penjelasan Umum.... 3 1.1 Pilihan Ganda (Multiple Choice Question)....

Lebih terperinci

RULE BOOK IDEAFUSE 2018 ACM ICPC Multi-Provincial Programming Contest

RULE BOOK IDEAFUSE 2018 ACM ICPC Multi-Provincial Programming Contest Peraturan, Syarat, Ketentuan, dan Kriteria Penilaian RULE BOOK IDEAFUSE 2018 ACM ICPC Multi-Provincial Programming Contest DESKRIPSI KOMPETISI ACM ICPC merupakan kompetisi pemrograman yang dinaungi oleh

Lebih terperinci

RULE BOOK ACM-ICPC 2017 ACM ICPC Maranatha Provincial Programming Contest

RULE BOOK ACM-ICPC 2017 ACM ICPC Maranatha Provincial Programming Contest Peraturan, Syarat, Ketentuan, dan Kriteria Penilaian RULE BOOK ACM-ICPC 2017 ACM ICPC Maranatha Provincial Programming Contest DESKRIPSI KOMPETISI ACM ICPC merupakan kompetisi pemrograman yang dinaungi

Lebih terperinci

RULE BOOK IDEAFUSE 2017 ACM ICPC Multi-Provincial Programming Contest

RULE BOOK IDEAFUSE 2017 ACM ICPC Multi-Provincial Programming Contest Peraturan, Syarat, Ketentuan, dan Kriteria Penilaian RULE BOOK IDEAFUSE 2017 ACM ICPC Multi-Provincial Programming Contest DESKRIPSI KOMPETISI ACM ICPC merupakan kompetisi pemrograman yang dinaungi oleh

Lebih terperinci

Bagi peserta OSN 2014 dan calon peserta Open OSN William Gozali, Teknis OSN

Bagi peserta OSN 2014 dan calon peserta Open OSN William Gozali, Teknis OSN Bagi peserta OSN 2014 dan calon peserta Open OSN 2014 William Gozali, Teknis OSN 2014 1 Dokumen ini ditujukan ke semua calon peserta OSN, agar memahami : Persiapan yang seharusnya dilakukan dalam menghadapi

Lebih terperinci

RULE BOOK PROGRAMMING ARTECHNO 2016

RULE BOOK PROGRAMMING ARTECHNO 2016 Programming I Deskripsi Programming merupakan salah satu cabang yang diperlombakan pada acara ARTechno 2016 yang diselenggarakan oleh Universitas Sumatera Utara. Cabang programming merupakan kontes pemrograman

Lebih terperinci

DAFTAR ISI DAFTAR ISI... 1 I. KETENTUAN UMUM... 2 II. III. IV. KETENTUAN KOMPETISI...5 PESERTA...10 PENGAWASAN DAN PENJURIAN...12 V. PENUTUP...14 LAMP

DAFTAR ISI DAFTAR ISI... 1 I. KETENTUAN UMUM... 2 II. III. IV. KETENTUAN KOMPETISI...5 PESERTA...10 PENGAWASAN DAN PENJURIAN...12 V. PENUTUP...14 LAMP BUKU PANDUAN PESERTA TISIGRAM (KOMPETISI PEMROGRAMAN) 2017 HIMPUNAN MAHASISWA KOMPUTER POLITEKNIK NEGERI BANDUNG DAFTAR ISI DAFTAR ISI... 1 I. KETENTUAN UMUM... 2 II. III. IV. KETENTUAN KOMPETISI...5 PESERTA...10

Lebih terperinci

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses Deskripsi dan Kontrol Proses (Pertemuan ke-3) Agustus 2014 Pokok Bahasan Pokok Bahasan: Deskripsi dan Kontrol Proses Sub Pokok Bahasan: Konsep proses Elemen-elemen proses Model proses 2 status, 5 status,

Lebih terperinci

BAB I PENDAHULUAN 1.1 LATAR BELAKANG

BAB I PENDAHULUAN 1.1 LATAR BELAKANG BAB I PENDAHULUAN Bab ini berisi bagian pendahuluan yang mencakup latar belakang, rumusan dan batasan masalah, tujuan, metodologi pengerjaan, serta sistematika pembahasan dari Tugas Akhir ini. 1.1 LATAR

Lebih terperinci

BAB I PERSYARATAN PRODUK

BAB I PERSYARATAN PRODUK BAB I PERSYARATAN PRODUK 1.1 Pendahuluan PT. Telekomunikasi Indonesia, Tbk. adalah salah satu perusahaan terbesar di Indonesia yang bergerak dalam bidang telekomunikasi. Sebagai sebuah perusahaan besar,

Lebih terperinci

3.1 APLIKASI YANG DITANGANI OLEH CODE GENERATOR

3.1 APLIKASI YANG DITANGANI OLEH CODE GENERATOR BAB III ANALISIS Bab ini berisi analisis mengenai aplikasi web target code generator, analisis penggunaan framework CodeIgniter dan analisis perangkat lunak code generator. 3.1 APLIKASI YANG DITANGANI

Lebih terperinci

FALCON PROGRAMMING CONTEST

FALCON PROGRAMMING CONTEST Peraturan, Syarat, Ketentuan, dan Kriteria Penilaian BUKU PANDUAN PESERTA FALCON PROGRAMMING CONTEST for High School Students DESKRIPSI Falcon Programming Contest for High School Students (FPC-HS) merupakan

Lebih terperinci

RULES BOOK IDEAFUSE 2016 ACM ICPC Multi-Provincial

RULES BOOK IDEAFUSE 2016 ACM ICPC Multi-Provincial Peraturan, Syarat, Ketentuan, dan Kriteria Penilaian RULES BOOK IDEAFUSE 2016 ACM ICPC Multi-Provincial DESKRIPSI KOMPETISI ACM ICPC merupakan kompetisi pemrograman yang dinaungi oleh ACM (Association

Lebih terperinci

1. Hardware terdistribusi. 2. Program terdistribusi. Nama : Gede Doddi Raditya Diputra NIM : Kelas : 5.C

1. Hardware terdistribusi. 2. Program terdistribusi. Nama : Gede Doddi Raditya Diputra NIM : Kelas : 5.C Nama : Gede Doddi Raditya Diputra NIM : 0805021099 Kelas : 5.C 1. Hardware terdistribusi Hardware terdistribusi adalah hardware yang pemakaiannya bisa dipakai bersamasama (sharing) yang dihubungkan oleh

Lebih terperinci

3. Tema Kegiatan Kebangkitan Generasi Muda untuk Membangun Bangsa dengan Teknologi dan Kebudayaan Nusantara

3. Tema Kegiatan Kebangkitan Generasi Muda untuk Membangun Bangsa dengan Teknologi dan Kebudayaan Nusantara 1. Pendahuluan DINAMIK (Dies Natalies Mahasiswa Ilmu Komputer) merupakan acara tahunan yang diselenggarakan oleh Kemakom UPI (Keluarga Mahasiswa Komputer UPI). Sebagai bentuk program kerja masa bakti kepengurusan

Lebih terperinci

4. SISTEM OPERASI TERDISTRIBUSI

4. SISTEM OPERASI TERDISTRIBUSI 4. SISTEM OPERASI TERDISTRIBUSI APAKAH SISTEM OPERASI TERDISTRIBUSI? Sistem operasi terdistribusi adalah salah satu implementasi dari sistem terdistribusi, di mana sekumpulan komputer dan prosesor yang

Lebih terperinci

BAB 3 Landasan Teori

BAB 3 Landasan Teori BAB 3 Landasan Teori 3.1 Internet Internet adalah sistem global jaringan komputer yang saling berhubungan yang menggunakan standar Internet Protocol (TCP / IP) untuk menghubungkan perangkat di seluruh

Lebih terperinci

Sistem Jaringan Terdistribusi

Sistem Jaringan Terdistribusi Sistem Jaringan Terdistribusi Apa yang dimaksud dengan Sistem Jaringan Terdistribusi? Apa Keuntungan dan Kerugiannya (permasalahan yang dihadapi)? Pengertian Sistem Terdistribusi adalah Sekumpulan komputer

Lebih terperinci

Sistem Operasi PENGATURAN PROSES

Sistem Operasi PENGATURAN PROSES Sistem Operasi PENGATURAN PROSES Konsep Proses Dalam Sistem Operasi Jenis Proses Subject Penjadwalan Proses Deadlock Concurency Sebuah perangkat lunak yang deprogram sebagai penghubung antara Sistem Operasi

Lebih terperinci

Rulebook. Uinic Programming Competition. Deskripsi Lomba

Rulebook. Uinic Programming Competition. Deskripsi Lomba Rulebook Uinic Programming Competition Deskripsi Lomba Uinic Programming Competition merupakan kompetisi yang diselenggarakan oleh Himpunan Mahasiswa Teknik Informatika UIN Sunan Kalijaga Yogyakarta untuk

Lebih terperinci

TISIGRAM (KOMPETISI PEMROGRAMAN) 2016

TISIGRAM (KOMPETISI PEMROGRAMAN) 2016 BUKU PANDUAN PESERTA 9 APRIL 2016 Last Update: 6 April 2016 HIMPUNAN MAHASISWA KOMPUTER POLITEKNIK NEGERI BANDUNG 2016 DAFTAR ISI DAFTAR ISI... i I. KETENTUAN UMUM... 2 A. Waktu dan Tempat... 2 B. Pendaftaran

Lebih terperinci

Gambar 3.1 Perancangan Sistem

Gambar 3.1 Perancangan Sistem BAB III PERANCANGAN SISTEM Bab ini akan membahas tentang perancangan sistem monitoring yang terbagi menjadi dua bagian, sistem bagian pertama adalah objek yang akan dimonitor, sistem bagian kedua merupakan

Lebih terperinci

TISIGRAM (KOMPETISI PEMROGRAMAN) 2017

TISIGRAM (KOMPETISI PEMROGRAMAN) 2017 BUKU PANDUAN PESERTA TISIGRAM (KOMPETISI PEMROGRAMAN) 2017 HIMPUNAN MAHASISWA KOMPUTER POLITEKNIK NEGERI BANDUNG DAFTAR ISI 1 I. KETENTUAN UMUM2 II. III. IV. KETENTUAN KOMPETISI5 PESERTA10 PENGAWASAN DAN

Lebih terperinci

PERTEMUAN KE <JUDUL PERTEMUAN PRAKTIKUM>

PERTEMUAN KE <JUDUL PERTEMUAN PRAKTIKUM> Tanggal Penyerahan Laporan Praktikum LAPORAN PRAKTIKUM SISTEM OPERASI PERTEMUAN KE NAMA : KELAS : NIM : NAMA : PRAKTIKAN : ASISTEN PRAKTIKUM : STMIK AMIKOM YOGYAKARTA JURUSAN

Lebih terperinci

Bab 1. Pengenalan Sistem Terdistribusi

Bab 1. Pengenalan Sistem Terdistribusi Bab 1. Pengenalan Sistem Terdistribusi 1.1. Definisi Sitem Terdistribusi Sistem distribusi adalah sebuah sistem yang komponennya berada pada jaringan komputer. Komponen tersebut saling berkomunikasi dan

Lebih terperinci

MODUL 2 KOMPONEN, LAYANAN SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 2

MODUL 2 KOMPONEN, LAYANAN SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 2 MODUL 2 KOMPONEN, LAYANAN SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 2 1 KOMPONEN SO LAINNYA Jaringan (Sistem Terdistribusi) Sistem terdistribusi adalah sekumpulan

Lebih terperinci

PENGATURAN PROSES. Proses adalah program yang sedangdieksekusi atau sofware yang sedang dilaksanakan.

PENGATURAN PROSES. Proses adalah program yang sedangdieksekusi atau sofware yang sedang dilaksanakan. PENGATURAN PROSES Proses adalah program yang sedangdieksekusi atau sofware yang sedang dilaksanakan. 1. Konsep Dasar : Multiprogramming system. Melakukan proses satu persatu secara bergantian dalam waktu

Lebih terperinci

I. PENDAHULUAN. jaringan dan aplikasi yang dibuat khusus untuk jaringan. Akibatnya, interaksi

I. PENDAHULUAN. jaringan dan aplikasi yang dibuat khusus untuk jaringan. Akibatnya, interaksi I. PENDAHULUAN 1.1 Latar Belakang Perkembangan teknologi komputer, khususnya dalam hal jaringan komputer sangatlah pesat karena saat ini sudah banyak berbagai macam jenis peralatan jaringan dan aplikasi

Lebih terperinci

BAB II KAJIAN PUSTAKA

BAB II KAJIAN PUSTAKA BAB II KAJIAN PUSTAKA Dalam pengembangan kemampuan automatic grade Marmoset terhadap project dan hasil penilaian pemrograman ini diperlukan beberapa teori untuk mendukung proses pengembangannya. Berikut

Lebih terperinci

APLIKASI BERBASIS WEB

APLIKASI BERBASIS WEB Pendahuluan Komputer sejak diluncurkan pertama kali dengan bobot yang cukup berat hingga hingga saat ini dengan produk notebook yang sangat ringan dan dapat di bawa kemana-mana, berbagai macam aplikasi

Lebih terperinci

BAB III LANDASAN TEORI

BAB III LANDASAN TEORI BAB III LANDASAN TEORI III.1. Sistem Informasi Sistem informasi adalah suatu sistem yang dibuat oleh manusia yang terdiri dari komponen komponen dalam organisasi untuk mencapai suatu tujuan yaitu menyajikan

Lebih terperinci

Aplikasi Komputer. Pengenalan, fungsi, program-program utilitas dan jenisjenis sistem operasi. Ita Novita, S.Kom, M.T.I. Modul ke:

Aplikasi Komputer. Pengenalan, fungsi, program-program utilitas dan jenisjenis sistem operasi. Ita Novita, S.Kom, M.T.I. Modul ke: Modul ke: Aplikasi Komputer Pengenalan, fungsi, program-program utilitas dan jenisjenis sistem operasi Fakultas Ilmu Komputer Ita Novita, S.Kom, M.T.I Program Studi Informatika www.mercubuana.ac.id Pengenalan

Lebih terperinci

BAB IV ANALISIS DAN PERANCANGAN SISTEM. hasil analisis ini digambarkan dan didokumentasiakan dengan metodologi

BAB IV ANALISIS DAN PERANCANGAN SISTEM. hasil analisis ini digambarkan dan didokumentasiakan dengan metodologi BAB IV ANALISIS DAN PERANCANGAN SISTEM 4.1. Analisis Sistem yang Sedang Berjalan Kegiatan analisis sistem yang berjalan dilakukan dengan analisis yang berorientasi pada objek-objek yang diperlukan oleh

Lebih terperinci

BAB II TINJAUAN PUSTAKA. Sistem Operasi adalah sebuah perangkat lunak (software) yang berfungsi

BAB II TINJAUAN PUSTAKA. Sistem Operasi adalah sebuah perangkat lunak (software) yang berfungsi BAB II TINJAUAN PUSTAKA 2.1. Landasan Teori 2.1.1 Sistem Operasi Sistem Operasi adalah sebuah perangkat lunak (software) yang berfungsi untuk mengalokasikan sumber daya untuk proses. Menurut Stalling (2005)

Lebih terperinci

PEMBUATAN CONTENT MANAGEMENT SYSTEM (CMS) UNTUK SISTEM PENJURIAN LOMBA INFORMATICS LOGICAL PROGRAMMING COMPETITION DI UNIVERSITAS SURABAYA

PEMBUATAN CONTENT MANAGEMENT SYSTEM (CMS) UNTUK SISTEM PENJURIAN LOMBA INFORMATICS LOGICAL PROGRAMMING COMPETITION DI UNIVERSITAS SURABAYA PEMBUATAN CONTENT MANAGEMENT SYSTEM (CMS) UNTUK SISTEM PENJURIAN LOMBA INFORMATICS LOGICAL PROGRAMMING COMPETITION DI UNIVERSITAS SURABA Santos Sabanari Jurusan Teknik Informatika / Fakultas Teknik Universitas

Lebih terperinci

BAB 1 PENDAHULUAN. semua kalangan masyarakat memiliki telepon seluler, personal digital assistant

BAB 1 PENDAHULUAN. semua kalangan masyarakat memiliki telepon seluler, personal digital assistant BAB 1 PENDAHULUAN 1.1 Latar Belakang Teknologi mobile telah menjadi bagian kehidupan kita sehari-hari. Hampir semua kalangan masyarakat memiliki telepon seluler, personal digital assistant (PDA) atau sejenisnya

Lebih terperinci

Syarat & Ketentuan. Ketentuan Umum Kompetisi FesTIval 2017

Syarat & Ketentuan. Ketentuan Umum Kompetisi FesTIval 2017 Deskripsi Competitive Programming Contest (CPC) FesTIval 2017 merupakan salah satu kompetisi pemrograman yang diselenggarakan oleh Himpunan Mahasiswa Teknik Informatika (HIMTI) Universitas Multimedia Nusantara,

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Java telah menjadi salah satu bahasa pemrograman yang cukup populer di industri software internasional maupun domestik. Java memiliki keuntungan bahwa banyak platform

Lebih terperinci

Mata Kuliah : Sistem Operasi Kelas : Teknik Informatika 4

Mata Kuliah : Sistem Operasi Kelas : Teknik Informatika 4 Mata Kuliah : Sistem Operasi Kelas : Teknik Informatika 4 Part I Pilih jawaban yang paling tepat! 1. Pendekatan desain microkernel yang dimodifikasi merupakan jenis kernel? a. Kernel hibrida b. exokernel

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang. 1.2 Rumusan Masalah

BAB 1 PENDAHULUAN. 1.1 Latar Belakang. 1.2 Rumusan Masalah BAB 1 PENDAHULUAN 1.1 Latar Belakang Server merupakan kebutuhan utama bagi hampir setiap perusahaan maupun untuk para pengguna pada umumnya. Akan tetapi server merupakan sebuah mesin yang terhubung ke

Lebih terperinci

SISTEM OPERASI TERDISTRIBUSI

SISTEM OPERASI TERDISTRIBUSI SISTEM OPERASI TERDISTRIBUSI Sistem Operasi (Operating System atau OS) Adalah Perangkat lunak sistem yang bertugas untuk melakukan kontrol dan manajemen perangkat keras serta operasi-operasi dasar sistem,

Lebih terperinci

BAB I PENDAHULUAN. I.1 Pendahuluan

BAB I PENDAHULUAN. I.1 Pendahuluan BAB I PENDAHULUAN I.1 Pendahuluan Dalam kegiatan manusia sehari-hari, terutama dalam kegiatan transaksi, seperti transaksi perbankan, rekam medis, transaksi jual beli dan transaksi lainnya harus dicatat

Lebih terperinci

BAB III LANDASAN TEORI. permasalahan yang dibahas dan juga menjelaskan aplikasi-aplikasi yang akan

BAB III LANDASAN TEORI. permasalahan yang dibahas dan juga menjelaskan aplikasi-aplikasi yang akan BAB III LANDASAN TEORI Pada bab ini akan dijelaskan dasar-dasar teori yang berhubungan dengan permasalahan yang dibahas dan juga menjelaskan aplikasi-aplikasi yang akan digunakan. Hal ini sangat penting

Lebih terperinci

PENDAHULUAN. Gambar 1.1 Hasil Survey Webserver oleh Netcraft [NET17]

PENDAHULUAN. Gambar 1.1 Hasil Survey Webserver oleh Netcraft [NET17] PENDAHULUAN Dalam bab ini dijelaskan secara umum mengenai latar belakang, identifikasi masalah, lingkup tugas akhir, tujuan tugas akhir, metodologi tugas akhir beserta sistematika penulisan laporan tugas

Lebih terperinci

BAB II LANDASAN TEORI. Pada tahap ini berisi pengertian dan penjelasan teori-teori yang digunakan penulis untuk pembangunan sistem.

BAB II LANDASAN TEORI. Pada tahap ini berisi pengertian dan penjelasan teori-teori yang digunakan penulis untuk pembangunan sistem. BAB II LANDASAN TEORI Pada tahap ini berisi pengertian dan penjelasan teori-teori yang digunakan penulis untuk pembangunan sistem. 2.1 Pengertian Sistem Sistem dapat didefinisikan dengan pendekatan prosedur

Lebih terperinci

BAB III LANDASAN TEORI

BAB III LANDASAN TEORI BAB III LANDASAN TEORI III.1. Sistem Informasi Sistem dapat didefinisikan sebagai suatu kesatuan yang terdiri dari dua atau lebih komponen atau subsistem yang berinteraksi untuk mecapai suatu tujuan, sedangkan

Lebih terperinci

perguruan tinggi (SD, SMP, SMA, atau sederajat), sedangkan SCPC diperuntukkan bagi mahasiswa (Diploma, S1, atau S2).

perguruan tinggi (SD, SMP, SMA, atau sederajat), sedangkan SCPC diperuntukkan bagi mahasiswa (Diploma, S1, atau S2). Deskripsi Competitive Programming Contest CompFest 8 merupakan kompetisi pemrograman berskala nasional yang diselenggarakan oleh Fakultas Ilmu Komputer Universitas Indonesia. Competitive Programming Contest

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang. 1.2 Rumusan Masalah

BAB 1 PENDAHULUAN. 1.1 Latar Belakang. 1.2 Rumusan Masalah BAB 1 PENDAHULUAN 1.1 Latar Belakang Penetration test adalah kegiatan simulasi yang berfungsi untuk menguji ketahanan suatu sistem terhadap serangan dan mengantisipasinya. Lab.Jarkom Fakultas Ilmu Terapan

Lebih terperinci

Struktur Fungsi CPU. Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 03 --

Struktur Fungsi CPU. Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 03 -- Struktur Fungsi CPU Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 03 -- This presentation is revised by @hazlindaaziz, STMIK, 2014 Main Material: Acknowledgement

Lebih terperinci

BAB IV IMPLEMENTASI DAN EVALUASI SISTEM. disesuaikan dengan desain sistem yang sudah dibuat. Rancang Bangun sistem

BAB IV IMPLEMENTASI DAN EVALUASI SISTEM. disesuaikan dengan desain sistem yang sudah dibuat. Rancang Bangun sistem BAB IV IMPLEMENTASI DAN EVALUASI SISTEM 1.1. Implementasi Sistem Pada tahap ini merupakan proses pembuatan perangakat lunak yang disesuaikan dengan desain sistem yang sudah dibuat. Rancang Bangun sistem

Lebih terperinci

Making Provisions for Applications and Services

Making Provisions for Applications and Services Making Provisions for Applications and Services Ketika seseorang mengakses informasi pada suatu perangkat (device), baik itu PC, laptop, PDA, ponsel, atau device lain yang terhubung ke jaringan, data tidak

Lebih terperinci

Bab I Pendahuluan. I.1 Latar Belakang

Bab I Pendahuluan. I.1 Latar Belakang Bab I Pendahuluan I.1 Latar Belakang Secara umum, manajemen jaringan adalah layanan yang memanfaatkan berbagai tool, aplikasi, dan device untuk membantu administrator jaringan memonitor dan mengelola jaringan

Lebih terperinci

Diperkenalkan pertama oleh tim Sun System yang dipimpin Patrick Naughton dan James Gosling tahun 1991 dengan code

Diperkenalkan pertama oleh tim Sun System yang dipimpin Patrick Naughton dan James Gosling tahun 1991 dengan code PENGANTAR JAVA A. Asal Mula JAVA B. Kelebihan JAVA C. Ciri Khas JAVA D. Perangkat Lunak E. Penerapan JAVA F. Java Virtual Machine G. Pengembangan Program Java A. Asal Mula JAVA Diperkenalkan pertama oleh

Lebih terperinci

Spesifikasi Tugas Besar II IF3055 Sistem Operasi

Spesifikasi Tugas Besar II IF3055 Sistem Operasi Spesifikasi Tugas Besar II IF3055 Sistem Operasi Tujuan Tujuan dari pemberian tugas ini adalah Peserta mengetahui mekanisme filesystem. Peserta mengetahui mekanisme IPC. Deskripsi Pada tugas besar kali

Lebih terperinci

Rancang Bangun Aplikasi Perangkat Bergerak Layanan Pemesanan Barang (Studi Kasus Dinas Kebersihan dan Pertamanan Kota Surabaya )

Rancang Bangun Aplikasi Perangkat Bergerak Layanan Pemesanan Barang (Studi Kasus Dinas Kebersihan dan Pertamanan Kota Surabaya ) A783 Rancang Bangun Aplikasi Perangkat Bergerak Layanan Pemesanan Barang (Studi Kasus Dinas Kebersihan dan Pertamanan Kota Surabaya ) Shoffi Izza Sabilla, Sarwosri, dan Erma Suryani Jurusan Teknik Informatika,

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Perkembangan teknologi yang sangat cepat mengakibatkan manusia menginginkan segala sesuatunya dengan mudah dan ringkas. Bertukar informasi adalah suatu hal yang sangat

Lebih terperinci

BAB 1 PENDAHULUAN. Universitas Kristen Maranatha

BAB 1 PENDAHULUAN. Universitas Kristen Maranatha BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah Pengajaran mata kuliah pemrograman biasanya diikuti oleh banyak mahasiswa. Dengan semakin besarnya jumlah mahasiswa dan banyaknya tugas yang harus diperiksa,

Lebih terperinci

BAB III ANALISIS DAN PENYELESAIAN MASALAH

BAB III ANALISIS DAN PENYELESAIAN MASALAH BAB III ANALISIS DAN PENYELESAIAN MASALAH 3.1 Deskripsi Sistem Gambar III-1 Deskripsi Umum Sistem Pada gambar III-1 dapat dilihat deskripsi sistem sederhana yang mendeteksi intrusi pada jaringan menggunakan

Lebih terperinci

PENGANTAR APLIKASI KOMPUTER

PENGANTAR APLIKASI KOMPUTER Pada saat pertama kali komputer digunakan, pengguna dihadapkan pada sulitnya untuk mengoperasikan komputer tersebut. Semakin banyak perangkat tambahan yang bisa ditambahkan kedalam komputer, semakin rumit

Lebih terperinci

Modul ke: APLIKASI KOMPUTER. Pengoperasian Dasar Windows. Fakultas FASILKOM. Ramayanti, S.Kom, MT. Program Studi Teknik Informatika

Modul ke: APLIKASI KOMPUTER. Pengoperasian Dasar Windows. Fakultas FASILKOM. Ramayanti, S.Kom, MT. Program Studi Teknik Informatika Modul ke: 3 Desi Fakultas FASILKOM APLIKASI KOMPUTER Pengoperasian Dasar Windows Ramayanti, S.Kom, MT Program Studi Teknik Informatika Pendahuluan Windows Sistem Operasi Basis GUI (Graphical User Interface)

Lebih terperinci

PEMROGRAMAN WEB. Agussalim

PEMROGRAMAN WEB. Agussalim PEMROGRAMAN WEB Agussalim Deskripsi Matakuliah Matakuliah ini mengajarkan tentang: Konsep Pemrograman WEB Pemrograman WEB statis dan dinamis HTML (Hyper Text Markup Language) PHP Hypertext preprocessor,

Lebih terperinci

3.1 Ganesha Digital Library

3.1 Ganesha Digital Library BAB III ANALISIS Dalam bab ini akan dibahas mengenai analisis perangkat lunak yang akan dibangun. Analisis dilakukan pada sistem lama dan sistem baru. Analisis pada sistem lama meliputi penerapan folksonomy,

Lebih terperinci

BAB II LANDASAN TEORI. beberapa ahli, definisi sistem adalah sebagai berikut.

BAB II LANDASAN TEORI. beberapa ahli, definisi sistem adalah sebagai berikut. BAB II LANDASAN TEORI 2.1 Sistem Sistem memiliki beberapa definisi yang berbeda-beda menurut pendapat beberapa ahli, definisi sistem adalah sebagai berikut. 1. Menurut Jogiyanto (1999:1), sistem adalah

Lebih terperinci

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Arsitektur software three tier berkembang pada tahun 1990an untuk mengatasi keterbatasan arsitektur two-tier(client-server). Pada gambar I-1 dapat dilihat bahwa arsitektur

Lebih terperinci

CONTOH PENDSTRIBUSIAN HARDWARE

CONTOH PENDSTRIBUSIAN HARDWARE CONTOH PENDSTRIBUSIAN HARDWARE Jaringan komputer adalah sebuah kumpulan komputer, printer dan peralatan lainnya yang terhubung dalam satu kesatuan. Informasi dan data bergerak melalui kabel-kabel atau

Lebih terperinci

Programming Competition

Programming Competition Programming Competition Rulebook Programming Competition Deskripsi dan Tema Lomba Arkavidia Programming Competition adalah kompetisi pemrograman yang dapat diikuti oleh mahasiswa-mahasiswa se-indonesia.

Lebih terperinci

ARSITEKTUR SISTEM. Alif Finandhita, S.Kom, M.T. Alif Finandhita, S.Kom, M.T 1

ARSITEKTUR SISTEM. Alif Finandhita, S.Kom, M.T. Alif Finandhita, S.Kom, M.T 1 ARSITEKTUR SISTEM Alif Finandhita, S.Kom, M.T Alif Finandhita, S.Kom, M.T 1 Sistem Terpusat (Centralized Systems) Sistem Client Server (Client-Server Systems) Sistem Server (Server Systems) Sistem Paralel

Lebih terperinci

PERTEMUAN 13 STRATEGI PENGUJIAN PERANGKAT LUNAK

PERTEMUAN 13 STRATEGI PENGUJIAN PERANGKAT LUNAK PERTEMUAN 13 STRATEGI PENGUJIAN PERANGKAT LUNAK Strategi Pengujian Strategi uji coba perangkat lunak dilakukan untuk memudahkan para perancang untuk menentukan keberhasilan system yang telah dikerjakan

Lebih terperinci

Pengumpulan Data. Analisa Data. Pembuatan Use Case,Activity dan Sequence Diagram. Perancangan Database. Bisnis Proses.

Pengumpulan Data. Analisa Data. Pembuatan Use Case,Activity dan Sequence Diagram. Perancangan Database. Bisnis Proses. BAB III ANALISA DAN PERANCANGAN SISTEM Pada bab ini menjelaskan tentang bagian analisa dan perancangan sistem. Analisa sistem dilakukan dengan mendeskripsikan, kebutuhan perangkat lunak yang meliputi use

Lebih terperinci

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB IV IMPLEMENTASI DAN PENGUJIAN BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1 Implementasi Sistem Implementasi merupakan penerapan dari proses analisis dan perangcangan yang telah dibahas dalam bab sebelumnya. Pada tahapan ini terdapat dua aspek

Lebih terperinci

BAB 1 PENDAHULUAN Latar Belakang

BAB 1 PENDAHULUAN Latar Belakang 1 BAB 1 PENDAHULUAN 1.1. Latar Belakang Competitive programming merupakan terminologi untuk berbagai jenis kompetisi di bidang pemrograman. Kompetisi pemrograman ini bertujuan untuk menyelesaikan masalah-masalah

Lebih terperinci

BAB I PENDAHULUAN. seiring perkembangan teknologi mikroprosesor, proses komputasi kini dapat

BAB I PENDAHULUAN. seiring perkembangan teknologi mikroprosesor, proses komputasi kini dapat BAB I PENDAHULUAN I.1 Latar Belakang Proses komputasi yang dapat dilakukan oleh komputer telah berkembang dengan pesat. Pada awalnya proses komputasi hanya dapat dilakukan secara sekuensial saja. Sebuah

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Sistem Sistem adalah kumpulan dari elemen-elemen yang berinteraksi untuk mencapai suatu tujuan tertentu. Menurut Herlambang (2005), definisi sistem dapat dibagi menjadi dua pendekatan,

Lebih terperinci

SISTEM TERDISTRIBUSI. Agenda : - Pengantar Sistem Terdistribusi - Karakteristik Sistem Terdistribusi - Model Sistem Terdistribusi. Yuli Purwati, M.

SISTEM TERDISTRIBUSI. Agenda : - Pengantar Sistem Terdistribusi - Karakteristik Sistem Terdistribusi - Model Sistem Terdistribusi. Yuli Purwati, M. SISTEM TERDISTRIBUSI Agenda : - Pengantar Sistem Terdistribusi - Karakteristik Sistem Terdistribusi - Model Sistem Terdistribusi Sistem Terdistribusi adalah Sekumpulan komputer otonom yang terhubung ke

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Perkembangan teknologi informasi khususnya teknologi informasi berbasis Mobile ini, dirasa sangat pesat dan hal ini berpengaruh terhadap aspek pekerjaan. Hampir semua

Lebih terperinci

BAB IV ANALISIS DAN PERANCANGAN SISTEM. proses kerja yang sedang berjalan. Pokok-pokok yang di analisis meliputi analisis

BAB IV ANALISIS DAN PERANCANGAN SISTEM. proses kerja yang sedang berjalan. Pokok-pokok yang di analisis meliputi analisis BAB IV ANALISIS DAN PERANCANGAN SISTEM 4.1. Analisis Sistem yang Berjalan Analisis sistem yang berjalan dilakukan dengan tujuan untuk mengetahui proses kerja yang sedang berjalan. Pokok-pokok yang di analisis

Lebih terperinci

APLIKASI SISTEM PENDIDIKAN JARAK JAUH BERBASIS WEB

APLIKASI SISTEM PENDIDIKAN JARAK JAUH BERBASIS WEB Abstrak APLIKASI SISTEM PENDIDIKAN JARAK JAUH BERBASIS WEB Metra Cahya Utama, Asfira Sagitri, Cokorda Raka A.J, Dian Tresna N., DivKom HME ITB Computer Network Research Group Institut Teknologi Bandung

Lebih terperinci

Bab 3: Proses-Proses. Konsep Proses

Bab 3: Proses-Proses. Konsep Proses Bab 3: Proses-Proses Konsep Proses Penjadwalan Proses Operasi pada Proses Proses yang bekerja sama (Cooperating Processes) Komunikasi antar Proses (Interprocess Communication) Komunikasi pada sistem Client-Server

Lebih terperinci

BAB III ANALISIS. 3.1 Analisis Model Business Process Outsourcing

BAB III ANALISIS. 3.1 Analisis Model Business Process Outsourcing BAB III ANALISIS 3.1 Analisis Model Outsourcing Dari beberapa penjelasan mengenai model Outsourcing (BPO) pada subbab 2.3.1, diajukan Gambar III.1 sebagai gambaran umum dari BPO pada Tugas Akhir ini. Beberapa

Lebih terperinci

APLIKASI KOMPUTER (APLIKOM)

APLIKASI KOMPUTER (APLIKOM) MODUL PERKULIAHAN APLIKASI KOMPUTER (APLIKOM) Pengoperasian Dasar Windows Fakultas Program Studi Tatap Muka Kode MK Disusun Oleh Ilmu Komputer Teknik Informatika 03 Abstract Modul ini membahas tentang

Lebih terperinci

BAB I PERSYARATAN PRODUK

BAB I PERSYARATAN PRODUK Universitas Kristen Maranatha BAB I PERSYARATAN PRODUK 1.1 Pendahuluan RatRace merupakan sebuah permainan yang di desain khusus untuk mempelajari dan juga menguji pengetahuan para pengguna dalam bidang

Lebih terperinci

Pengujian Perangkat Lunak

Pengujian Perangkat Lunak Pengujian Perangkat Lunak Shinta P. Sari White Box Pengujian white-box berfokus pada struktur kontrol program. Test case dilakukan untuk memastikan bahwa semua statement pada program telah dieksekusi paling

Lebih terperinci

BAB 2 LANDASAN TEORI. Web atau Situs dapat diartikan sebagai kumpulan halaman-halaman yang digunakan

BAB 2 LANDASAN TEORI. Web atau Situs dapat diartikan sebagai kumpulan halaman-halaman yang digunakan BAB 2 LANDASAN TEORI 2.1 Pengertian Web Web atau Situs dapat diartikan sebagai kumpulan halaman-halaman yang digunakan untuk menampilkan informasi berupa teks, gambar, animasi, suara, dan atau gabungan

Lebih terperinci

BAB 1 PENDAHULUAN 1.1 LATAR BELAKANG

BAB 1 PENDAHULUAN 1.1 LATAR BELAKANG BAB 1 PENDAHULUAN 1.1 LATAR BELAKANG Pada umumnya membuat sebuah task list masih dibuat dengan cara manual, yaitu mencatatkan daftar tugas yang akan kita lakukan pada sebuah kertas. Pengecekan waktu juga

Lebih terperinci

MANAJEMEN MEMORI SISTEM OPERASI

MANAJEMEN MEMORI SISTEM OPERASI MANAJEMEN MEMORI SISTEM OPERASI Manajemen Memori Memori adalah pusat dari operasi pada sistem komputer modern, berfungsi sebagai tempat penyimpanan informasi yang harus diatur dan dijaga sebaik baiknya.

Lebih terperinci

perguruan tinggi (SD, SMP, SMA, atau sederajat), sedangkan SCPC diperuntukkan bagi mahasiswa (Diploma, S1, atau S2).

perguruan tinggi (SD, SMP, SMA, atau sederajat), sedangkan SCPC diperuntukkan bagi mahasiswa (Diploma, S1, atau S2). Deskripsi Competitive Programming Contest CompFest 8 merupakan kompetisi pemrograman berskala nasional yang diselenggarakan oleh Fakultas Ilmu Komputer Universitas Indonesia. Competitive Programming Contest

Lebih terperinci