Ada banyak ragam dalam profesi di dalam bidang Teknologi Informasi, bagaimana dengan profesi yang berada dalam lingkungan pengembangan aplikasi web? Berikut ini adalah profesi-profesi yang langsung terkait dalam pengembangan aplikasi web, diantaranya :
Web Designer
Seorang desainer Web adalah orang yang bertanggung jawab untuk menentukan tampilan sebuah website. Tugasnya adalah pendisainan tampilan situs (web) mulai dari pengolahan gambar, tata letak, warna, dan semua aspek visual situs. Fokus utama mereka adalah tampilan / layout dari web. Mereka lebih konsen dengan bagaimana halaman terlihat dan apakah berfungsi sempurna ketika sudah diberikan bahasa pemrograman. Didalam pendandanan suatu situs seorang Web Designer harus menguasai :
- HTML, DHTML
- Pengolah Gambar
- Animasi, Movie (Film)
Web Programmer
Web Programmer bertugas dalam melakukan pengcodingan atau pemograman sebuah website agar dinamis. dimana agar sebuah web tersebut dapat telihat mudah bagi seorang web admin. Jika situs yang akan dibuat mempunya fasilitas interaksi antara pengunjung dan situs misalnya menyangkut dengan transaksi, input output data dan database maka seorang Web Programmer yang akan mengerjakannya dengan membuat aplikasi-aplikasi yang berkerja diatas situs (web). Penguasaan yang biasanya harus dikuasai pada umumnya oleh Web Programmer :
- CGI Perl, PHP, MySQL (Unix base)
- ASP (NT base)
- Java Script dan Applet
Web Administrator
Tugasnya adalah untuk memaintenance suatu server, mengerti akan Sistem Operasi Server, baik itu mulai dari instalasi sampai kepada masalah (troubleshooting), biasanya seorang Web Administrator harus menguasai :
- OS Unix (LInux, FreeBSD, dll)
- OS NT - Jaringan (LAN, WAN, Intranet)
- Keamanan Server
Web Master
Seoarang Web Master adalah seorang yang mengerti akan kesemua hal mulai dari disain, program dan keamanan server namun tidak terlalu turut mencampuri ke masing-masing divisi, cukup dengan mempertanggun jawabkan atas jalannya suatu situs (web). Penguasaan yang harus dimiliki :
- HTML, DHTML
- CGI Perl, PHP, MySQL, ASP, Java
- Penguasaan bermacam OS (Operating System)
- Keamanan Server
- Jaringan (LAN, WAN, Intranet)
Web Developer
Kegiatan diatas secara keseluruhan dinamakan suatu team yang dinamakan Web Developer. Web developer memberi bantuan seperti konsultasi web, konsep web yang akan di buat, membangun sebuat website.
Sejarah Web
World Wide Web, biasa lebih terkenal disingkat sebagai WWW adalah suatu ruang informasi yang dipakai oleh pengenal global yang disebut URL (Uniform Resource Locator) untuk mengenal pasti sumber daya berguna. WWW sering dianggap sama dengan Internet secara keseluruhan, walaupun sebenarnya ia hanyalah bagian daripada Internet. WWW merupakan kumpulan web server dari seluruh dunia yang mempunyai kegunaan untuk menyediakan data dan informasi untuk dapat digunakan bersama. WWW adalah bagian yang paling menarik dari Internet.
Melalui web, para pengguna dapat mengakses informasi-informasi yang tidak hanya berupa teks tetapi bisa juga berupa gambar, suara, video dan animasi. Kegunaan ini tergolong masih baru dibandingkan surat elektronik, sebenarnya
WWW merupakan kumpulan dokumen yang tersimpan di peladen web, dan yang peladennya tersebar di lima benua termasuk Indonesia yang terhubung menjadi satu melalui jaringan Internet. Dokumen-dokumen informasi ini disimpan atau dibuat dengan format HTML (Hypertext Markup Language). Suatu halaman dokumen informasi dapat terdiri atas teks yang saling terkait dengan teks lainnya atau bahkan dengan dokumen lain. Keterkaitan halaman lewat teks ini disebut pranala. Kaitan antar-dokumen yang seperti itu biasa disebut hipermedia. Jadi dapat disimpulkan bahwa WWW adalah sekelompok dokumen multimedia yang saling bertautan dengan menggunakan tautan hiperteks. Dengan mengeklik pranala (hyperlink), maka para pengguna bisa berpindah dari satu dokumen ke dokumen lainnya. WWW adalah suatu program yang ditemukan oleh Tim Berners-Lee pada tahun 1991.
Awalnya Berners-Lee hanya ingin menemukan cara untuk menyusun arsip-arsip risetnya. Untuk itu, beliau mengembangkan suatu sistem untuk keperluan pribadi. Sistem itu adalah program peranti lunak yang diberi namaEnquire. Dengan program itu, Berners-Lee berhasil menciptakan jaringan yang menautkan berbagai arsip sehingga memudahkan pencarian informasi yang dibutuhkan. Inilah yang kelak menjadi dasar dari sebuah perkembangan pesat yang dikenal sebagai WWW. WWW dikembangkan pertama kali di Pusat Penelitian Fisika Partikel Eropa (CERN : Organisation Europeenne pour la Recherche Nucleaire), Jenewa, Swiss. Pada tahun 1989 Berners-lee membuat pengajuan untuk proyek pembuatan hiperteks global, kemudian pada bulan Oktober 1990, 'World Wide Web' sudah dapat dijalankan dalam lingkungan CERN. Pada musim panas tahun 1991, WWW secara resmi digunakan secara luas pada jaringan Internet.
Cara Kerja Web
Sebuah web browser adalah program perangkat lunak yang gunakan untuk mengakses World Wide Web dari Internet. Browser pertama, yang disebut NCSA Mosaic, dikembangkan di Pusat Nasional untuk Aplikasi Super Komputer di awal 1990-an. Yang mudah digunakan, cukup klak-klik sehingga membantu mempopulerkan Web. Meskipun banyak browser yang berbeda yang tersedia, Microsoft Internet Explorer dan Mozilla Firefox yang jauh yang paling populer. (Banyak pengguna Mac lebih memilih browser Safar) Persaingan untuk mendominasi pasar telah membawa perbaikan terus-menerus untuk perangkat lunak. (keduanya didasarkan pada NCSA Mosaic) dapat mendownload Internet Explorer dan Firefox secara gratis dari situs web masing-masing perusahaan. Jika sudah memiliki satu browser, dapat menguji yang lain. Juga mencatat bahwa ada sedikit perbedaan antara versi Windows dan Macintosh.
Alur Pengembangan Aplikasi Web
Berdasarkan persepsi dari beberapa pengembang perangkat lunak dan ahli-ahli dalam bidang rekayasa perangkat lunak (software engineering professional), Pengembangan Aplikasi Web tidaklah sama dengan rekayasa perangkat lunak walaupun keduanya melibatkan pemrograman dan pengembangan perangkat lunak. Walaupun banyak mengadopsi prinsip-prinsip rekayasa perangkat lunak, Pengembangan Aplikasi Web memiliki banyak pendekatan, metoda, alat bantu, teknik dan panduan yang memenuhi persyaratan pembuatan sistem berbasis web. Pengembangan sistem berbasis web berbeda dengan pengembangan perangkat lunak konvensional, dimana pengembangan sistem berbasis web lebih banyak menghadapi tantangan. Pengembangan Aplikasi Web adalah gabungan dari print publishing dan pengambangan perangkat lunak, diantara marketing dan perhitungan dan diantara seni dan teknologi. Alternatif model dari Pengembangan Aplikasi Web adalah sebagai berikut :
- Formulasi (formulation)
Kegiatan yang berfungsi untuk merumuskan tujuan dan ukuran dari aplikasi berbasis web serta menentukan batasannya sistem.
Tujuan yang ingin dicapai bisa dibedakan menjadi dua kategori, yaitu :
1. Tujuan yang bersifat informatif
Menyediakan suatu informasi tertentu kepada pengguna, berupa teks, grafik, audio, dan video.
2. Tujuan yang bersifat fungsional
Kemampuan untuk melakukan suatu fungsi yang dibutuhkan pengguna, misal dengan menggunakan aplikasi tersebut seorang guru dapat memperoleh nilai akhir dan statistik nilai guru dari data-data ujian, tugas, kuis yang ia input ke dalam aplikasi.
- Perencanaan (planning)
Kegiatan yang digunakan untuk menghitung estimasi biaya proyek pembuatan aplikasi berbasis web ini, estimasi jumlah pengembang, estimasi waktu pengembangan, evaluasi resiko pengembangan proyek, dan mendefinisikan jadwal pengembangan untuk versi selanjutnya (jika diperlukan).
- Analisis (analysis)
Kegiatan untuk menentukan persyaratan-persyaratan teknik dan mengidentifikasi informasi yang akan ditampilkan pada aplikasi berbasis web. Analisis yang digunakan pada rekayasa web dilakukan dari empat sisi, yaitu :
1. Analisis isi informasi
Mengidentifikasi isi yang akan ditampilkan pada aplikasi berbasis web ini. Isi informasi dapat berupa teks, grafik, audio, maupun video.
2. Analisis interaksi
Analisis yang menunjukkan hubungan antara web dengan pengguna.
3. Analisis fungsional
Analisis tentang proses bagaimana aplikasi berbasis web ini akan menampilkan informasi kepada pengguna.
4. Analisis konfigurasi
Konfigurasi yang digunakan pada aplikasi berbasis web, internet, intranet, atau extranet. Selain itu, analisis ini juga meliputi relasi database dengan web jika diperlukan.
- Rekayasa (engineering)
Terdapat dua pekerjaan yang dilakukan secara paralel, yaitu desain isi informasi dan desain arsitektur web.
Pada saat tahap desain, ada beberapa hal yang perlu dilakukan :
- Pembuatan Diagram Wireframe (Gambar Rangka) tujuan dari diagram gambar rangka adalah untuk menunjukkan bagaimana lay out halaman web dan menunjukkan di mana fungsi dan konten seperti navigasi, kotak pencarian, elemen bentuk dan sebagainya, tanpa desain grafis.
- Diagram Situs, Sebuah diagram situs menunjukkan struktur situs secara keseluruhan dan bagaimana halaman individual berhubungan satu sama lain.
- Storyboard dan diagram alir pengguna, Storyboard ini bertujuan untuk menunjukkan langkah-langkah yang diperlukan untuk menyelesaikan tugas-tugas, opsi yang mungkin, dan juga memperkenalkan beberapa standar jenis halaman.
- Implementasi (page generation) & pengujian (testing)
Dalam tahap pengembangan ini, meliputi kegiatan:
- Authoring,
- Styling,
- Scripting dan pemrograman,
Pengujian dilakukan setelah implementasi selesai dilaksanakan. Pengujian
meliputi beberapa parameter yang akan menentukan standar aplikasi berbasis
web yang telah dibuat. Tahap pengujian adalah suatu proses untuk menguji
aplikasi berbasis web yang telah selesai dibuat. Hal ini bertujuan untuk
menemukan kesalahan dan kemudian memperbaikinya. Pengembang suatu
aplikasi berbasis web mendapat tantangan besar untuk melakukan pengujian
karena karakter aplikasi ini yang beroperasi pada jaringan dengan berbagai
macam pengguna, berbagai macam sistem operasi, perangkat keras, browser,
protokol komunikasi, dll.
Ada beberapa pendekatan yang digunakan untuk melakukan pengujian, yaitu :
1. Pengujian fungsional dan operasional (fungsional and operational testing)
Bertujuan untuk menguji masukan dan keluaran dari aplikasi ini.
Hasil keluaran aplikasi bergantung dari teknologi yang digunakan, baik itu
bahasa pemrograman maupun bahasa skrip yang digunakan.
Untuk menguji code HTML dan CSS yang digunakan dapat menggunakan alat
bantu W3C HTML Validation Service di http://validator.w3.org/ dan W3C CSS
Validation Service di http://jigsaw.w3.org/css-validator/
2. Pengujian navigasi (navigation testing)
Hal ini digunakan untuk melihat kesesuaian antara desain navigasi dengan
navigasi yang ada di aplikasi. Navigasi berhubungan dengan link-link yang
terdapat didalam aplikasi.
Untuk menguji link dapat digunakan alat bantu W3C Link Checker Service di
http://validator.w3.org/checklink
3. Pengujian konfigurasi (configuration testing)
Pengujian ini dilakukan pada sistem operasi, browser, sistem perangkat keras
dan perangkat lunak pendukung. Pengujian ini dilakukan untuk menentukan
batas toleransi kebutuhan aplikasi akan perangkat lunak dan perangkat keras
pendukungnya.
4. Pengujian keamanan dan performansi (security and performance testing)
Pengujian ini dilakukan untuk melihat tingkat keamanan aplikasi dengan cara
menguji aspek-aspek yang dapat menimbulkan gangguan keamanan aplikasi
maupun server. Keamanan aplikasi sangat bergantung pada teknologi
pengembangan website, konfigurasi server yang digunakan dan kelakuan sistem.
Pengujian performansi dapat dilakukan bersamaan dengan pengujian keamanan
aplikasi, karena keamanan aplikasi berbasis web juga tergantung dari
performansi server dan aplikasi tersebut.
- Evaluasi oleh konsumen (customer evaluation)
Perangkat pengembangan aplikasi web
Untuk perangkat pengembangan aplikasi web dapat dikelompokan menjadi
perangkat keras dan perangkat lunak.
Perangkat Keras
Untuk lingkungan pengembangan web yang nyaman, berikut ini peralatan yang
sebaiknya disediakan:
- Komputer Utama, dengan operating system Macintosh, Windows, ataupun Linux. Perusahaan pengembangan web profesional cenderung berbasis Macintosh.
- Memori tambahan. sebaiknya computer memiliki memori yang besar, karena dalam pengembangan web cenderung kita akan membuka beberapa aplikasi sekaligus.
- Sebuah monitor besar. Meskipun bukan keharusan, monitor besar memudahkan untuk desainer visual. Semakin besar monitor, semakin banyak jendela dan panel kontrol dapat terbuka pada waktu yang sama
- Sebuah scanner dan / atau kamera digital. Jika mengantisipasi membuat gambar dan tekstur sendiri, akan memerlukan beberapa alat untuk membuat gambar.
- Sebuah komputer kedua. Banyak web designer merasa berguna memiliki komputer penguji yang menjalankan platform yang berbeda dari komputer utama yang mereka gunakan untuk pengembangan. Karena browser kerja yang berbeda pada Mac dan pada mesin Windows, itu penting untuk menguji halaman web dalam sebanyak mungkin system operasi berbeda.
- Perangkat mobile/smartphone. Saat ini banyak orang mengakses web melalui smartphone/tablet, sehingga kita perlu menguji penampilan dan kinerja situs web yang kita buat pada mobile browser pada smartphone atau perangkat tablet. Namun saat ini banyak web emulator yang dapat digunakan sebagai penguji web kita.
- Perangkat Lunak Untuk
- Web page authoring
Ini adalah kelompok perangkat lunak seperti desktop publishing tetapi format
yang dihasilkan adalah halaman web. Aplikasi ini biasanya bersifat “WYSIWYG”
(What You See Is What You Get, dibaca “whizzy-wig”) yaitu apa yang kamu lihat,
itulah yang kamu dapatkan. Jadi aplikasi ini biasanya ketika membuat
tampilannya seperti yang akan dihasilkan.
Beberapa contoh aplikasi yang termasuk dalam kelompok ini :
- Adobe Dreamweaver, aplikasi ini berbayar dan dibawah lisensi perusahaan Adobe, aplikasi ini banyak digunakan oleh pengembang web. Memiliki banyak fasilitas dan fiture. x Microsoft Expression Web (lisensi dari Windows). Bagian dari Microsoft’s suite yang merupakan aplikasi perancangan professional. x Nvu (Linux, Windows, dan Mac OS X). Tidak ingin membayar untuk Editor WYSIWYG? Nvu (diucapkan N-view, untuk "pandangan baru") adalahsebuah aplikasi open source (sumber terbuka) yang cocok dengan banyak fitur dalam Adobe Dreamweaver, dan dapat diunduh secara gratis di nvu.com.
- Editor
- TextPad (Windows saja). TextPad adalah plain-text sederhana dan murah untuk editor kode di Windows.
- Teks Sublime (Window, Mac, Linux). Editor teks ini terlihat dipreteli namun memiliki banyak fungsi (seperti kode warna dan ikhtisar kode penuh) bagi pengembang web.
- Coda oleh Panic (hanya Macintosh). Pengguna Coda seperti alur kerja yang visual, alat-alat manajemen file, dan built-in akses terminal.
- Textmate oleh MacroMates (hanya Macintosh). Editor teks canggih ini memiliki alat manajemen proyek dan antarmuka yang terintegrasi dengan sistem operasi Mac. Hal ini semakin populer karena disesuaikan, kaya fitur, dan murah.
- BBEdit oleh Bare Bones Software (hanya Macintosh). Untuk pengembang web banyak fitur shortcut yang besar telah membuat editor terkemuka berbasis Mac
- Aplikasi editing gambar dan menggambar
Untuk menambahkan gambar ke halaman web, akan perlu program editing
gambar. Berikut ini beberapa aplikasi yang cukup populer :
- Adobe Photoshop. Photoshop dapat dikatakan sebagai standar industri untuk penciptaan gambar baik dalam cetak maupun dunia web.
- Adobe Photoshop Elements. Versi ini lebih ringan dari Photoshop dirancang untuk mengedit foto dan manajemen, tetapi beberapa penggemar menemukan bahwa ia memiliki semua alat yang diperlukan untuk menempatkan gambar pada halaman web.
- Adobe Illustrator. Karena desainer perlu membuat logo, ikon, dan ilustrasi di berbagai ukuran dan resolusi, untuk itu semua aplikasi ini sangat membantu. Aplikasi ini juga dapat dipadukan dengan Photoshop.
- Adobe Fireworks. Program grafis web ini menggabungkan editor foto dengan alat untuk membuat ilustrasi berbasis vektor. Ia juga memiliki alatalat canggih untuk grafis web.
- Corel Paint Shop Photo Pro (Windows saja). Editor gambar yang penuh fitur ini populer di pengguna Windows, terutama karena harga yang rendah.
Aplikasi Internet
Karena hasil akhir dari pengembangan halaman web digunakan di Internet, maka
diperlukan beberapa aplikasi untuk membuka halaman web, biasa disebut
“browser”.
Berikut ini beberapa aplikasi browser yang cukup populer :
- Windows:
o Chrome
o Firefox
o Safari
o Opera
- Macintosh OS X:
o Chrome
o Firefox
o Opera
- Browser perangkat bergerak (mobile)
o Android Browser (Android)
o BlackBerry Browser (RIM)
o Nokia Series 40 dan Nokia Browser for Symbian
o Opera Mobile dan Mini (installed on any device)
o Internet Explorer Mobile (Windows Phone)
o Silk (Kindle Fire)
Aplikasi transfer file (FTP/File Transfer Protokol).
Sebuah aplikasi FTP memungkinkan untuk mengunggah dan mengunduh file
antara komputer kita dan komputer yang akan menjadi tempat halaman web/web
server. Beberapa aplikasi authoring web sebelumnya juga memiliki aplikasi FTP
yang terintegrasi langsung. Ada juga aplikasi FTP khusus, seperti yang
tercantum di bawah ini:
- Windows
- WS_FTP
- CuteFTP
- AceFTP
- Filezilla
- Transmit
- Cyberduck
- Fetch