Tahukah kamu? Rata-rata mahasiswa semester akhir jurusan teknik informatika, peminatan software engineering merasa bahwa skill coding mereka kurang. Lemahnya skill coding mahasiswa di Indonesia adalah penyakit gawat, menular, mematikan dan secepatnya harus diberantas tuntas :). Mungkinkah ini yang membuat produksi software kita secara kuantitas dan kualitas dibawah negara tetangga, padahal menurut laporan IDC dan Gartner, jumlah developer profesional Indonesia mencapai 71.600 orang di tahun 2008. Tahukah kalian bahwa jumlah tersebut tiga kalinya malaysia dan empat kalinya singapore? Perlu diketahui bahwa jurusan komputing di Indonesia mengambil acuan kurikulum IEEE Computing Curricula 2005. Asosiasi Perguruan Tinggi Informatika dan Komputer alias APTIKOM menjadi wadah prodi atau jurusan computing untk membuat kurikulum inti yang mengacu ke IEEE Computing Curricula 2005. Meskipun pada beberapa sisi yang tidak konsisten sebab Computer Engineering (Teknik/Sistem Komputer), Information System (Sistem Informasi) saja yang direkomendasikan menjadi jurusan atau prodi. Computer Science (ilmu komputer), information technology (Teknologi Informasi) dan Software Engineering (Rekayasa Perangkat Lunak) disuruh bercampur di satu wadah dengan nama Teknik Informatika. 🙁 Padahal sebenarnya pembobotan materi yang dibidik berbeda-beda. Silahkan cek gambar di bawah, target kemampuan yang diharapkan dari lulusan masing-masing cabang rumpun informatika menurut IEEE Computing Curricula 2005. Secara IEEE Computing Curricula 2005, mahasiswa prodi / jurusan Computer Engineering misalnya, boleh tidak mengerti masalah sistem informasi atau teoritika database. Mahasiswa Sistem Informasi dan Teknologi Informasi boleh tidak mengerti asitektur komputer. Tapi untuk skill coding seluruh mahasiswa ilmu computing wajib hukumnya (sifatnya fardu ain) untuk menguasai skill coding 🙂 Menurut Romi Satrio Wahono, seorang dosen senior dan juga software engineer, memaparkan cara untuk mendesain pembelajaran agar mahasiswa memiliki skill coding yang mumpuni, yaitu sebagai berikut. Desain mata kuliah untuk tidak mengajarkan banyak bahasa pemrograman dengan paradigma yang sama. Mengajari mahasiswa dengan banyak bahasa pemrograman, artinya mendidik mereka untuk tidak menguasai satupun bahasa pemrograman. Fokuskan ke satu bahasa pemrograman utama dan gunakan untuk penugasan di setiap mata kuliah. Capai level mahir di satu bahasa pemrograman, baru berpindah ke bahasa pemrograman lain. Libatkan mahasiswa dalam berbagai project riil untuk melatih dan mendekatkan ilmu yang dipelajari ke dunia industri. Bila memungkinkan hindari ujian bergaya multiple choice, arahkan ke develop project atau laporan analisa. Bagi mahasiswa yang mengerjakan tugas akhir, khususnya untuk yang software (product) development, wajibkan menggunakan tahapan software development life cycle (specification, design, coding, testing). Latih menyusun business process dan mendesain software dengan menggunakan UML yang relatif sudah standard. Bagi kalian yang benar-benar ingin mahir programming, maka ada baiknya masuk ke jurusan software engineering karena akan lebih fokus dibahas mengenai cara memulai coding dari pemula menjadi mahir. Di Indonesia jurusan software engineering sudah mulai bermunculan, Salah satunya adalah ST3 Telkom Purwokerto yang membuka Program Studi S1 Software Engineering. Jurusan S1 Software Engineering ST3 Telkom Purwokerto menerapkan kurikulumnya ke IEEE Computing Curricula dan juga merupakan anggota dari APTIKOM Indonesia. Selain itu memiliki pengajar yang sudah berpengalaman di industri IT Indonesia. ST3 Telkom Purwokerto merupakan perguruan tinggi yang berada dibawah naungan yayasan pendidikan telkom yang terbukti berkualitas mendidik generasi penerus bangsa. Jadi tunggu apalagi, segera daftarkan diri anda sebelum tanggal 8 September 2017. Untuk pendaftaran silahkan menghubungi Customer Service Center ST3 Telkom di Jl. DI. Panjaitan No. 128 Purwokerto (0281) 641629. Website: www.st3telkom.ac.id Atau di: http://pmb.st3telkom.ac.id Fan Page: ST3 TELKOM Instagram: pmbst3telkom Line: st3telkom WA: 081228319222 (Prima) atau 085101624154 (Ira)
Read MoreTahukah kamu ? Menjadi seorang software engineer tidak hanya menjadi orang yang pintar akan hal algoritma, code, dan desain interface (GUI). Akan tetapi seorang software engineer juga harus mempertimbangkan model pengembangan apa yang cocok diterapkan untuk project pengembangan perangkat lunak yang sedang dijalankan. Dikarenakan, model yang digunakan akan berpengaruh pada kinerja dari tim dan juga dapat menunjang keberhasilan suatu project pembuatan perangkat lunak. Terdapat bermacam-macam model pengembangan perangkat lunak, contohnya adalah Rational Unified Process (RUP), Extreme Programming (XP), Agile Modeling, dan Scrum. 1. Rational Unified Process (RUP) Rational Unified Process (RUP) merupakan suatu model pengembangan sistem secara objek oriented yang dikembangkan oleh Rational Rose, bagian dari IBM. Secara luas, RUP telah diakui sebagai standar metodologi pengembangan sistem berorientasi objek. Vesri asli dari RUP didefinisikan sangat rumit untuk setiap kegiatan, namun versi terbaru dari RUP yakni metodologinya lebih sederhana. Ciri utama metode ini adalah menggunakan use-case driven dan pendekatan iteratif untuk siklus pengembangan perangkat lunak. >> RUP tepat digunakan saat kondisi : a. Pengembangan perangkat lunak yang berorientasi objek dengan berfokus pada UML (Unified Modeling Language). b. Mempunyai waktu pengembangan yang panjang. c. Dikembangkan pada perangkat lunak sebagai sarana interaksi antara pengguna dan perangkat keras. d. Mempunyai tim programmer yang cukup banyak. e. Pengembangan dan perubahan perangkat lunak berdasarkan kebutuhan user. >> Keuntungan Pengembangan Perangkat Lunak RUP : a. Menyediakan akses yang mudah terhadap pengetahuan dasar bagi anggota tim. b. Menyediakan petunjuk bagaimana menggunakan UML secara efektif. c. Mendukung proses pengulangan dalam pengembangan software. d. Memungkinkan adanya penambahan-penambahan pada proses. e. Memungkinkan untuk secara sistematis mengontrol perubahan-perubahan yang terjadi pada software selama proses pengembangannya. f. Memungkinkan untuk menjalankan test case dengan menggunakan Rational Test Manager Tool >> Kekurangan Pengembangan Perangkat Lunak RUP : a. Metodologi ini hanya dapat digunakan pada pengembangan perangkat lunak yang berorientasi objek dengan berfokus pada UML (Unified Modeling Language). b. Membutuhkan waktu yang cukup lama dibandingkan XP dan Scrum 2. Extreme Programming (XP) XP merupakan suatu model yang tergolong dalam pendekatan agile yang diusulkan oleh Kent Back. Menurut penjelasannya, definisi XP adalah sebagai berikut: “Extreme Programming (XP) is a lightweight, efficient, low-risk, flexible, predictable, scientific, and fun way to develop software”. Model ini cenderung menggunakan pendekatan Object-Oriented serta tahapan-tahapan yang harus dilalui antara lain: Planning, Design, Coding, dan Testing. Sasaran Extreme Programming adalah tim yang dibentuk berukuran antara kecil sampai medium saja, tidak perlu menggunakan sebuah tim yang besar. Hal ini dimaksudkan untuk menghadapi requirements yang tidak jelas maupun terjadinya perubahan-perubahan requirements yang sangat cepat. Extreme Programming merupakan agile methods yang paling banyak digunakan dan menjadi sebuah pendekatan yang sangat terkenal. >> XP tepat digunakan saat kondisi: a. Keperluan berubah dengan cepat b. Resiko tinggi dan ada proyek dengan tantangan yang baru c. Tim programmer sedikit, yaitu 2-10 orang d. Mampu mengotomatiskan tes e. Ada campur tangan klien secara langsung >> Kelemahan XP: a. Cerita-cerita yang menunjukkan requirements kemungkinan besar tidak lengkap sehingga Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima. b. Tidak bisa membuat kode yang detail di awal (prinsip simplicity dan juga anjuran untuk melakukan apa yang diperlukan hari itu juga). c. XP tidak memiliki dokumentasi formal yang dibuat selama pengembangan. Satu-satunya dokumentasi adalah dokumentasi awal yang dilakukan oleh user. 3. Agile Modeling Agile Modeling merupakan filosofi tentang bagaimana membangun model dengan beberapa diantaranya dilakukan dengan format yang terperinci sedangkan model lain beberapa ada yang dilakukan secara samar dan minimalis. Agile Software Development juga melihat pentingnya komunikasi antara anggota tim, antara orang-orang teknis dan businessman, serta antara developer dan managernya. Ciri lain dari Agile Software Development adalah klien menjadi bagian dari tim pembangun software. >> Kelebihan dari Agile Modeling: a. Meningkatkan kepuasan kepada klien b. Pembangunan sistem dibuat lebih cepat c. Mengurangi resiko kegagalan implementasi software dari segi non-teknis d. Jika pada saat pembangunan system terjadi kegagalan,kerugian dari segi materi relative kecil. >> Kelemahan dari Agile Modeling: Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima. 4. Scrum Scrum bermula ketika anak buah Jeff Sutherland yang bekerja di Easel Corporation membaca tulisan dari Professor Takeuchi Tanaka yang dimuat di Harvard Business Review mengenai manajemen proyek pada tahun 1993. Tulisan tersebut memuat bagaimana Professor Takeuchi Tanaka kagum dengan tim olahraga Rugby yang bekerja bersama menyingkirkan semua hambatan yang ada di depannya. Professor Takeuchi Tanaka lalu membawa konsep ini ke manajemen proyek dan menamakan metode kerja ini Scrum. Scrum merupakan suatu kerangka kerja yang berupa deskripsi rinci tentang bagaimana segala sesuatu yang harus dilakukan pada proyek. Hal ini dilakukan dikarenakan tim akan tahu bagaimana cara terbaik untuk memecahkan masalah yang disajikan untuk mereka. Ada 3 elemen organisasi utama pada scrum yaitu product owner, Scrum master, dan Scrum team. Scrum Master dapat dianggap sebagai pelatih / guru bagi tim yang mengajarkan cara kerja lebih kolaboratif dan menyenangkan dalam mengembangkan software. Product Owner mewakili bisnis, pelanggan atau pengguna dan memandu tim ke arah pengembangan produk yang tepat. Sedangkan Scrum Team merupakan grup pengembang kecil biasanya terdiri dari 5-9 orang. Untuk project yang sangat besar, biasanya pekerjaan akan dibagi dan didelegasikan ke grup-grup kecil. Jika sangat dibutuhkan scrum master juga dapat ikut membantu dalam koordinasi team. >> Scrum tepat digunakan saat kondisi: a. Keperluan berubah dengan cepat b. Tim programmer sedikit, yaitu 5-9 orang c. Pelanggan tidak terlalu paham dengan apa yang diinginkan >> Scrum memiliki prinsip yaitu: a. Ukuran tim yang kecil melancarkan komunikasi, mengurangi biaya, dan memberdayakan satu sama lain b. Proses dapat beradaptasi terhadap perubahan teknis dan bisnis c. Proses menghasilkan beberapa software increment d. Pembangunan dan orang yang membangun dibagi dalam tim yang kecil e. Dokumentasi dan pengujian terus menerus dilakukan setelah software dibangun f. Proses scrum mampu menyatakan bahwa produk selesai kapanpun diperlukan >> Kelebihan Scrum antara lain: a. Keperluan berubah dengan cepat b. Tim berukuran kecil sehingga melancarkan komunikasi, mengurangi biaya dan memberdayakan satu sama lain c. Pekerjaan terbagi-bagi sehingga dapat diselesaikan dengan cepat d. Dokumentasi dan pengujian terus menerus dilakukan setelah software dibangun e. Proses Scrum mampu menyatakan bahwa produk selesai kapanpun diperlukan >> Kelemahan Scrum antara lain: Developer harus selalu siap dengan perubahan karena perubahan akan
Read MoreTahukah kamu? Perangkat lunak (software) memiliki beberapa karakteristik dan klasifikasi, diantaranya: Karakteristik Perangkat Lunak Setiap individu menilai perangkat lunak secara berbeda. Ini karena mereka terlibat dengan perangkat lunak dengan cara yang berbeda. Misalnya, pengguna ingin perangkat lunak tampil sesuai dengan kebutuhan mereka. Demikian pula, pengembang (developer) yang terlibat dalam perancangan, pengkodean, dan pemeliharaan perangkat lunak mengevaluasi perangkat lunak dengan melihat karakteristik internalnya, sebelum mengirimkannya ke pengguna. Karakteristik perangkat lunak dikelompokkan menjadi enam komponen utama. Functionality: Mengacu pada tingkat kinerja perangkat lunak terhadap tujuan yang telah ditentukan. Reliability: Mengacu pada kemampuan perangkat lunak untuk menyediakan fungsionalitas yang diinginkan dalam kondisi tertentu. Usability: Mengacu pada sejauh mana perangkat lunak dapat digunakan dengan mudah. Efficiency: Mengacu pada kemampuan perangkat lunak untuk menggunakan sumber daya sistem dengan cara yang paling efektif dan efisien. Maintainability: Mengacu pada kemudahan modifikasi yang dapat dilakukan dalam sistem perangkat lunak untuk memperluas fungsinya, memperbaiki kinerjanya, atau memperbaiki kesalahannya. Portability: Mengacu pada kemudahan pengembang perangkat lunak (software developer) mana yang dapat mentransfer perangkat lunak dari satu platform ke platform lainnya, tanpa (atau dengan minimum) perubahan. Secara sederhana, ini mengacu pada kemampuan perangkat lunak untuk berfungsi dengan baik pada berbagai platform perangkat keras (hardware) dan perangkat lunak (software) tanpa membuat perubahan apa pun di dalamnya. Selain karakteristik yang disebutkan di atas, robustness dan integrity juga penting. Robustness mengacu pada sejauh mana perangkat lunak dapat tetap berfungsi meskipun dilengkapi data yang tidak valid sementara integrity mengacu pada sejauh mana akses yang tidak sah terhadap perangkat lunak atau data dapat dicegah. Klasifikasi Perangkat Lunak Perangkat lunak dapat diterapkan di berbagai bidang seperti bisnis, pendidikan, sektor sosial, dan bidang lainnya. Ini dirancang agar sesuai dengan beberapa tujuan spesifik seperti pemrosesan data, berbagi informasi, komunikasi, dan sebagainya. Hal ini diklasifikasikan menurut berbagai potensi aplikasi. Klasifikasi ini tercantum di bawah ini. System software: Kelas perangkat lunak ini mengelola dan mengendalikan operasi internal sistem komputer. Ini adalah sekelompok program yang bertanggung jawab untuk menggunakan sumber daya komputer secara efisien dan efektif. Misalnya, sistem operasi adalah system software, yang mengendalikan perangkat keras, mengelola fungsi memori dan multitasking, dan bertindak sebagai antarmuka antara program aplikasi dan komputer. Real-time software : Kelas perangkat lunak ini mengamati, menganalisa, dan mengendalikan kejadian dunia nyata saat terjadi. Umumnya, sistem real-time menjamin respon terhadap peristiwa eksternal dalam jangka waktu tertentu. Sebagai contoh perangkat lunak real-time (real-time software) adalah perangkat lunak yang digunakan untuk peramalan cuaca yang mengumpulkan dan memproses parameter seperti suhu dan kelembaban dari lingkungan luar untuk memperkirakan cuaca. Sebagian besar organisasi pertahanan di seluruh dunia menggunakan perangkat lunak real-time untuk mengendalikan perangkat keras militer mereka. Business software : Kelas perangkat lunak ini banyak digunakan di daerah di mana pengelolaan dan pengendalian kegiatan keuangan sangat penting. Komponen fundamental dari sistem bisnis terdiri dari perangkat lunak penggajian, inventaris, dan akuntansi yang memungkinkan pengguna mengakses data yang relevan dari database. Kegiatan ini biasanya dilakukan dengan bantuan perangkat lunak bisnis khusus yang memfasilitasi kerangka kerja yang efisien dalam operasi bisnis dan keputusan manajemen. Engineering and scientific software : Kelas perangkat lunak ini telah muncul sebagai alat bantu yang ampuh dalam penelitian dan pengembangan teknologi generasi berikutnya. Aplikasi seperti studi tentang benda langit, aktivitas di bawah permukaan, dan pemrograman jalur orbit untuk angkutan luar angkasa sangat bergantung pada perangkat lunak teknik dan ilmiah. Perangkat lunak ini dirancang untuk melakukan perhitungan yang tepat terhadap data numerik kompleks yang diperoleh selama lingkungan real time. Artificial intelligence (AI) software : Kelas perangkat lunak ini digunakan dimana teknik pemecahan masalah bersifat non-algoritmik. Solusi dari masalah tersebut umumnya tidak sesuai dengan perhitungan atau analisis langsung. Sebaliknya, masalah ini memerlukan strategi pemecahan masalah spesifik yang mencakup sistem pakar (expert system), pengenalan pola (pattern recognition), dan teknik bermain game (game-playing techniques). Selain itu, mereka melibatkan berbagai jenis teknik pencarian yang mencakup penggunaan heuristik. Peran perangkat lunak kecerdasan buatan (AI software) adalah menambahkan tingkat kecerdasan tertentu ke perangkat keras mekanis agar pekerjaan yang diinginkan dilakukan dengan cara yang tangkas. Web-based software : Kelas perangkat lunak ini bertindak sebagai antarmuka antara pengguna dan Internet. Data di internet berupa teks, audio, atau format video, yang dihubungkan dengan hyperlink. Web browser adalah perangkat lunak yang mengambil halaman web dari Internet. Perangkat lunak ini menggabungkan instruksi eksekusi yang ditulis dalam bahasa script khusus seperti CGI atau ASP. Selain menyediakan navigasi di Web, perangkat lunak ini juga mendukung fitur tambahan yang berguna saat berselancar di Internet. Personal computer (PC) software : Kelas perangkat lunak ini digunakan untuk penggunaan resmi (official) dan pribadi (personal). Pasar perangkat lunak komputer pribadi telah berkembang dalam dua dekade terakhir dari editor teks (text editor) biasa hingga pengolah kata (word processor) dan dari kuas sederhana hingga perangkat lunak editing gambar (image-editing software) tingkat lanjut. Ini telah muncul sebagai alat bantu serbaguna untuk aplikasi rutin. AYO LANJUTKAN minat, potensi, cita-cita dan passion mu di bidang rekayasa perangkat lunak (software engineering) dengan bergabung bersama kami di S1 Rekayasa Perangkat Lunak (S1 RPL) ST3 Telkom Purwokerto. S1 Rekayasa Perangkat Lunak ST3 Telkom berkomitmen untuk mencetak software engineer yang akan memenuhi kebutuhan dunia industri. Pendaftaran mahasiswa baru dibuka sampai 8 September 2017. Khusus kalian lulusan SMK jurusan RPL mendapatkan FREE 50% Dana Pembangunan. Untuk pendaftaran silahkan menghubungi Customer Service Center ST3 Telkom di Jl. DI. Panjaitan No. 128 Purwokerto (0281) 641629. Website: www.st3telkom.ac.id Atau di: http://pmb.st3telkom.ac.id Fan Page: ST3 TELKOM Instagram: pmbst3telkom Line: st3telkom WA: 081228319222 (Prima) atau 085101624154 (Ira)
Read MoreTahukah Kamu ? Salah satu kunci utama kesuksesan sebuah startup teknologi adalah kualitas produk atau solusi yang dikembangkan. Kualitas produk perangkat lunak dapat tercipta melalui proses pengembangan perangkat lunak yang benar, yaitu dengan mengikuti kaidah rekayasa perangkat lunak yang ada. Apalagi bila kita bekerja dalam tim, maka sangat penting sekali untuk menentukan metodologi dan proses pengembangan perangkat lunak. Metodologi pengembangan perangkat lunak sendiri adalah sebuah metodologi yang digunakan untuk membuat struktur, rencana, dan kontrol pengerjaan suatu proyek, contoh : waterfall, fountain, spiral, rapid, prototyping, incremental, dan agile. Pada masa yang serba digital saat ini banyak perusahaan startup yang menggunakan metode agile sebagai metodologi dalam pengembangan perangkat lunaknya. Metode Agile merupakan sebuah alternatif untuk manajemen proyek tradisional yang biasanya digunakan dalam pengembangan perangkat lunak. Banyak startup menggunakan metode ini dalam pengembangan produknya, alasan perusahaan-perusahaan IT tersebut banyak menerapkan metode agile dalam pengembangan perangkat lunaknya adalah sebagai berikut : Memerlukan waktu yang cepat untuk beradaptasi. Menggunakan mekanisme yang mudah dan terstruktur, membuat software engineer mudah untuk melanjutkan pengembangan software. Respon terhadap perubahan yang cepat. Dengan menggunakan metode pengembangan agile, apabila klien menginginkan adanya perubahan, maka akan dapat ditangani dengan cepat. Dokumentasi dari perangkat lunak rapi dan terstruktur. Membuat pengembang perangkat lunak (software developer) menjadi mudah apabila ingin melanjutkan pengerjaan perangkat lunak yang telah dibuat, atau membuat perangkat lunak baru yang memiliki fungsi yang sama. Pengerjaan perangkat lunak dilakukan dengan membuat tim-tim kecil sehingga dapat selesai dalam waktu singkat. Tim-tim kecil ini melakukan tugasnya masing-masing, serta dapat mengevaluasi pengerjaan rekannya apabila ada yang salah. Berkolaborasi dengan klien dalam pembuatan perangkat lunak. Salah satu ciri dari metode agile adalah klien menjadi bagian dari tim pengembangan perangkat lunak. Karena fungsi-fungsi dari perangkat lunak yang dikembangkan harus terus menerus dibicarakan dan diimprovisasi disesuaikan dengan keinginan klien. Bagi anda yang tertarik ingin belajar tentang metode agile lebih dalam, maka bergabunglah ke Program Studi S1 Rekayasa Perangkat Lunak (S1 Software Engineering) ST3 Telkom Purwokerto. Pembelajaran lebih dalam mengenai penerapan metode agile dalam pengembangan perangkat lunak bisa Anda dapatkan di S1 Rekayasa Perangkat Lunak ST3 Telkom Purwokerto. Anda akan mempelajari cara melakukan perencanaan, implementasi, pengujian, dokumentasi, dan pemeliharaan perangkat lunak mengacu pada metode agile. Jadi tunggu apalagi, segera daftarkan diri anda sebelum tanggal 8 September 2017. Untuk pendaftaran silahkan menghubungi Customer Service Center ST3 Telkom di Jl. DI. Panjaitan No. 128 Purwokerto (0281) 641629. Website: www.st3telkom.ac.id Atau di: http://pmb.st3telkom.ac.id Fan Page: ST3 TELKOM Instagram: pmbst3telkom Line: st3telkom WA: 081228319222 (Prima) atau 085101624154 (Ira)
Read MoreKomputasi merupakan contoh dari beberapa istilah di bidang teknologi komputer yang hampir sebagian besar orang-orang di dunia sudah mengetahuinya. Bidang komputasi seringkali di analogikan sebagai penggunaan perangkat komputer untuk menyelesaikan suatu permasalahan sehingga memudahkan manusia untuk melakukan pekerjaannya sehari-hari. Akan tetapi sifat dari komputasi ini sendiri terkadang hanya dapat diterapkan apabila terdapat perangkat komputer yang tersedia ditempat, sehingga penggunaan komputasi ini sendiri menjadi sangat terbatas. Dari permasalahan ini, muncul sebuah ide dan gagasan dari para ilmuan untuk membuat sebuah metode pengembangan baru yang disebut Komputasi Awan (Cloud Computing). Pengertian Komputasi Awan secara umum adalah gabungan pemanfaatan dari teknologi komputer (komputasi) dan pengembangan berbasis internet (awan) yang kemudian menjadi suatu metode komputasi baru dimana kapabilitas terkait teknologi informasi disajikan sebagai suata layanan (as a service), sehingga pengguna dapat mengakses layanan melewati internet (di dalam awan). Sedangkan menurut Jurnal IEEE berjudul Internet Computing “Cloud Computing” tahun 2008, Cloud Computing adalah suatu paradigma dimana informasi secara permanen tersimpan di server internet dan tersimpan secara sementara di komputer pengguna termasuk didalamnya seperti contoh desktop, komputer tablet, notebook, hanheld, sensor-sensor, monitor dan lain sebagainya. Secara singkat perkembangan Cloud Computing adalah sebagai berikut. 1. Tahun 1950-an : Cloud Computing mulai digagaskan dan menggunakan konsep yang sangat mendasar yang berupa pengembangan mainframe untuk bidang dunia pendidikan dan perusahaan yang pada saat itu hanya dapat diakses oleh komputer menggunakan terminal statis. Hingga pertengahan tahun 1970-an muncul mainframe yang dikenal dengan nama RJE remote proses Entry Home Job yang berkaitan besar dengan IBM dan DEC Mainframe. 2. Tahun 1960-an : John McCarthy berpendapat bahwa “Perhitungan suatu hari nanti dapat diatur sebagai utilitas publik.” Di buku Douglas Parkhill, The Challenge of the Computer Utility menunjukkan perbandingan idustri listrik dan penggunaan pada listrik di masyarakat umum dan pemerintahan dalam penyediaan cloud computing. 3. Tahun 1990-an : perusahaan telekomunikasi mulai menawarkan VPN layanan jaringan pribadi dengan kualitas sebanding pelayanannya, tapi dengan biaya yang lebih rendah. Karena merasa cocok dengan hal tersebut untuk menyeimbangkan penggunaan server, mereka dapat menggunakan bandwidth jaringan secara keseluruhan. Lalu menggunakan simbol awan sebagai penunjuk titik demarkasi antara penyedia dan pengguna yang saling bertanggung jawab. Cloud computing memperluas batas ini untuk menutup server serta infrastruktur jaringan. 4. Tahun 2000-an : Amazon sebagai peran penting dalam semua pengembangan cloud computing dengan memodernisasi pusat data, seperti contoh pada jaringan komputer yang menggunakan sesedikit 10% dari kapasitas mereka pada satu waktu. 5. Tahun 2008-an : Eucalypus menjadi platform open source pertama yang kompatibel untuk AWS API sebgai privat cloud software yang ditujukan kepada developer cloud computing. 6. Tahun 2011 – 2017 : IBM mengumumkan SmartCloud kerangka IBM Smarter Planet sebagai salah satu bentuk perkembangan paling baru dari Cloud Computing. Tidak terbatas disitu saja, IBM kemudian mengembangkan metode penggunaan Cloud Computing yang dikalangan orang professional disebut sebagai Internet of Things (IoT), [Contoh aplikasi IBM berbasis IoT adalah “IBM Bluemix”]. Belajar terkait perangkat lunak, MENARIK kan ? Nah, Program Studi S1 Rekayasa Perangkat Lunak (S1 Software Engineering) ST3 Telkom Purwokerto juga menyelenggarakan matakuliah Komputasi Awan. Pada matakuliah tersebut kita juga langsung belajar best practices seperti proses, tools, teknik, dan bidang pengetahuan yang terkait. Ini akan jadi bekal berharga Anda untuk menekuni karir sebagai Software Engineer dan/atau Technopreneur. Program studi S1 Rekayasa Perangkat Lunak ST3 Telkom Purwokerto merupakan perguruan tinggi yang berada dibawah naungan yayasan pendidikan telkom yang terbukti berkualitas mendidik generasi penerus bangsa. Kurikulum Prodi S1 RPL ST3 Telkom telah dirancang supaya dapat menghasilkan lulusan yang berdaya saing secara nasional dalam smart system dan technopreneurship di bidang rekayasa perangkat lunak. Jadi tunggu apalagi, segera daftarkan diri anda sebelum tanggal 8 September 2017. Untuk pendaftaran silahkan menghubungi Customer Service Center ST3 Telkom di Jl. DI. Panjaitan No. 128 Purwokerto (0281) 641629. Website: www.st3telkom.ac.id Atau di: http://pmb.st3telkom.ac.id Fan Page: ST3 TELKOM Instagram: pmbst3telkom Line: st3telkom WA: 081228319222 (Prima) atau 085101624154 (Ira)
Read MoreDi masa lalu, perangkat lunak bersifat sederhana dan karenanya, pengembangan perangkat lunak merupakan kegiatan yang sederhana. Namun, seiring meningkatnya teknologi, perangkat lunak menjadi lebih kompleks dan proyek perangkat lunak tumbuh lebih besar. Pengembangan perangkat lunak sekarang mengharuskan kehadiran tim yang dapat mempersiapkan rencana dan desain secara terperinci, melakukan pengujian, mengembangkan antarmuka pengguna yang intuitif, dan mengintegrasikan semua aktivitas ini ke dalam sistem. Pendekatan baru ini menyebabkan munculnya sebuah disiplin ilmu yang dikenal sebagai rekayasa perangkat lunak. Rekayasa perangkat lunak menyediakan metode untuk menangani kompleksitas dalam sistem perangkat lunak dan memungkinkan pengembangan sistem perangkat lunak yang handal, dimana dapat memaksimalkan produktivitas. Selain aspek teknis pengembangan perangkat lunak, juga mencakup kegiatan manajemen yang meliputi membimbing tim, menyusun anggaran, menyiapkan jadwal, dll. Gagasan tentang rekayasa perangkat lunak pertama kali diajukan pada tahun 1968. Semenjak itu, rekayasa perangkat lunak berkembang sebagai disiplin teknik secara penuh, yang diterima sebagai bidang yang melibatkan studi dan penelitian mendalam. Metode dan alat bantu rekayasa perangkat lunak telah berhasil diimplementasikan dalam berbagai aplikasi yang tersebar di berbagai lapisan masyarakat. Perangkat lunak didefinisikan sebagai kumpulan program, dokumentasi dan prosedur operasi. Institute of Electrical and Electronic Engineers (IEEE) mendefinisikan perangkat lunak sebagai kumpulan program komputer, prosedur, aturan dan dokumentasi serta data terkait. Ini tidak memiliki massa, volume, dan tidak ada warna, yang membuatnya menjadi benda yang tidak terdegradasi dalam waktu lama. Perangkat lunak tidak aus atau bosan. Kontrol perangkat lunak, mengintegrasikan, dan mengelola komponen perangkat keras dari sistem komputer. Ini juga menginstruksikan komputer, apa yang perlu dilakukan untuk melakukan tugas tertentu dan bagaimana hal itu harus dilakukan. Misalnya, perangkat lunak menginstruksikan perangkat keras cara mencetak dokumen, mengambil masukan (input) dari pengguna, dan menampilkan hasilnya (output). Komputer hanya berfungsi sebagai respons terhadap instruksi yang diberikan secara eksternal. Biasanya, instruksi untuk melakukan beberapa tugas yang diinginkan disusun dalam sebuah program dengan menggunakan bahasa pemrograman seperti C, C ++, Java, dll, dan dikirimkan ke komputer. Komputer menafsirkan dan menjalankan instruksi ini dan memberikan tanggapan terhadap pengguna yang sesuai. Satu set program yang ditujukan untuk memberi pengguna seperangkat fungsi yang saling terkait dikenal sebagai paket perangkat lunak (software package). Misalnya, paket perangkat lunak akuntansi, menyediakan fungsionalitas kepada pengguna untuk melakukan aktivitas terkait akuntansi. Program studi S1 Rekayasa Perangkat Lunak ST3 Telkom Purwokerto merupakan perguruan tinggi yang berada dibawah naungan yayasan pendidikan telkom yang terbukti berkualitas mendidik generasi penerus bangsa. Kurikulum Prodi S1 RPL ST3 Telkom telah dirancang supaya dapat menghasilkan lulusan yang berdaya saing secara nasional dalam smart system dan technopreneurship di bidang rekayasa perangkat lunak. Jadi tunggu apalagi, segera daftarkan diri anda sebelum tanggal 8 September 2017. Untuk pendaftaran silahkan menghubungi Customer Service Center ST3 Telkom di Jl. DI. Panjaitan No. 128 Purwokerto (0281) 641629. Website: www.st3telkom.ac.id Atau di: http://pmb.st3telkom.ac.id Fan Page: ST3 TELKOM Instagram: pmbst3telkom Line: st3telkom WA: 081228319222 (Prima) atau 085101624154 (Ira)
Read MoreTahukah kamu ? Keterkaitan antara SMK dan RPL di Indonesia masih lekat anggapan bahwa Rekayasa Perangkat Lunak (RPL) merupakan jurusan yang hanya ada di jenjang Sekolah Menengah Kejuruan (SMK). Padahal menurut Association For Computing Machinery (ACM) rumpun studi informatika dan komputer telah terbagi menjadi lima bagian yaitu Sistem Komputer, Teknik Informatika, Sistem Informasi, Teknologi Informasi dan Rekayasa Perangkat Lunak (Sumber : IEEE Computing Curricula). Jadi memang sudah pas/cocok/wajar jika jurusan Rekayasa Perangkat Lunak ini hadir di perguruan tinggi sesuai anjuran dari ACM tersebut. Hal ini penting, sebab di dunia digital dan informasi sekarang ini, peran serta lulusan jurusan RPL sangat dibutuhkan. Sedangkan skill atau kemampuan lulusan SMK masih belum cukup untuk menangani perkembangan teknologi perangkat lunak yang semakin canggih. Hal lain yang mendasari mengapa perlunya jurusan RPL di Perguruan Tinggi adalah karena kurikulum di SMK masih belum bisa memenuhi kebutuhan industri. Sebab secara kurikulum, pelajaran RPL di SMK hanya diajari bahasa pemrograman yang mungkin lebih pas disebut jurusan pemrograman komputer. Padahal dalam studi rekayasa perangkat lunak sendiri tidak hanya berkutat soal pemrograman, tapi juga ada hal lain seperti dokumentasi, pengujian sampai perawatan perangkat lunak. Walaupun demikian, akan sangat tepat apabila lulusan dari SMK jurusan RPL melanjutkan ke jenjang perguruan tinggi dengan jurusan serupa. The first method recover deleted files from android lg k10 mentioned in the article is the use of file recovery software. Mungkin dibanding lulusan SMA, lulusan SMK jurusan RPL akan mudah beradaptasi dengan mata kuliah seperti algoritma dan pemrograman yang sudah setiap hari menjadi “makanannya”. Di Indonesia, institusi yang memiliki Program Studi Rekayasa Perangkat Lunak hanya berjumlah 4 (empat), 2 diantaranya dari politeknik yang membuka prodi D4 dan 2 lainnya dari institusi swasta yang membuka prodi S1 (sumber : forlap.dikti.com). Salah satu institusi swasta yang membuka program studi S1 rekayasa perangkat lunak adalah ST3 Telkom Purwokerto. Program studi S1 rekayasa perangkat lunak ST3 Telkom Purwokerto merupakan perguruan tinggi yang berada dibawah naungan yayasan pendidikan telkom yang terbukti berkualitas mendidik generasi penerus bangsa. Kurikulum Prodi S1 RPL ST3 Telkom telah dirancang supaya dapat menghasilkan lulusan yang berdaya saing secara nasional dalam smart system dan technopreneurship di bidang rekayasa perangkat lunak. Bagi anda seorang lulusan SMK jurusan RPL cocok sekali jika anda bergabung ke Program studi S1 rekayasa perangkat lunak ST3 Telkom Purwokerto. Sebab akan semakin menambah ilmu dan skill anda untuk menjadi software engineer yang handal. Selain itu anda juga akan mendapat potongan harga pembangunan sebesar 50%. Jadi tunggu apalagi, segera daftarkan diri anda sebelum tanggal 8 September 2017. Untuk pendaftaran silahkan menghubungi Customer Service Center ST3 Telkom di Jl. DI. Panjaitan No. 128 Purwokerto (0281) 641629. Website: www.st3telkom.ac.id Atau di: http://pmb.st3telkom.ac.id Fan Page: ST3 TELKOM Instagram: pmbst3telkom Line: st3telkom WA: 081228319222 (Prima) atau 085101624154 (Ira)
Read MoreSuka belajar otodidak ? Hobi mengutak-atik blog ? Punya rasa penasaran yang besar pada proses pembuatan aplikasi komputer ? Pernah mencoba membuat aplikasi komputer / aplikasi mobile / website ? Punya cita-cita menjadi seorang software engineer ? Punya cita-cita menjadi seorang technopreneur ? Punya cita-cita menjadi seorang database engineer / database administrator ? Punya cita-cita menjadi seorang web engineer maupun web administrator? Punya cita-cita menjadi seorang game developer ? Punya cita-cita menjadi hacker ? Punya cita-cita menjadi software tester ? Punya cita-cita menjadi software developer ? Punya cita-cita menjadi sistem analis ? Suka game problem solving ? Belum kenal pemrograman tapi punya cita-cita untuk menjadi ahlinya ? Belum kenal pemrograman tapi suka mempelajari hal baru ? Belum kenal pemrograman tapi punya motivasi besar untuk punya gelar S.Kom ? Pernah kenal pemrograman ? Rekayasa Perangkat Lunak (RPL) merupakan suatu disiplin ilmu yang mempelajari berbagai sudut pandang perangkat lunak, terdiri dari sudut pandang requirement capturing (analisa kebutuhan pengguna), specification (menentukan spesifikasi dari kebutuhan pengguna), desain, coding, testing hingga pemeliharaan sistem setelah digunakan. Penelitian yang dirilis dalam Hot Careers for College Graduates menyatakan bahwa pekerjaan sebagai software engineer akan menjadi rising star selama 10 tahun ke depan. AYO LANJUTKAN minat, potensi, cita-cita dan passion mu di bidang rekayasa perangkat lunak (software engineering) dengan bergabung bersama kami di S1 Rekayasa Perangkat Lunak (S1 RPL) ST3 Telkom Purwokerto. S1 Rekayasa Perangkat Lunak ST3 Telkom berkomitmen untuk mencetak software engineer yang akan memenuhi kebutuhan dunia industri. Pendaftaran mahasiswa baru dibuka sampai 8 September 2017. Khusus kalian lulusan SMK jurusan RPL mendapatkan FREE 50 % Dana Pembangunan. Untuk pendaftaran silahkan menghubungi Customer Service Center ST3 Telkom di Jl. DI. Panjaitan No. 128 Purwokerto (0281) 641629. Website: www.st3telkom.ac.id Atau di: http://pmb.st3telkom.ac.id Fan Page: ST3 TELKOM Instagram: pmbst3telkom Line: st3telkom WA: 081228319222 (Prima) atau 085101624154 (Ira)
Read MoreTahukah kamu ? Otak manusia adalah sebuah keajaiban yang diberikan Tuhan kepada semua makhluk hidup yang ada di bumi. Tetapi setiap orang memiliki kemampuan yang berbeda-beda meskipun secara penelitian, semua perangkat keras manusia (otak) atau bisa disebut denga bio-komputer manusia adalah sama. Yang menjadi pembeda dari tiap-tiap orang dalam mengoperasikan bio-komputer adalah dari program yang dijalankan untuk menggunakan bio-komputer tersebut. Pada dasarnya semua manusia dapat melatih program tersebut sehingga dapat mengoperasikan bio-komputer secara optimal. Salah satu penerapan dari cara melatih program berpikir bio-komputer, diterapkan dalam sebuah matakuliah pada Rekayasa Perangkat Lunak yang disebut dengan “BERPIKIR KOMPUTASI”. Berpikir komputasi adalah sebuah metode pemecahan masalah dengan mengaplikasikan/melibatkan teknik yang digunakan oleh software engineer dalam menulis program. Berpikir komputasi tidak berarti berpikir seperti komputer, melainkan berpikir tentang komputasi di mana sesorang dituntut untuk memformulasikan masalah dalam bentuk masalah komputasi dan menyusun solusi komputasi yang baik (dalam bentuk algoritma) atau menjelaskan mengapa tidak ditemukan solusi yang sesuai. Ada beberapa teknik komputasi, diantaranya: Dekomposisi: Yaitu kemampuan untuk memecah tugas (masalah) kompleks menjadi tugas-tugas kecil yang lebih rinci. Misalnya memecah ‘kopi susu’ berdasarkan komponen penyusunnya: kopi, gula, susu dan air panas. Pengenalan pola: Yaitu kemampuan untuk mengenal kesamaan atau perbedaan umum yang nantinya akan membantu dalam membuat prediksi. Misalnya mengenal pola penjualan saham. Generalisasi pola dan abstraksi: Kemampuan menyaring informasi yang tidak dibutuhkan dan menarik generalisasi dari informasi yang dibutuhkan sehingga seseorang dapat menggunakan informasi tersebut untuk menyelesaikan masalah yang serupa. Contohnya dalam menentukan posisi di bumi dapat digeneralisasi dengan menggunakan titik koordinat bujur dan lintang. Perancangan algoritma: Adalah kemampuan untuk menyusun langkah-langkah penyelesaian masalah. Contohnya merancang langkah-langkah membuat kopi susu, dimulai dari mempersiapkan air panas, cangkir, sendok serta mencampur kopi, gula dan susu, mengaduk hingga menghidangkan. Belajar terkait perangkat lunak, MENARIK kan ? Nah, Program Studi S1 Rekayasa Perangkat Lunak (S1 Software Engineering) ST3 Telkom Purwokerto juga menyelenggarakan matakuliah Berpikir Komputasi. Pada matakuliah tersebut kita juga langsung belajar best practices seperti proses, tools, teknik, dan bidang pengetahuan yang terkait. Ini akan jadi bekal berharga Anda untuk menekuni karir sebagai Software Engineer dan/atau Technopreneur.
Read MoreRekayasa perangkat lunak menggunakan pendekatan yang terdefinisi dan sistematis untuk mengembangkan perangkat lunak. Pendekatan ini dianggap sebagai cara yang paling efektif untuk menghasilkan perangkat lunak berkualitas tinggi. Namun, terlepas dari pendekatan sistematis dalam pengembangan perangkat lunak ini, masih ada beberapa tantangan serius yang dihadapi oleh rekayasa perangkat lunak. Beberapa tantangan ini tercantum di bawah ini. Metode yang digunakan untuk mengembangkan sistem pada proyek skala kecil atau menengah tidak sesuai bila diterapkan pada pengembangan sistem berskala besar atau kompleks. Perubahan dalam pengembangan perangkat lunak tidak dapat dihindari. Era sekarang ini, perubahan terjadi dengan cepat dan harus dapat mengakomodasi perubahan ini untuk mengembangkan perangkat lunak yang lengkap merupakan salah satu tantangan utama yang dihadapi oleh para insinyur perangkat lunak (software engineer). Kemajuan teknologi komputer dan perangkat lunak mengharuskan perubahan sifat sistem perangkat lunak. Sistem perangkat lunak yang tidak dapat mengakomodasi perubahan maka tidak akan banyak berguna. Dengan demikian, salah satu tantangan rekayasa perangkat lunak adalah menghasilkan perangkat lunak berkualitas tinggi yang mampu beradaptasi dengan kebutuhan yang berubah sesuai waktu yang dapat diterima. Untuk memenuhi tantangan ini, pendekatan berorientasi objek lebih diutamakan, namun mengakomodasi perubahan pada perangkat lunak dan perawatannya dengan biaya yang dapat diterima masih merupakan tantangan tersendiri. Komunikasi informal mengambil sebagian besar waktu yang dihabiskan untuk proyek perangkat lunak. Pemborosan waktu seperti itu dapat menunda penyelesaian proyek dalam waktu yang telah ditentukan. Pengguna umumnya memiliki gagasan samar tentang ruang lingkup dan persyaratan sistem perangkat lunak. Hal ini biasanya menghasilkan pengembangan perangkat lunak, yang tidak sesuai dengan ekspektasi pengguna. Perubahan biasanya digabungkan dalam dokumen tanpa mengikuti prosedur standar apapun. Dengan demikian, kegiatan verifikasi semua perubahan tersebut seringkali menjadi sulit. Pengembangan perangkat lunak yang berkualitas dan handal memerlukan perangkat lunak untuk diuji secara menyeluruh. Meskipun pengujian menyeluruh terhadap perangkat lunak menghabiskan sebagian besar sumber daya, tetapi apabila meremehkannya dapat menyebabkan memburuknya kualitas perangkat lunak. Selain tantangan utama yang disebutkan di atas, tanggung jawab sistem analis, perancang, dan pemrogram biasanya tidak didefinisikan dengan baik. Selain itu, jika persyaratan pengguna tidak didefinisikan secara tepat, pengembang perangkat lunak dapat salah menafsirkan maknanya. Semua tantangan ini perlu ditangani untuk memastikan bahwa perangkat lunak dikembangkan dalam waktu dan perkiraan biaya yang ditentukan dan juga memenuhi persyaratan yang ditentukan oleh pengguna. Belajar terkait perangkat lunak, MENARIK kan ? Nah, Program Studi S1 Rekayasa Perangkat Lunak (S1 Software Engineering) ST3 Telkom Purwokerto juga menyelenggarakan matakuliah Penjaminan Kualitas dan Manajemen Konfigurasi Perangkat Lunak. Pada matakuliah tersebut kita mempelajari konsep proses rekayasa perangkat lunak, software process maturity level, manajemen kualitas perangkat lunak, aspek teknis dan manajerial pengembangan perangkat lunak dalam organisasi perangkat lunak, dalam hubungannya dengan metodologi pengembangan, dan tingkat kematangan. Selain itu, kita juga langsung belajar best practices seperti proses, tools, teknik, dan bidang pengetahuan yang terkait. Ini akan jadi bekal berharga Anda untuk menekuni karir sebagai Software Engineer dan/atau Technopreneur.
Read More