Rabu, 19 November 2014

ARTIKEL TENTANG PRO-CLUB DARI 4 EXPERT

ARTIKEL TENTANG PRO-CLUB DARI 4 EXPERT

 

          

      Pemrograman komputer merupakan suatu proses interatif penulisan dan penyuntingan kode sumber sehingga membentuk sebuah program. Penyuntingan kode sumber meliputi proses pengetesan, analisis, pembetulan kesalahan, pengoptimasian algoritma, normalisasi kode, dan kadang-kadang pengkoordinasian antara satu programmer dengan programmer lainnya jika sebuah program dikerjakan oleh beberapa orang dalam sebuah tim.

       Pemrograman desktop dibagi 3 yaitu .Net, Java dan Delphi. Bahasa pemrograman .Net yaitu Visual Basic (VB), C++ dan C sharp. Sedangkan pemrograman web dibagi 3 yaitu PHP, ASP dan HTML.Tiap pemrograman memiliki kelebihan dan kekurangan masing-masing. Kelebihan pemrograman desktop yaitu tidak perlu online dalam menjalankannya, sedangkan kekurangannya yaitu harus menginstal programnya atau memakan space hardisk. Untuk pemrograman web mempunyai kelebihan yaitu tidak perlu menginstal program  ( cukup browsing di internet ) tetapi kekurangannya yaitu harus online. 

 

  • PEMROGRAMAN DESKTOP

  1. NET
          NET merupakan sebuah bahasa pemrograman yang memiliki ruang lingkup besar dan kompleks. Net dikembangkan oleh Microsoft sebagai sistem untuk mengembangkan aplikasi perangkat lunak.NET Framework dirancang Microsoft dengan terkait pengembangan bahasa-terutama C # dan Visual Basic-untuk mengatasi berbagai masalah yang dialami para pengembang perangkat lunak Windows dan user. Kelebihan .Net yaitu memungkinkan kita membuat aplikasi windows base  yang di launch melalui Internet Explorer  sehingga kita dapat memanfaatkan rich window component untuk aplikasi web sedangkan kekurangannya boros memori.
Bahasa pemrograman .Net yaitu Visual Basic (VB), C++ dan C sharp (C #):
Microsoft Visual Basic.NET adalah sebuah alat untuk mengembangkan dan membangun aplikasi yang bergerak di atas sistem .Net Framework, dengan menggunakan bahasa basic. Microsoft Visual Basic (sering disingkat sebagai VB) merupakan sebuah bahasa pemrograman yang bersifat event driven dan menawarkan Integrated Development Environment (IDE) visual untuk membuat program aplikasi berbasis sistem operasi Microsoft Windows dengan menggunakan model pemrograman Common Object Model (COM).
C++ dikembangkan di Bell Labs (Bjarne Stroustrup) pada awal tahun 1970-an . C++ merupakan bahasa pemrograman yang memiliki sifat oop.
C# (dibaca: C sharp) merupakan sebuah bahasa pemrograman yang berorientasi obyek yang dikembangkan oleh Microsoft sebagai bagian dari inisiatif kerangka .Net Framework.

     2.  JAVA

          Java’ adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Dikembangkan oleh sun microsystem dan diterbitkan tahun 1995. Fitur pada Java yaitu Java virtual machine (jvm), garbage collection, code security. Kelebihan dari Java adalah multiplatform, perpustakaan kelas yang lengkap, bergaya C++, pengumpulan sampah otomatis. Kekurangan Java adalah tulis sekali, perbaiki di mana saja, mudah didekompilasi, penggunaan memori yang banyak.

     3.  DELPHI

           DELPHI adalah sebuah perangkat lunak (bahasa pemrograman) untuk membuat program / aplikasi komputer berbasis windows. Bahasa pemograman berbasis objek, artinya semua komponen yang ada merupakan objek-objek.  Ciri sebuah objek adalah memiliki nama, properti dan method/procedure. Komponen-komponen yang ada tidak hanya berupa teks (yang sebenarnya program kecil) tetapi muncul berupa gambar-gambar. Keuntungan dari DELPHI yaitu komunitas pengguna yang besar pada usenet maupun web, dapat mengkompilasi menjadi single executable, memudahkan distribusi dan meminimalisir masalah yang terkait dengan versioning, banyaknya dukungan dari pihak ketiga terhadap VCL (biasanya tersedia berikut source codenya) ataupun tools pendukung lainnya (dokumentasi, tool debugging), optimasi kompiler yang cukup cepat, mendukung multiple platform dari source code yang sama. Kekurangan dari DELPHI adalah partial single vendor lock-in (Borland dapat menetapkan standar bahasa, kompatibilitas yang harus mengikutinya), terbatasnya kamampuan portabilitas antar-platform OS (sebelum ada kylix), akses pada platform dan library pihak ketiga membutuhkan file-file header yang diterjemahkan ke dalam bahasa pascal, dokumentasi atas platform dan teknik-teknik yang menyertainya sulit ditemukan dalam bahasa pascal (contoh akses COM dan Win32).


  • PEMROGRAMAN WEB

  1. PHP
          PHP adalah bahasa pemorgraman yang memungkinkan para web developer untuk membuat aplikasi web yang dinamis dengan cepat. PHP merupakan singkatan dari “PHP: Hypertext Preprocessor”. Kelebihan dari PHP yaitu bahasa script yang tidak melakukan sebuah kompilasi dalam penggunaanya, web server yang mendukung PHP dapat ditemukan dimana – mana, pengembangan lebih mudah ( banyak milis dan developer ), bahasa scripting yang paling mudah karena memiliki referensi yang banyak, open source, lebih mudah dan cepat daripada ASP, coding-nya relatif  lebih mudah  dipelajari, API sangat lengkap ( framework2 yang sangat praktis,cepat dan efisien dalam membangun aplikasi PHP). Kekurangan dari PHP yaitu encoding harganya mahal, misal membeli phpEncoder dari Zend.Com, kalau memakai encoder lain harus memasang plugin dulu di server.

     2.  ASP.NET

          ASP.NET merupakan sebuah sarana baru untuk membangun halaman-halaman web site yang interaktif yang memungkinkan pengguna dapat berinteraksi dengan cara yang sangat mudah dan menakjubkan.  ASP.NET merupakan salah satu teknologi yang bekerja dengan sistem client-server model dimana dua atau lebih komputer bekerja sama, mengambil informasi dan mengirim informasi. ASP.NET memilki kelebihan yaitu sintaksnya tidak rumit, koneksi ke database mudah, bisa mengeksekusi prosedur tersimpan jika databasenya pakai sql server, cocok untuk under windows developer, bisa mengeksekusi stored procedure sql server, bahasa yang bisa dipakai  VBScript, JScript, dan Perl, session management yang bagus, punya OPTION EXPLICIT untuk penghematan memori, lebih stabil diserver windows, encoder scriptnya gratis disediakan oleh Microsoft. Kekurangan ASP.NET adalah memakan banyak space hardisk buat menjalankan aplikasi-aplikasinya, kurang maintanable, prosesnya cukup berat dan terkenal lambat, jika konek ke hal lain menggunakan ASP butuh untuk membuat connection string, tidak murah alias mahal, dari keamanan bug ::$DATA yang memungkinkan pengunjung melihat kode sumber sebuah halaman, komunitasnya lebih sedikit.

     3.  HTML

          HTML adalah semacam bahasa penkodean bukan sebagai bahasa pemrograman. Hypertext Mark Up Language : bahasa penformatan untuk membuat halaman yang dapat delink atau bahasa yang digunakan menformat halaman web. Dokumen HTML disebut mark up language, karena berisi tanda-tanda (tag) tertentu yang digunakan untuk menentukan tampilan suatu teks dan tingkat kepentingan dari teks tersebut dalam suatu dokumen. Kelebihan dari HTML adalah merupakan bahasa penkodean yang lintas platform (cross platform), dapat disisipi gambar baik gambar statis ata dinamis (animasi) termasuk menggunakan gambar untuk dijadikan hyperlink, dapat disisipi animasi berupa Java Applet atau file-file animasi dari Macromedia Flash atau Macromedia Shockwave, dapat disisipi bahasa pemrograman untuk mempercantik halaman web seperti Javascript, VBScript, Active Server Pages, Perl, Tcl, PHP dan sebagainya, bukan merupakan bahasa pemrograman jadi tidak memerlukan kompiler; cara menjalanakannya cukup dengan menggunakan browser. Kekurangan dari HTML adalah karena menghasilkan halaman yang statis, maka untuk memperoleh halaman yang dinamis harus menggunakan bahasa pemrograman tertentu seperti Javascript atau VBScript dan animasi seperti Flash atau Shockwave, memiliki tag-tag yang begitu banyak sehingga susah dipelajari untuk yang masih awam, tidak dapat menghasilkan halaman yang interaktif.

        Di Pro-Club, kita akan membuat sebuah algoritma, menganalisa algoritma, membuat sebuah program, dan membuat sebuah aplikasi. Kemudian di Pro-Club ini kita akan menjadi software enginner tentunya yang memiliki gaji yang lumayan yang rata-rata sekitar 128.336 dolar AS (sekitar Rp. 1,2 Milliar per tahun atau Rp. 100 juta per bulan). Contohnya : Amanda Surya, Seorang software enginner divisi developer di google.

 

Sumber : 

https://prezi.com/dawbw2wp-j5p/4-expert/

http://nifsruz.blogspot.com/2013/02/pemrograman-desktop-web-dan-mobile.html 

Selasa, 18 November 2014

ARTIKEL TENTANG SOFTWARE ENGINEERING


ARTIKEL TENTANG SOFTWARE ENGINEERING

A.PENJELASAN SOFTWARE ENGINEERING

Software Engineering adalah Ilmu yang mempelajari teknik pembuatan software yang baik dengan pendekatan teknik (Engineering ap­proach)

Menurut Fritz Badar, software engineering adalah disiplin ilmu yang menerapkan prinsip-prinsip engineering agar mendapatkan software yang ekonomis yang dapat dipercaya dan bekerja lebih efisien pada mesin yang se­benarnya.

Software engineering  terdiri dari 3 elemen kunci, yaitu :
  1. Metode, 
  2. Peralatan (tools),
  3. Prosedur,
yang memungkinkan manajer mengontrol proses pengembangan software dan memberikan praktisi dasar yang baik untuk pembentukan software berkualitas tinggi.

B.YANG DIPELAJARI DALAM SOFTWARE ENGINEERING

1.      Metode Software Enginnering
Metode software engineering memberikan tehnik-tehnik bagaimana membentuk software. Metode ini terdiri dari serangkaian tugas :
a.       Perencanaan & estimasi proyek
b.      Analisis kebutuhan sistem dan software
c.       Desain struktur data
d.      Arsitektur program dan prosedur algoritma
e.       Coding
f.       Testing dan pemeliharaan

2.      Peralatan Software Engineering
Peralatan software engineering memberikan dukungan atau semiautomasi untuk metode.
Contohnya :
-          CASE (Case Aided Software Engineering) yaitu suatu software yang menggabungkan software, hard­ware, dan database software engineering untuk menghasilkan suatu lingkungan software engineering.
-          Database Software Engineering adalah sebuah struktur data yang berisi informasi penting tentang analisis, desain, kode dan testing.
-          Analogi dengan CASE pada hardware adalah : CAD, CAM, CAE

3.      Prosedur Software Engineering
Terdiri dari :
a.       urut-urutan di mana metode tersebut diterapkan
b.      dokumen
c.       laporan-laporan
d.      formulir-formulir yang diperlukan
e.       mengontrol kualitas software
f.       mengkoordinasi perubahan yang terjadi pada software

Dalam penguasaan atas model software engineering atau software engineering paradigma, dikenal ada 3 metode yang luas dipergunakan, yaitu :

1.      Classic Life Cycle Pradigm - Model Water Fall - Model Siklus Hidup Klasik

A.     System Engineering and Analysis
Karena software merupakan bagian terbesar dari sistem, maka pekerjaan dimulai dengan cara menerap­kan kebutuhan semua elemen sistem dan mengalokasikan sebagian kebutuhan tersebut ke software. Pandangan terhadap sistem adalah penting, terutama pada saat software harus berhubungan dengan ele­men lain, seperti :
1.      Hardware
2.      Software
3.      Database

B.     Analisis kebutuhan software
Suatu proses pengumpulan kebutuhan software untuk mengerti sifat-sifat program yang dibentuk soft­ware engineering, atau analis harus mengerti fungsi software yang diinginkan, performance dan inter­face terhadap elemen lainnya. Hasil dari analisis ini didokumentasikan dan direview / dibahas / ditinjau bersama-sama customer.

C.     Design
Desain software sesungguhnya adalah proses multi step (proses yang terdiri dari banyak langkah) yang memfokuskan pada 3 atribut program yang berbeda, yaitu :
1.      Struktur data
2.      Arsitektur software
3.      Rincian prosedur
Proses desain menterjemahkan kebutuhan ke dalam representasi software yang dapat diukur kualitasnya sebelum mulai coding. Hasil dari desain ini didokumentasikan dan menjadi bagian dari konfigurasi software.

D.     Coding
Desain harus diterjemahkan ke dalam bentuk yang dapat dibaca oleh mesin.

E.      Testing
Segera sesudah objek program dihasilkan, pengetesan program dimulai. Proses testing difokuskan pada logika internal software. Jaminan bahwa semua pernyataan atau statements sudah dites dan lingkungan external menjamin bahwa definisi input akan menghasilkan output yang diinginkan.

F.      Maintenance
Software yang sudah dikirim ke customer data berubah karena

2.      Prototype Paradigm

Seringkali seorang customer sulit menentukan input yang lebih terinci, proses yang diinginkan dan output yang diharapkan. Tentu saja ini menyebabkan developer tidak yakin dengan efisiensi alogoritma yang di­buatnya, sulit menyesuaikan sistem operasi, serta interaksi manusia dan mesin yang harus diambil. Dalam hal seperti ini, pendekatan prototype untuk software engineering merupakan langkah yang terbaik. Proto­type sebenarnya adalah suatu proses yang memungkinkan developer membuat sebuah model software.

3.      Fourth Generation Tehnique Paradigm - Model tehnik generasi   ke 4 / 4GT

Istilah Fourth Generation Technique (4GT) meliputi seperangkat peralatan software yang memungkinkan seorang developer software menerapkan beberapa karakteristik software pada tingkat yang tinggi, yang ke­mudian menghasilkan source code dan object code secara otomatis sesuai dengan spesifikasi yang ditentu­kan developer. Saat ini peralatan / tools 4GT adalah bahasa non prosedur untuk :
-          DataBase Query
-          Pembentukan laporan ( Report Generation )
-          Manipulasi data
-          Definisi dan interaksi layar (screen)
-          Pembentukan object dan source ( Object and source generation )
-          Kemampuan grafik yang tinggi, dan
-          Kemampuan spreadsheet

Keterangan gambar :
-          Model 4GT untuk software engineering dimulai dengan rangkaian pengumpulan kebutuhan. Idealnya, seorang customer menjelaskan kebutuhan-kebutuhan yang selanjutnay diterjemahkan ke dalam proto­type. Tetapi ini tidak dapat dilakukan karena customer tidak yakin dengan apa yang diperlukan, tidak jelas dalam menetapkan fakta-fakta yang diketahui dan tidak dapat menentukan informasi yang diing­inkan oleh peralatan 4GT.
-          Untuk aplikasi kecil adalah mungkin bergerak langsung dari langkah pengumpulan kebutuhan ke im­plementasi yang menggunakan bahasa non prosedur fourth generation (generasi ke 4). Tetapi untuk proyek besar, pengembangan strategi desain sistem tetap diperlukan, sekalipun kita menggunakan 4GL. Penggunaan 4GT tanpa desain untuk proyek besar akan menyebabkan masalah yang sama yang ditemui dalam pengembangan software yang menggunakan pendekatan konvensional.
-          Implementasi yang menggunakan 4GL memungkinkan developer software menjelaskan hasil yang diing­inkan yang kemudian diterjemahkan ke dalam bentuk source code dan object code secara otomatis.
-          Langkah yang terakhir adalah mengubah implementasi 4GT ke dalam sebuah product. Selanjutnya de­veloper harus melakukan pengetesan, pengembangan dokumentasi dan pelaksanaan semua aktifitas lainnya yang diwujudkan dalam model software engineering.

Masalah yang dihadapi dalam model 4GT adalah adanya sebagian orang yang beranggapan bahwa :
a.       peralatan 4GT tidak semudah penggunaan bahasa pemrograman,
b.      source code yang dihasilkan oleh peralatan ini tidak efisien,
c.       pemeliharaan sistem software besar yang dikembangkan dengan 4GT masih merupakan tanda tanya.

KURIKULUM SOFTWARE ENGINEERING

Tingkat I : Mempersiapkan siswa menjadi Stand Alone Programmer

Semester 1:
1.      Mengoperasikan Sistem Operasi
2.      Menginstalasi software
3.      Mengubah konfigurasi software
4.      Menyiapkan dan melakukan survey untuk menentukan kebutuhan data

Semester 2:
1.      Mengoperasikan software bahasa pemograman level 1
2.      Konversi data level 1
3.      Menguji program level 1

Tingkat II: Mempersiapkan siswa menjadi Multi User Programmer

Semester 3:
1.      Mengoperasikan sistem operasi jaringan komputer berbasis teks
2.      Mengoperasikan sistem operasi jaringan komputer berbasis GUI
3.      Melakukan perancangan pengumpulan data
4.      Melakukan desain dan perancangan software
5.      Melakukan pengkodean program

Semester 4:
1.      Melakukan back up data
2.      Melakukan restore data
3.      Mengoperasikan software aplikasi basis data
4.      Membuat query data
5.      Menguji Program

Tingkat III: Mempersiapkan siswa menjadi Web Programmer

Semester 5:
1.      Membangun interface dengan bahasa pemograman berorientasi objek
2.      Melakukan pengkodean program
3.      Mengoperasikan bahasa pemograman berbasis web
4.      Membangun program aplikasi remote data interaktif

PELUANG KERJA SEBAGAI SOFTWARE ENGINEERING

Profesi ini di tahun sebelum 1990-an tidak banyak di lirik kebanyakan orang di karenakan sistem kerjanya yang terlalu monoton yang selalu berkutat dengan algoritma dan hanya mengelola data pada tahapan lokal, serta tidak banyak menjanjikan untuk penghasilan yang bergengsi, software engineer di anggap hanya sebagai alat untuk membantu perusahaan dalam menjalankan roda bisnisnya dengan cara membuat aplikasi yang di inginkan oleh perusahaan, serta mengelola data pada tahapan lokal saja.

Tetapi setelah era 1990-an banyak bermunculan milyader –milyader baru yang berasal dari latar belakang profesi software engineer atau pengembang software engineer seperti , Bill gates CEO Microsoft corporate yang menguasai pasar software di dunia, Waren Buffet CEO Oracel software, Michael Dell CEO Dell corporate, dan masih banyak lagi yang lainnya, dan di amerika setelah badai krisis melanda system perekonomian negeri tersebut, warga negaranya mulai menjadi melirik peluang baru untuk bisa eksis dalam menjalankan roda perekonomian, banyak yang memulai menjadi tenaga ahli dalam software engineer, karena keahlian ini hanya sedikit kompetitornya dan nilai income yang di dapat juga cukup menjanjikan, maka tidak heran kalau sekarang di amerika tenaga ahli bidang software engineer mempunyai nilai tersendiri di masyarakat amerika ini bisa terlihat dalam data berikut ini :

1.      Human resource management S1 $49,96 (atau sekitar Rp. 518,335) per jamnya
2.      Software engineering S1 $ 42,26 (atau sekitar Rp. 438,448)
3.      Fashion Design S1 $ 34,33 (atau sekitar Rp. 352,750)
4.      Administrasi Pendidikan S2 $30 (atau sekitar Rp. 311,250)
5.      Accounting S1 / S2 $31,65 atau sekitar Rp. 328,368.75 per jam


hasmapsa.staff.gunadarma.ac.id/Downloads/files/1503/RPL1.DOC
sumber : http://juniarto21.blogspot.com/2012/11/v-behaviorurldefaultvmlo.html