.Net Sebagai Kelanjutan Evolusi di Bidang Pengembangan Aplikasi

Artike lbagus dari Tahir Tahang.

Artikel ini akan mengulas pengamatan tentang perkembangan pengembangan aplikasi yang terpantau pada beberapa tahun terakhir dan mencoba menempatkan .Net dalam peta perkembangan tersebut. Dengan mengetahui letak .Net pada peta perkembangan TI kita akan mempunyai latar belakang pengetahuan tambahan dalam memutuskan untuk segera atau tidak mendalami dan menerapkan teknologi .Net dalam menjawab tantangan-tantangan yang kita hadapi.

Sebelum lahirnya teknologi .Net, maka terminologi yang selalu ditekankan oleh Microsoft dalam pengembangan aplikasi adalah DNA. DNAadalah salah satu jawaban Microsoft dalam menghadapi booming penggunaan internet untuk tujuan komersial sekitar 1999-2001 di mana tuntutan kemampuan aplikasi untuk dapat melayani jumlah user yang sangat besar menjadi keharusan. DNA memungkinkan Scalability yaitu kemampuan untuk memberikan pelayanan kepada jumlah user yang sangat besar. Kemampuan layanan aplikasi yang menerapkan arsitek DNA dapat mengikuti perkembangan jumlah user. Pada saat jumlah user mencapai batas maksimal kemampuan server yang ada, layanan aplikasi berbasis DNA tetap bisa memberikan layanan dengan baik, yaitu dengan meningkatkan kemampuan resource yang telah ada (vertical scalability) atau menambahkan resource baru (horizontal scalability) untuk melayani jumlah user yang lebih banyak lagi. Pada prakteknya penambahan kemampuan layanan secara vertikal dilakukan dengan menambah kemampuan CPU atau menambah memory dan kapasitas hardisk dari server. Sedangkan secara horizontal yaitu dengan menambah jumlah server yang ikut serta dalam memberi layanan misalnya dengan menerapkan clustering pada sisi storage, server, aplikasi maupun pada sisi jaringan, sehingga beban yang ada bisa dibagi ke masing-masing anggota cluster. Horizontal scalability ini juga digunakan untuk meningkatkan Availability dari aplikasi berbasis DNA. Availability yang tinggi mengakibatkan ketergantungan tersedianya layanan aplikasi terhadap kerusakan dan gangguan pada salah satu server ataupun jaringan menjadi semakin kecil. Jika salah satu server atau jaringan dalam cluster mengalami gangguan, layanan aplikasi bisa tetap tersedia. Selain clustering dari sisi hardware dan jaringan, DNA juga memungkinkan clustering dari sisi aplikasi yaitu dengan memanfaatkan COM+ dan Message Queue. Jadi modul-modul tertentu dapat dibagi-bagi kepada beberapa server sekaligus.

Salah satu keterbatasan dari arsitek DNA ini adalah resources dalam hal ini server-server maupun modul-modul dari aplikasi yang ikut berpartisipasi dalam memberikan layanan tertentu harus berada dalam satu segmen jaringan (LAN).

Pada arsitek aplikasi berbasis .Net, batasan ini ditiadakan dengan adanya webservice, sehingga modul-modul yang mendukung suatu aplikasi tidak lagi harus berada di computer, ruang, kantor ataupun gedung yang sama. Ibaratnya kalau DNA memungkinan gotong royong diantara penghuni satu rumah dan menggunakan bahasa yang sama maka teknologi .Net memungkinkan gotong royong pada level penghuni satu RT, satu kelurahan bahkan pada siapa saja di dunia yang bersedia berpartisipasi untuk mengatasi tantangan tertentu tanpa melihat bahasa ataupun suku bangsa nya.

Mungkin saja metode ataupun data yang ada pada kita, yang kita pakai dalam menangani persoalan tertentu bisa dimanfaatkan oleh orang lain yang menghadapi persoalan yang hampir sama ataupun sebaliknya. Keahlian dalam metode dan data yang kita punya tersebut bisa dibagi dan dipertukarkan kepada siapa saja yang kita hendaki dalam bentuk webservice. Webservice bisa saja ditulis dalam beragam bahasa dan mungkin dijalankan pada operating system yang berbeda-beda pula, tetapi semuanya bisa saling bekerja sama dalam menangani suatu persoalan. SOAP dan XML adalah bahasa perantara yang memungkinkan komunikasi antara webservice-webservice tersebut.

Dari tadi kita membahas tentang gotong-royong. Dan dengan uraian di atas terlihat jelas hubungan gotong-royong dengan .Net. Prinsip gotong-royong ini tidak lepas dari strategi yang dipakai Microsoft dalam solusi-solusi yang ditawarkan kepada penggunanya dan dalam menghadapi saingan-saingannya.

Jika kita kembali melihat pada jaman sebelum 1990-an, maka secara umum arsitek dari aplikasi adalah “Thin Client and Thick Server” artinya secara umum aplikasi yang ada dijalankan pada komputer server yang berkemampuan tinggi sedangkan komputer yang ada dihadapan pengguna tidak lebih dari sekedar terminal yang mengirimkan input berupa tekanan keyboard ataupun gerak mouse ke server dan menampilkan response dari server baik berupa text ansi ataupun citra grafis yang ditampilkan dalam XWindows yang merupakan display server atau berupa layar tampilan saja. Semua proses yang membutuhkan kekuatan CPU berlangsung di server. Arsitek ini dipakai oleh hampir semua vendor-vendor besar TI pada masa itu baik IBM dengan irix, HP dengan HP-UX, Sun dengan Solaris dan Digital dengan VAX/VMS nya. Bahkan kemudian arsitek ini pun diadopsi pula oleh Microsoft dengan Terminal Server nya. Salah satu yang membedakan antara vendor-vendor tersebut dengan Microsoft adalah mereka selain menyediakan OS nya juga menyediakan hardwarenya, sehingga pilihan operating system tidak bisa terlepas dari pilihan vendor hardware. Pada akhirnya keterikatan ini lambat laun membutuhkan biaya yang tidak sedikit, karena sekali memutuskan, tidak akan ada pilihan lain baik secara operating system, software maupun hardware, kecuali kepada vendor yang bersangkutan, dan kesemuanya saling tergantung, tidak bisa diganti satu persatu.

Perubahan drastis mulai terjadi ketika intel mengeluarkan keluarga CPU X86 yang memungkinkan lahirnya personal computer atau PC yang terjangkau harganya. Sampai pada awal 1990-an, PC dengan kemampuannya yang masih terbatas hanya digunakan sesuai penamaannya yaitu untuk memenuhi kebutuhan pengolahan data secara perorangan, atau dipakai sebagai terminal yang terhubung dengan thick server baik secara serial maupun jaringan tokenring ataupun ethernet network.

Kemudian Novell berhasil memungkinkan PC yang tadinya diperuntukan untuk penggunaan perorangan mendapatkan fungsi tambahan yaitu sebagai file server, tapi dengan mengorbankan fungsi PC nya, karena PC yang dipakai sebagai file server tersebut tidak bisa digunakan sebagai PC biasa lagi. Dengan harga hardisk space yang masih mahal pada saat itu, netware dengan protokol IPX nya menjadi solusi yang sangat efektif di lingkungan perusahaan maupun universitas-universitas sebagai alternatif dari protocol NFS nya unix untuk pemusatan dan distribusi data untuk pengguna-pengguna PC yang semakin banyak.

Pada saat itu Microsoft masih terfokus pada penyediaan operating system dan aplikasi untuk kebutuhan perorangan. Dengan Windows 3.0 yang merupakan shell grafis dari DOS yang sebenarnya, pengguna dan pengembang aplikasi PC semakin dimanjakan. Hal ini didukung oleh tersedianya library windows yang siap pakai dan bahasa pemrograman Visual Basic maupun delphi yang menjadi alat bantu pemrograman yang sangat diminati. Di samping itu juga ada beberapa vendor lain yang menyediakan user interface grafis untuk membungkus DOS yang sebenarnya, tapi tidak sesukses Microsoft. Keunggulan Microsoft adalah karena mereka juga menyediakan alat bantu untuk membuat aplikasi nya. Microsoft berhasil merebut hati para pengembang aplikasi baik yang professional maupun yang amatir. Dengan hadirnya windows, aplikasi-aplikasi perorangan yang tadinya hanya ada di Apple macintosh ataupun Atari yang merupakan operating system berbasis grafis sedikit demi sedikit di porting ke versi windows.

Meningkatnya kemampuan dan penggunaan PC juga menarik perhatian dari vendor-vendor besar TI.
Di sisi desktop, IBM berusaha mengejar popularitas Microsoft windows dengan OS/2 yang jauh lebih serius sebagai operating system dibandingkan windows 3.0 yang hanya sekedar shell.

Di sisi server, Novel tidak sendiri dengan netwarenya, Sun memporting solaris yang tadinya cuma berjalan pada sun-sparc ke intel X86, dan SCO juga menyediakan SCO-Unix yang berjalan di intel X86. Pada sisi lain, Linux yang baru lahir juga mendapat tempat tersendiri di hati para developer, terutama yang telah terbiasa dengan unix, bahkan sejak awal vendor besar seperti Sun sangat besar peranannya dalam pengembangan aplikasi-aplikasi linux dengan menyediakan sunsite dengan protokol ftp di beberapa universitas sebagai pusat pengembangan dan distribusi aplikasi-aplikasi unix yang gratis, fungsinya semacam sourceforge saat ini.

Kembali kepada gotong-royong, kalau di sisi desktop, Macintosh dan Atari menjadi korban pertama dari windows karena gotong-royong nya developers, maka di sisi server, Novel netware adalah target awal Microsoft, karena pasarnya yang sangat besar sebagai file server yang bisa berjalan di PC biasa. Sebelum sampai ke pertarungan yang lebih serius, Microsoft menggunakan gotong-royong nya windows desktop untuk menghalang-halangi makin meluasnya penggunaan Novell netware. Gotong royong di sini adalah dengan memungkinkan pengguna windows saling berbagi file secara peer-to-peer networking tanpa perlu adanya Novell netware sebagai file server. Terminologi yang digunakan sampai sekarang adalah Workgroup. Kemampuan ini mulai ada pada windows for workgroup 3.11. Serangan yang lebih serius ke arah netware dimulai dengan keluarnya Windows NT 3.11 dan disusul dengan windows NT 3.5 yang dipasangkan dengan windows 95. Saat migrasi dari windows 3.1 ke windows 95 sebagai standar OS untuk desktop PC inilah banyak organisasi yang menggantikan Novell netware mereka dengan windows NT 3.5 sebagai file, print dan authentication server. Microsoft mulai memasuki pasar server dengan menggunakan gotong-royong desktop OS nya yang telah mengambil hati penggunanya lebih dulu. Padahal sebenarnya Novell masih cukup tangguh sebagai file, print dan authentication server untuk melayani desktop windows 95. Pada masa ini pula beberapa applikasi perkantoran buatan Microsoft seperti office suite merebut pangsa pasar yang sebelumnya diisi oleh World Perfect dan applikasi office suite buatan IBM. Untuk keperluan ini Microsoft harus menurunkan harga aplikasi office suitenya secara signifikan.

Seiring dengan komersialisasi penggunaan internet, beberapa pengembang mosaic, web browser pertama yang gratis yang dikembangkan pada NCSA (National Center for Supercomputing Applications-University of Illinois) memisahkan diri dan mendirikan perusahaan dan membuat web browser netscape yang komersial yang saat itu sangat diminati karena fitur-fiturnya yang mengungguli NCSA mosaic yang masih gratis. Dengan mengembangkan mosaic lebih jauh menjadi Internet Explorer dan dengan tetap membuatnya gratis Microsoft berhasil merebut kemenangan atas netscape yang berjalan pada beberapa operating system. Bahkan dengan keunggulan-keunggulan yang ada pada Internet Explorer orang rela menjalankannya pada windows operating system. Padahal sebelumnya mosaic dan versi-versi awal dari IE juga berjalan pada beberapa operating system lainnya. Dengan maraknya penggunaan webbrowser, orang kemudian secara sadar atau tidak kembali ke model “thin client thick server” sesuatu yang bertentangan dengan keingingan Microsoft yang lebih suka gotong-royong. Bahkan pada suatu masa sekitar 1998-1999, Oracle yang kokoh database servernya dan Sun dengan java nya mempromosikan apa yang disebut network computing, dimana client tidak lebih dari JVM(java virtual machine) yang menjalankan java applet sebagai user interfacenya sementara pengolahan data terjadi di server. Ide ini sepertinya tidak berhasil karena masih mahalnya biaya koneksi jaringan untuk menghubungkan network computer dengan servernya.

Target Microsoft berikutnya adalah aplikasi-aplikasi server yang sering diasosiasikan dengan kebutuhan enterprise. Di sisi User Management, Directory Server yang disediakan oleh Novell dengan NDS nya bisa digantikan dengan Active Directory. Begitu pula dengan NIS yang menjadi standard pada enterprise server berbasis unix. Pada sisi database, IBM DB2 dan Oracle Data Base server bisa digantikan dengan MS-SQL server. Pada sisi file server, NFS yang menjadi standard pada server berbasis unix sama sekali tidak didukung aksesnya pada windows desktop secara native, meskipun ada beberapa vendor yang menyediakan program tambahan yang memungkinkan akses ke NFS dari windows desktop. Meskipun windows tetap mendukung akses dari desktop windows ke Novell Netware file server, Microsoft lebih suka memaksakan penggunaan protocol SMB buatannya untuk file sharing. Sementara untuk kebutuhan workgroup, Lotus notes bisa digantikan perannya oleh MS-Exchange. Dengan adanya teknologi .Net, beban server bisa di bagi-bagi sehingga layanan apapun yang sebelumnya mungkin hanya dilayani oleh thick server bisa terlayani oleh server-server yang mungkin kurang thick tapi bisa bekerja bersama-sama secara gotong-royong.
Melihat tren dari perkembangan ini maka vendor-vendor TI yang tadinya besar dengan menjagokan kombinasi hardware dan operating systemnya nya yang proprietary dipaksa untuk merevisi aturan permainan mereka, setidaknya jika mereka masih punya interest yang serius untuk tetap berperan di bidang TI. Usaha untuk mengubah aturan permainan dari vendor-vendor besar sudah mulai kelihatan. Misalnya dukungan besar-besaran dari IBM dalam pengembangan linux. Begitu pula gerakan Novell yang membeli suse, salah satu vendor distribusi linux, serta ximian, perusahaan yang mengembangkan aplikasi desktop di linux. Sun yang akan mengembangkan aplikasi desktop berbasis java di linux serta kerja samanya dengan AMD untuk menyiapkan platform server berbasis AMD64 serta dukungan Oracle pada linux, adalah sebagian yang terlihat dari usaha-usaha mengatur kembali langkah permainan dari vendor-vendor besar tersebut. Yang jelas tumpuan mereka ada pada linux, operating system yang dikembangkan dengan gotong-royong.

Dari sini, bisa disimpulkan bahwa hanya akan ada dua kutub yang akan menentukan perkembangan aplikasi-aplikasi dan implementasi TI ke depan. Di satu sisi Microsoft akan menarik enterprise user beralih ke platform Microsoft dan bisa melepas ketergantungan mereka pada pilihan hardware dan vendornya. Grup linux akan menarik pengguna platform windows dengan menawarkan linux yang open source dan katanya lebih aman tanpa label harga pada operating systemnya.

Apakah akan ada titik temunya? Dan bagaimana sebaiknya kita sebagai pengembang aplikasi ataupun pengambil keputusan dalam menyikapi perkembangan ini?

Sejak awal Microsoft mengembangkan .Net, Microsoft membuka kemungkinan adanya titik temu antara kedua kutub tersebut. Hal ini dilakukan dengan membuka spesifikasi c# salah satu bahasa pemrograman yang di .Net kepada public sehingga memungkinkan pihak lain untuk membuat compiler c# untuk platform selain windows. Hal lain yang memungkinkan adanya titik temu adalah dengan keikutsertaan Microsoft mendefinisikan dan mengadopsi open standard seperti XML dan SOAP yang menjadi bahasa perantara webservice bersama dengan vendor-vendor besar lainnya. Go-mono yang merupakan project yang memungkinkan aplikasi yang ditulis dengan c# bisa berjalan di operating system selain windows dibiayai oleh Novell, sementara salah satu IDE untuk development tools nya adalah eclipse yang notabene disediakan oleh IBM, Oracle menyediakan access ke databasenya dari ADO.NET yang menjadi pendukung dasar untuk database di .Net. Untuk yang fanatik dengan java, .Net memberikan dukungan standard J# untuk memanjakan mereka.

Jadi melihat posisi Microsoft dengan .Net nya serta keterlibatan dari vendor-vendor besar yang selama ini berseberangan dengan Microsoft sebagai pencetus teknologi .Net, bisa disimpulkan bahwa penggunaan .Net sebagai dasar arsitek pengembangan aplikasi masa depan tidak perlu diragukan lagi.

Untuk pengembangannya pun sudah ada beberapa pilihan tools, baik yang gratis, yang disediakan oleh community atau oleh Microsoft sendiri seperti webmatrix untuk pengembangan asp.net ataupun yang disediakan oleh go-mono project untuk pengembangan dan pemakaian pada operating system selain windows.

Untuk mendapatkan produktifitas yang tinggi, tersedia pula tools yang komersial seperti Borland Delphi 8.0 yang telah mendukung .Net atau Microsoft Visual Studio.Net. Pilihan tentu akan tergantung dari keseriusan dan tuntutan produktifitas kita dalam pengembangan dan implementasi dari aplikasi .Net yang dibangun.
Semoga artikel ini memberi manfaat bagi pembaca.

Tahir TahangArtikel ini akan mengulas pengamatan tentang perkembangan pengembangan aplikasi yang terpantau pada beberapa tahun terakhir dan mencoba menempatkan .Net dalam peta perkembangan tersebut. Dengan mengetahui letak .Net pada peta perkembangan TI kita akan mempunyai latar belakang pengetahuan tambahan dalam memutuskan untuk segera atau tidak mendalami dan menerapkan teknologi .Net dalam menjawab tantangan-tantangan yang kita hadapi.

Sebelum lahirnya teknologi .Net, maka terminologi yang selalu ditekankan oleh Microsoft dalam pengembangan aplikasi adalah DNA. DNAadalah salah satu jawaban Microsoft dalam menghadapi booming penggunaan internet untuk tujuan komersial sekitar 1999-2001 di mana tuntutan kemampuan aplikasi untuk dapat melayani jumlah user yang sangat besar menjadi keharusan. DNA memungkinkan Scalability yaitu kemampuan untuk memberikan pelayanan kepada jumlah user yang sangat besar. Kemampuan layanan aplikasi yang menerapkan arsitek DNA dapat mengikuti perkembangan jumlah user. Pada saat jumlah user mencapai batas maksimal kemampuan server yang ada, layanan aplikasi berbasis DNA tetap bisa memberikan layanan dengan baik, yaitu dengan meningkatkan kemampuan resource yang telah ada (vertical scalability) atau menambahkan resource baru (horizontal scalability) untuk melayani jumlah user yang lebih banyak lagi. Pada prakteknya penambahan kemampuan layanan secara vertikal dilakukan dengan menambah kemampuan CPU atau menambah memory dan kapasitas hardisk dari server. Sedangkan secara horizontal yaitu dengan menambah jumlah server yang ikut serta dalam memberi layanan misalnya dengan menerapkan clustering pada sisi storage, server, aplikasi maupun pada sisi jaringan, sehingga beban yang ada bisa dibagi ke masing-masing anggota cluster. Horizontal scalability ini juga digunakan untuk meningkatkan Availability dari aplikasi berbasis DNA. Availability yang tinggi mengakibatkan ketergantungan tersedianya layanan aplikasi terhadap kerusakan dan gangguan pada salah satu server ataupun jaringan menjadi semakin kecil. Jika salah satu server atau jaringan dalam cluster mengalami gangguan, layanan aplikasi bisa tetap tersedia. Selain clustering dari sisi hardware dan jaringan, DNA juga memungkinkan clustering dari sisi aplikasi yaitu dengan memanfaatkan COM+ dan Message Queue. Jadi modul-modul tertentu dapat dibagi-bagi kepada beberapa server sekaligus.

Salah satu keterbatasan dari arsitek DNA ini adalah resources dalam hal ini server-server maupun modul-modul dari aplikasi yang ikut berpartisipasi dalam memberikan layanan tertentu harus berada dalam satu segmen jaringan (LAN).

Pada arsitek aplikasi berbasis .Net, batasan ini ditiadakan dengan adanya webservice, sehingga modul-modul yang mendukung suatu aplikasi tidak lagi harus berada di computer, ruang, kantor ataupun gedung yang sama. Ibaratnya kalau DNA memungkinan gotong royong diantara penghuni satu rumah dan menggunakan bahasa yang sama maka teknologi .Net memungkinkan gotong royong pada level penghuni satu RT, satu kelurahan bahkan pada siapa saja di dunia yang bersedia berpartisipasi untuk mengatasi tantangan tertentu tanpa melihat bahasa ataupun suku bangsa nya.

Mungkin saja metode ataupun data yang ada pada kita, yang kita pakai dalam menangani persoalan tertentu bisa dimanfaatkan oleh orang lain yang menghadapi persoalan yang hampir sama ataupun sebaliknya. Keahlian dalam metode dan data yang kita punya tersebut bisa dibagi dan dipertukarkan kepada siapa saja yang kita hendaki dalam bentuk webservice. Webservice bisa saja ditulis dalam beragam bahasa dan mungkin dijalankan pada operating system yang berbeda-beda pula, tetapi semuanya bisa saling bekerja sama dalam menangani suatu persoalan. SOAP dan XML adalah bahasa perantara yang memungkinkan komunikasi antara webservice-webservice tersebut.

Dari tadi kita membahas tentang gotong-royong. Dan dengan uraian di atas terlihat jelas hubungan gotong-royong dengan .Net. Prinsip gotong-royong ini tidak lepas dari strategi yang dipakai Microsoft dalam solusi-solusi yang ditawarkan kepada penggunanya dan dalam menghadapi saingan-saingannya.

Jika kita kembali melihat pada jaman sebelum 1990-an, maka secara umum arsitek dari aplikasi adalah “Thin Client and Thick Server” artinya secara umum aplikasi yang ada dijalankan pada komputer server yang berkemampuan tinggi sedangkan komputer yang ada dihadapan pengguna tidak lebih dari sekedar terminal yang mengirimkan input berupa tekanan keyboard ataupun gerak mouse ke server dan menampilkan response dari server baik berupa text ansi ataupun citra grafis yang ditampilkan dalam XWindows yang merupakan display server atau berupa layar tampilan saja. Semua proses yang membutuhkan kekuatan CPU berlangsung di server. Arsitek ini dipakai oleh hampir semua vendor-vendor besar TI pada masa itu baik IBM dengan irix, HP dengan HP-UX, Sun dengan Solaris dan Digital dengan VAX/VMS nya. Bahkan kemudian arsitek ini pun diadopsi pula oleh Microsoft dengan Terminal Server nya. Salah satu yang membedakan antara vendor-vendor tersebut dengan Microsoft adalah mereka selain menyediakan OS nya juga menyediakan hardwarenya, sehingga pilihan operating system tidak bisa terlepas dari pilihan vendor hardware. Pada akhirnya keterikatan ini lambat laun membutuhkan biaya yang tidak sedikit, karena sekali memutuskan, tidak akan ada pilihan lain baik secara operating system, software maupun hardware, kecuali kepada vendor yang bersangkutan, dan kesemuanya saling tergantung, tidak bisa diganti satu persatu.

Perubahan drastis mulai terjadi ketika intel mengeluarkan keluarga CPU X86 yang memungkinkan lahirnya personal computer atau PC yang terjangkau harganya. Sampai pada awal 1990-an, PC dengan kemampuannya yang masih terbatas hanya digunakan sesuai penamaannya yaitu untuk memenuhi kebutuhan pengolahan data secara perorangan, atau dipakai sebagai terminal yang terhubung dengan thick server baik secara serial maupun jaringan tokenring ataupun ethernet network.

Kemudian Novell berhasil memungkinkan PC yang tadinya diperuntukan untuk penggunaan perorangan mendapatkan fungsi tambahan yaitu sebagai file server, tapi dengan mengorbankan fungsi PC nya, karena PC yang dipakai sebagai file server tersebut tidak bisa digunakan sebagai PC biasa lagi. Dengan harga hardisk space yang masih mahal pada saat itu, netware dengan protokol IPX nya menjadi solusi yang sangat efektif di lingkungan perusahaan maupun universitas-universitas sebagai alternatif dari protocol NFS nya unix untuk pemusatan dan distribusi data untuk pengguna-pengguna PC yang semakin banyak.

Pada saat itu Microsoft masih terfokus pada penyediaan operating system dan aplikasi untuk kebutuhan perorangan. Dengan Windows 3.0 yang merupakan shell grafis dari DOS yang sebenarnya, pengguna dan pengembang aplikasi PC semakin dimanjakan. Hal ini didukung oleh tersedianya library windows yang siap pakai dan bahasa pemrograman Visual Basic maupun delphi yang menjadi alat bantu pemrograman yang sangat diminati. Di samping itu juga ada beberapa vendor lain yang menyediakan user interface grafis untuk membungkus DOS yang sebenarnya, tapi tidak sesukses Microsoft. Keunggulan Microsoft adalah karena mereka juga menyediakan alat bantu untuk membuat aplikasi nya. Microsoft berhasil merebut hati para pengembang aplikasi baik yang professional maupun yang amatir. Dengan hadirnya windows, aplikasi-aplikasi perorangan yang tadinya hanya ada di Apple macintosh ataupun Atari yang merupakan operating system berbasis grafis sedikit demi sedikit di porting ke versi windows.

Meningkatnya kemampuan dan penggunaan PC juga menarik perhatian dari vendor-vendor besar TI.
Di sisi desktop, IBM berusaha mengejar popularitas Microsoft windows dengan OS/2 yang jauh lebih serius sebagai operating system dibandingkan windows 3.0 yang hanya sekedar shell.

Di sisi server, Novel tidak sendiri dengan netwarenya, Sun memporting solaris yang tadinya cuma berjalan pada sun-sparc ke intel X86, dan SCO juga menyediakan SCO-Unix yang berjalan di intel X86. Pada sisi lain, Linux yang baru lahir juga mendapat tempat tersendiri di hati para developer, terutama yang telah terbiasa dengan unix, bahkan sejak awal vendor besar seperti Sun sangat besar peranannya dalam pengembangan aplikasi-aplikasi linux dengan menyediakan sunsite dengan protokol ftp di beberapa universitas sebagai pusat pengembangan dan distribusi aplikasi-aplikasi unix yang gratis, fungsinya semacam sourceforge saat ini.

Kembali kepada gotong-royong, kalau di sisi desktop, Macintosh dan Atari menjadi korban pertama dari windows karena gotong-royong nya developers, maka di sisi server, Novel netware adalah target awal Microsoft, karena pasarnya yang sangat besar sebagai file server yang bisa berjalan di PC biasa. Sebelum sampai ke pertarungan yang lebih serius, Microsoft menggunakan gotong-royong nya windows desktop untuk menghalang-halangi makin meluasnya penggunaan Novell netware. Gotong royong di sini adalah dengan memungkinkan pengguna windows saling berbagi file secara peer-to-peer networking tanpa perlu adanya Novell netware sebagai file server. Terminologi yang digunakan sampai sekarang adalah Workgroup. Kemampuan ini mulai ada pada windows for workgroup 3.11. Serangan yang lebih serius ke arah netware dimulai dengan keluarnya Windows NT 3.11 dan disusul dengan windows NT 3.5 yang dipasangkan dengan windows 95. Saat migrasi dari windows 3.1 ke windows 95 sebagai standar OS untuk desktop PC inilah banyak organisasi yang menggantikan Novell netware mereka dengan windows NT 3.5 sebagai file, print dan authentication server. Microsoft mulai memasuki pasar server dengan menggunakan gotong-royong desktop OS nya yang telah mengambil hati penggunanya lebih dulu. Padahal sebenarnya Novell masih cukup tangguh sebagai file, print dan authentication server untuk melayani desktop windows 95. Pada masa ini pula beberapa applikasi perkantoran buatan Microsoft seperti office suite merebut pangsa pasar yang sebelumnya diisi oleh World Perfect dan applikasi office suite buatan IBM. Untuk keperluan ini Microsoft harus menurunkan harga aplikasi office suitenya secara signifikan.

Seiring dengan komersialisasi penggunaan internet, beberapa pengembang mosaic, web browser pertama yang gratis yang dikembangkan pada NCSA (National Center for Supercomputing Applications-University of Illinois) memisahkan diri dan mendirikan perusahaan dan membuat web browser netscape yang komersial yang saat itu sangat diminati karena fitur-fiturnya yang mengungguli NCSA mosaic yang masih gratis. Dengan mengembangkan mosaic lebih jauh menjadi Internet Explorer dan dengan tetap membuatnya gratis Microsoft berhasil merebut kemenangan atas netscape yang berjalan pada beberapa operating system. Bahkan dengan keunggulan-keunggulan yang ada pada Internet Explorer orang rela menjalankannya pada windows operating system. Padahal sebelumnya mosaic dan versi-versi awal dari IE juga berjalan pada beberapa operating system lainnya. Dengan maraknya penggunaan webbrowser, orang kemudian secara sadar atau tidak kembali ke model “thin client thick server” sesuatu yang bertentangan dengan keingingan Microsoft yang lebih suka gotong-royong. Bahkan pada suatu masa sekitar 1998-1999, Oracle yang kokoh database servernya dan Sun dengan java nya mempromosikan apa yang disebut network computing, dimana client tidak lebih dari JVM(java virtual machine) yang menjalankan java applet sebagai user interfacenya sementara pengolahan data terjadi di server. Ide ini sepertinya tidak berhasil karena masih mahalnya biaya koneksi jaringan untuk menghubungkan network computer dengan servernya.

Target Microsoft berikutnya adalah aplikasi-aplikasi server yang sering diasosiasikan dengan kebutuhan enterprise. Di sisi User Management, Directory Server yang disediakan oleh Novell dengan NDS nya bisa digantikan dengan Active Directory. Begitu pula dengan NIS yang menjadi standard pada enterprise server berbasis unix. Pada sisi database, IBM DB2 dan Oracle Data Base server bisa digantikan dengan MS-SQL server. Pada sisi file server, NFS yang menjadi standard pada server berbasis unix sama sekali tidak didukung aksesnya pada windows desktop secara native, meskipun ada beberapa vendor yang menyediakan program tambahan yang memungkinkan akses ke NFS dari windows desktop. Meskipun windows tetap mendukung akses dari desktop windows ke Novell Netware file server, Microsoft lebih suka memaksakan penggunaan protocol SMB buatannya untuk file sharing. Sementara untuk kebutuhan workgroup, Lotus notes bisa digantikan perannya oleh MS-Exchange. Dengan adanya teknologi .Net, beban server bisa di bagi-bagi sehingga layanan apapun yang sebelumnya mungkin hanya dilayani oleh thick server bisa terlayani oleh server-server yang mungkin kurang thick tapi bisa bekerja bersama-sama secara gotong-royong.
Melihat tren dari perkembangan ini maka vendor-vendor TI yang tadinya besar dengan menjagokan kombinasi hardware dan operating systemnya nya yang proprietary dipaksa untuk merevisi aturan permainan mereka, setidaknya jika mereka masih punya interest yang serius untuk tetap berperan di bidang TI. Usaha untuk mengubah aturan permainan dari vendor-vendor besar sudah mulai kelihatan. Misalnya dukungan besar-besaran dari IBM dalam pengembangan linux. Begitu pula gerakan Novell yang membeli suse, salah satu vendor distribusi linux, serta ximian, perusahaan yang mengembangkan aplikasi desktop di linux. Sun yang akan mengembangkan aplikasi desktop berbasis java di linux serta kerja samanya dengan AMD untuk menyiapkan platform server berbasis AMD64 serta dukungan Oracle pada linux, adalah sebagian yang terlihat dari usaha-usaha mengatur kembali langkah permainan dari vendor-vendor besar tersebut. Yang jelas tumpuan mereka ada pada linux, operating system yang dikembangkan dengan gotong-royong.

Dari sini, bisa disimpulkan bahwa hanya akan ada dua kutub yang akan menentukan perkembangan aplikasi-aplikasi dan implementasi TI ke depan. Di satu sisi Microsoft akan menarik enterprise user beralih ke platform Microsoft dan bisa melepas ketergantungan mereka pada pilihan hardware dan vendornya. Grup linux akan menarik pengguna platform windows dengan menawarkan linux yang open source dan katanya lebih aman tanpa label harga pada operating systemnya.

Apakah akan ada titik temunya? Dan bagaimana sebaiknya kita sebagai pengembang aplikasi ataupun pengambil keputusan dalam menyikapi perkembangan ini?

Sejak awal Microsoft mengembangkan .Net, Microsoft membuka kemungkinan adanya titik temu antara kedua kutub tersebut. Hal ini dilakukan dengan membuka spesifikasi c# salah satu bahasa pemrograman yang di .Net kepada public sehingga memungkinkan pihak lain untuk membuat compiler c# untuk platform selain windows. Hal lain yang memungkinkan adanya titik temu adalah dengan keikutsertaan Microsoft mendefinisikan dan mengadopsi open standard seperti XML dan SOAP yang menjadi bahasa perantara webservice bersama dengan vendor-vendor besar lainnya. Go-mono yang merupakan project yang memungkinkan aplikasi yang ditulis dengan c# bisa berjalan di operating system selain windows dibiayai oleh Novell, sementara salah satu IDE untuk development tools nya adalah eclipse yang notabene disediakan oleh IBM, Oracle menyediakan access ke databasenya dari ADO.NET yang menjadi pendukung dasar untuk database di .Net. Untuk yang fanatik dengan java, .Net memberikan dukungan standard J# untuk memanjakan mereka.

Jadi melihat posisi Microsoft dengan .Net nya serta keterlibatan dari vendor-vendor besar yang selama ini berseberangan dengan Microsoft sebagai pencetus teknologi .Net, bisa disimpulkan bahwa penggunaan .Net sebagai dasar arsitek pengembangan aplikasi masa depan tidak perlu diragukan lagi.

Untuk pengembangannya pun sudah ada beberapa pilihan tools, baik yang gratis, yang disediakan oleh community atau oleh Microsoft sendiri seperti webmatrix untuk pengembangan asp.net ataupun yang disediakan oleh go-mono project untuk pengembangan dan pemakaian pada operating system selain windows.

Untuk mendapatkan produktifitas yang tinggi, tersedia pula tools yang komersial seperti Borland Delphi 8.0 yang telah mendukung .Net atau Microsoft Visual Studio.Net. Pilihan tentu akan tergantung dari keseriusan dan tuntutan produktifitas kita dalam pengembangan dan implementasi dari aplikasi .Net yang dibangun.
Semoga artikel ini memberi manfaat bagi pembaca.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s


%d blogger menyukai ini: