Thursday 21 July 2011

Tools untuk pengembangan Aplikasi Enterprise


Tools atau peralatan dalam mengembangkan aplikasi merupakan bagian penting karena akan sangat membantu dan mempersingkat proses pengembangan. Maksud dari tulisan ini adalah untuk meletakan dasar yang efektif pada manajemen proyek pengembangan piranti lunak asal saja prosesnya ditinjau. Suatu proses dimulai dengan persyaratan sistem analis yang mana selama persyaratan sistem dialokasikan untuk piranti keras, karya yang kokoh, dan sub systempiranti lunak. Proses pengembangan diakhiri bilamana sub systemnya diuji coba, didemontrasikan yang sesuai dengan persyaratan system, dan siap diinstal-kan untuk dioperasikan. Instalasi dan aktivitas pengoperasiannya mengikuti uji coba piranti keras, dan piranti lunak serta sub rangkaian terintegrasi untuk format subsegmen, segmen, dan akhirnya system komplit. Rapi, tertib dan pendekatan pengembangan piranti lunaknya yang terstruktur berikutnya tercapai.
Berikut ini ada beberapa hal yang perlu diperhatikan, diantaranya ;
  • Kegunaan dari tools atau peralatan pengembangan adalah untuk meletakan dasar pengelolaan Proyek Pengembangan Piranti Lunak (PL).
  • Proses pengembangan berasal dari kegiatan analisa apa yang diperlukan suatu sistem, agar sistem bisa berjalan dan menghasilkan sesuatu yang memang diharapkan manfaatnya bagi pemakai. (disebut : Analisa Kebutuhan Sistem ).
  • Selama dalam analisa ini perlu dialokasikan hardware, firmware dan sub sistem software (yang harus diwujudkan / dikembangkan / dimutakhirkan).
  • Proses pengembangan ini diakhiri bilamana subsistem telah diuji, disajikan sesuai dengan kebutuhan sistem dan dipasang / dipakai untuk dijalankan. Kegiatan pemakaian dan pengoperasian dilakukan sesudah pengujian hardware dan software dan berikut pemaduan untuk membentuk suatu sub segmen, segmen dan akhirnya pengujian sistem secara lengkap.
Pendekatan Pengembangan Software yang teratur dan tersusun baik akan diperoleh hal-hal seperti di bawah ini, antara lain :
  1. Meningkatkan kemungkinan keberhasilan.
  2. Membutuhkan keyakinan bagi pemakai bila diberi suatu pendekatan terencana untuk mengelola software.
  3. Memberi wawasan yang lebih mendalam bagi pemakai / user dan pimpinan bila diberikan dokumentasi pengembangan yang baku beserta tahap-tahapannya.
  4. Mampu menetapkan tanggung jawab jawab organisasi.
  5. Meningkatkan ketepatan rancangan software dan perkiraan biaya pengembangan.
  6. Mengurangi biaya pengembangan software.
  7. Meningkatkan kualitas proyek.
  8. Memberikan pengetahuan bagi personil pendukung yang bukan perekayasa software tentang proses pengembangan software.

Menyediakan sumber data untuk penyiapan usulan yang akan datang dan sumber data untuk perencanaan proyek.
1) Piranti Pengembangan Aplikasi Enterprise, Piranti pengembangan adalah semua tool dan komponen yang dibutuhkan dalam pembuatan aplikasi /sofware. Software Enterprise juga dikenal sebagai perangkat lunak aplikasi enterprise (EAS), adalah perangkat lunak yang digunakan dalam organisasi. Misalnya di dalam bisnis atau pemerintah, sebagai lawan dari perangkat lunak yang dipilih oleh individu (misalnya, perangkat lunak ritel). Layanan yang disediakan oleh perusahaan software biasanya berorientasi pada alat bisnis seperti belanja online dan memproses pembayaran secara online, katalog produk interaktif, sistem penagihan otomatis, keamanan, manajemen konten, layanan manajemen TI, perencanaan sumber daya, intelijen bisnis, manajemen SDM, manufaktur, integrasi aplikasi, dan otomatisasi bentuk.
Perangkat lunak Enterprise menggambarkan kumpulan program komputer dengan aplikasi bisnis umum, alat-alat untuk pemodelan cara kerja seluruh organisasi, dan alat-alat pengembangan untuk membangun aplikasi unik untuk organisasi. Perangkat lunak ini dimaksudkan untuk memecahkan masalah perusahaan-lebar (daripada masalah departemen) dan seringkali ditulis menggunakan Enterprise Software Architecture . Tingkat software Enterprise bertujuan untuk meningkatkan produktivitas perusahaan dan efisiensi dengan menyediakan bisnis dan mendukung fungsi logika.

Beberapa piranti yang umum digunakan adalah ;
1. Compiler, adalah tool paling dasar yang berfungsi mengubah source code menjadi aplikasi.
2. Runtime, adalah lingkungan yang dibutuhkan agar program/aplikasi yang dibuat bisa berjalan sebagaimana mestinya. Sebagai contoh , aplikasi yang dibangun dengan Java, harus ada Java Runtime environmentnya (JRE) sedangkan aplikasi yang dibangun dengan teknologi .NET Microsoft harus mempunyai .NET framework agar program bisa berjalan.
3. IDE/Editor, adalah tool yang menggabungkan fungsi compiler, editor, debugger menjadi satu tampilan sehingga proses pembuatan aplikasi lebih cepat karena semuanya terintergrasi menjadi 1 tool. Contoh IDE yang paling populer adalah Visual studio, Eclipse, dan Netbeans IDE.
4. Debugger, adalah tool yang dipakai untuk mendeteksi Bug dari program yang kita buat saat ini. Kebanyakan debugger sudah terintegrasi dengan IDE.
5. Languange programing /bahasa pemrograman, ini adalah hal yang paling mendasar, dimana dengan bahasa ini “Ide dan proses bisnis” di implementasikan.
6. Framework, adalah sekumpulan library/komponen/fungsi agar pembuatan sofware menjadi lebih cepat. Contoh framework di Java misalnya Spring framework, sedangkan di PHP misalkan Code Igniter, umumnya dengan menggunakan framework, program akan cepat selesai dikerjakana karena fungsi fungsi umum sudah disediakan oleh framework tersebut, misal fungsi validasi, pembuatan form, koneksi, operasi Create update delete data di database dan sebagainya.
7 Testing Tool, adalah tool untuk mengecek apakah komponen /aplikasi yang kita buat sudah cukup bagus dan tidak terdapat bug didalamnya. contoh testing tool adalah Junit.
Aplikasi Perangkat Lunak Enterprise Piranti pengembangan aplikasi enterprise umumnya menggunakan Java EE dengan tool seperti Netbeans/ Eclipse dan Aplication server seperti Glashfish. Komponen lainnya adalah Database server seperti mySQL, Oracle,atau PostgreSQL. Perangkat lunak aplikasi Enterprise merupakan aplikasi perangkat lunak yang melakukan fungsi bisnis seperti pemrosesan order, pengadaan, penjadwalan produksi, manajemen informasi pelanggan, dan akuntansi. Hal ini biasanya di-host di server dan menyediakan layanan secara simultan ke sejumlah besar pengguna, biasanya melalui jaringan komputer. Hal ini berbeda dengan aplikasi single-user yang dijalankan pada komputer pribadi pengguna dan hanya melayani satu user pada suatu waktu.
Gambaran Umum Spring
Spring merupakan sebuah framework (kerangka kerja) yang digunakan untuk membangun sebuah aplikasi Enterprise. Spring termasuk framework yang lightweight (ringan) untuk mendukung secara penuh dalam pengembangan aplikasi Enterprise siap pakai.
Spring dapat digunakan untuk melakukan pengaturan deklarasi manajemen transaksi, remote access dengan menggunakan RMI atau layanan web lainnya, fasilitas mailing, dan beragam opsi untuk pengaturan data ke database. Spring juga memungkinkan kita menggunakan hanya modul-modul tertentu sehingga kita tidak usah menggunakan semua modul spring dalam aplikasi apabila tidak diperlukan.

Fitur-fitur dari Spring Framework :
1. Transaction Management : Spring framework menyediakan sebuah layer abstrak yang generik untuk manajemen transaksi, sehingga memudahkan para developer dalam melakukan manajemen transaksi.
2. JDBC Exception Handling : layer abstrak JDBC menawarkan exception yang bersifat hierarki sehingga memudahkan penanganan error.
3. Integration with Hibernate, JDO, and iBatis : Spring menawarkan layanan integrasi terbaik dengan Hibernate, JDO dan iBatas
4. AOP Framework : Spring merupakan framework AOP Terbaik yang pernah ada.
5. MVC Framework : Spring hadir dengan framework aplikasi web MVC, yang dibangun di atas inti Spring. Spring merupakan framework yang sangat fleksibel dalam pengaturan strategi interface, dan mengakomodasi beberapa teknologi view seperti JSP, Velocity, Tiles, iText, dan POI.

Arsitektur Spring :
1. Spring AOP
Salah satu komponen utama Spring adalah AOP Framework, AOP framework digunakan untuk :
* Untuk menyediakan layanan Enterprise, terutama sebagai pengganti EJB. Layanan terpenting dalam layanan ini adalah untuk mendekralitf manajemen transaksi, yang telah disediakan dalam abstraksi spring transaction.
* Untuk memungkinkan pengguna dalam menerapkan AOP dalam penggunaan OOP.
2. Spring ORM
Spring ORM berhubungan dengan akses database dan menyediakan lapisan layer terintegrasi dengan ORM yang populer termasuk JDO, Hibernate dan iBatis.
3. Spring Web
Merupakan bagian dari modul pengembangan Web Spring termasuk Spring Web MVC.
4. Spring DAO
DAO (Data Access Object) mendukung standarisasi akses data yang menggunakan teknologi seperti JDBC, Hibernate dan JDO.
5. Spring Context
Paket ini didasari pada paket beans untuk menambah dukungan sumber pesan dan untuk pola desain Observer, dan kemampuan untuk mendapatkan sumber daya yang konsisten dengan menggunakan API.
6. Spring Web MVC
Menyediakan implementasi MVC untuk aplikasi web.
7. Spring Core
Paket Spring Core ini merupakan komponen paling penting dari Spring Framework.
Komponen ini menyediakan fitur Dependency Injection. BeanFactory memisahkan dependensi seperti inisialisasi, pembentukan dan akses object dari logika program anda.

Gambaran Umum Glassfish
Glassfish adalah salah satu Application Server produk Sun Microsystem yang banyak digunakan untuk aplikasi enterprise. Glassfish dapat berdiri sendiri maupun dalam sistem cluster. Glashfish merupakan open source Java EE Aplication server.
GlassFish Enterprise Server v3
Sun meluncurkan GlassFish Enterprise Server v3. Ini adalah server aplikasi pertama yag kompatibel dengan Java EE6 yang meniadakan kompleksitas, berfitur baru, signifikan serta fleksibilitas yang meningkat. GlassFish adalah server aplikasi yang kompatibel dengan Java EE yang paling sering diunduh di industrinya. Dengan lebih dari 24 juta pengunduh sampai dengan hari ini, Sun GlassFish Enterprise Server v3 memberikan solusi server aplikasi setingkat enterprise berbasis open source.

Dengan Sun GlassFish Enterprise Server v3, organisasi dapat membuat dan menggunakan aplikasi Web modern dengan Java EE 6 Web Profile dan dengan mudah meningkatkan kekuatan platform Java EE 6 secara utuh untuk aplikasi enterprise.
Pengembang juga mendapatkan manfaat dari model programming yang lebih sederhana dan peningkatan produktivitas yang ditawarkan oleh Java EE 6, yang memungkinkan pengembangan yang lebih cepat dan membantu menurunkan biaya pengembangan.

Selain menghadirkan peningkatan yang luar biasa di Java EE 6, Sun GlassFish Enterprise Server v3 menyediakan fitur untuk membantu meningkatkan waktu start-up dan mengurangi pemanfaatan sumber daya ditambah dengan kapabilitas fine-grained monitoring yang menawarkan observabilitas yang lebih baik untuk pengembang dan operator TI.
Sun GlassFish Enterprise Server v3 didasarkan pada teknologi open source, sehingga pelanggan memiliki kontrol lebih besar atas penggunaan produk mereka dan tidak harus memilih antara fitur open source dan enterprise. GlassFish Enterprise Server menawarkan transparansi melalui roadmap persyaratan dan prioritas produk yang tersedia untuk publik yang diperkuat oleh kontribusi eksternal dan komunitas yang enerjik.





1 comment:

  1. , bermanfaat sekalii untuk kita anak-anak software engineering..makasih yah

    ReplyDelete

Berikanlah Komentar, saran dan Kritik yang membangun "

Tips Untuk Orangtua Anak Indigo

bersikap jujur , berikanlah penjelasan lengkap sebanyak  ungkin untuk kedewasaan dan intelegensi mereka. jangan berbohong, berbohong ter...