Keuntungan membangun software menggunakan prototipe :
·Menghasilkan syarat yang lebih baik dari produksi yang dihasilkan oleh metode ‘spesifikasi tulisan’.
·User dapat mempertimbangkan sedikit perubahan selama masih bentuk prototipe.
·Memberikan hasil yang lebih akurat dari pada perkiraan sebelumnya, karena fungsi yang diinginkan dan kerumitannya sudah dapat diketahui dengan baik.
·User merasa puas. Pertama, user dapat mengenal melalui komputer. Dengan melakukan prototipe (dengan analisis yang sudah ada), user belajar mengenai komputer dan aplikasi yang akan dibuatkan untuknya. Kedua, user terlibat langsung dari awal dan memotivasi semangat untuk mendukung analisis selama proyek berlangsung.
Langkah-langkah pembuatan prototipe :
Langkah Pertama
Permintaan bermula dari kebutuhan user.
Langkah Kedua
Bangunlah sistem prototipe untuk menemukan kebutuhan awal yang diminta.
Langkah Ketiga
Biarkan user menggunakan prototipe. Analis harus memberikan pelatihan, membantu dan duduk bersama-sama dengan user, khususnya untuk pertama kali. Anjurkan perubahan. User harus melihat fungsi-fungsi dan sifat dari prototipe, lihat bagaimana ia memecahkan masalah bisnis dan mengusulkan perbaikan.
Langkah Keempat
Implementasikan saran-saran perubahan.
Langkah Kelima
Ulangi langkah ketiga sampai user merasa puas.
Langkah Keenam
Merancang dan membangun suatu sistem akhir seperti sebelumnya.
Ada tiga teknik yang digunakan untuk melakukan estimasi, yaitu :
1.Keputusan Profesional
Katakanlah bahwa anda merupakan orang yang memiliki pengalaman yang luas dalam membuat program “report generation modules”. Anda melakukannya dengan pendekatan merancang report tersebut dan memperkirakan berapa lama waktu yang dibutuhkan untuk membuat program tersebut. Setelah mempelajari rancangan program selama 5 menit, programmer lalu menutup matanya selama 5 menit (dia tidak tidur, tetapi berhitung), dan kemudian mengatakan “15 hari”. Inilah yang disebut Keputusan Profesional murni.
Keuntungan dari teknik ini adalah cepat , dan jika seseorang sudah ahli dalam teknik ini, maka estimasinya pasti akan lebih akurat. Sedangkan kerugian dari teknik ini adalah bahwa anda membutuhkan seorang ahli yang berpengalaman dalam bidang ini, dan beberapa ahli tersebut akan bekerja keras untuk mendapatkan estimasi yang tepat.
2.Sejarah
Jalan keluar dari ketergantungan pada orang dan untuk membuat estimasi lebih khusus, yaitu anda harus mengerti tentang sejarahnya. Tulislah berapa lama masing-masing tugas dapat diselesaikan dan siapa yang bertanggung jawab atas tugas tersebut.
Anda dapat membandingkan tuagas yang akan diestimasik dengan tugas yang sama yang dikerjakan lebih awal, setelah itu mulailah dengan melakukan estimasi. Hal ini dimaksudkan agar anda menjabarkan suatu proyek ke dalam beberapa tugas yang biasanya diulang dan mudah untuk dibandingkan.
3.Rumus-rumus
Ada beberapa rumus yang digunakan dalam software estimasi. Software yang baik untuk diketahui adalah COCOMO (Referensi 15). COCOMO dapat digunakan untuk memperkirakan biaya proyek, usaha (person months), jadwal, dan jumlah staf untuk masing-masing fase berikut ini :
Langkah 1. Rencana Penggabungan (Plan The Integration)
Menurut akal sehat anda tidak akan dapat membuat semua program sekaligus dan kemudian membuang semuanya – ini memerlukan rangkaian langkah demi langkah.Rencanakan urutan dimana anda akan menggabungkannya. Bab 9 ini merinci beberapa metode untuk menggabungkan bagian-bagian tersebut, tetapi anda harus merencanakan urutan penggabungan ini sekarang, karena anda harus menulis program supaya dapat digabungkan. Ini disebut Rencana Tes Sistem (System Test Plan).
Langkah 2. Mendisain Modul (Design The Module)
Programmer menerima beberapa tingkatan disain dari fase disain. Tugasnya adalah memecah modul secara rinci ke tingkat yang lebih rendah sampi mencapai keadaan programmer siap untuk melakukan pemrograman. Ini disebut disain modul.
Langkah 3. Telusuri Disain Modul
(Walk Through The Module Design)
Seperti pada tingkat atas dan menengah dari disain, pertukaran harus dibuat sebaiknya pada tingkat yang paling rendah. Telusuri disain darimasing-masing modul sebelum melakukan pengkodean. Penelusuran ini sangat kecil : hanya programmer yang tepat, supervisor dan mungkin programmer lainnya yang perlu diperhatikan. Kegunaan dari penelusuran disain modul adalah untuk memastikan bahwa disain yang terbaik yang telah dilakukan, semua fungsi telah dialamatkan dan semua bagian telah ditangani.
Langkah 4. Rencana Bagaimana Menguji Modul(Plan How To Test The Module)
Programmer harus menyiapkan rencana pengujian modul dan data pengujian sebelum dikodekan. Rencana pengujian dilakukan setelah kode ditetapkan. Mereka cenderung hanya menguji bagian kode yang paling ‘sulit’. Pimpinan proyek bisa saja melakukan tuntutan pada penelusuran rencana pengujian sepanjang disain modul sedang dilaksanakan. Kerjakan penelusuran ini bersama-sama.
Langkah 5. Kode Setiap Modul (Code Each Module)
Standar pengkodean akan ditetapkan pada saat disain sistem (lihat bagian 7.12). Kita tidak membahas bagaimana membuat program – lihat Referensi 12 (tulisan ini membahas disain sama baiknya dengan pemrograman) dan Referensi 13 untuk lebih jelasnya.
Berikut ini adalah ringkasan dari sebuah program terstruktur, yaitu :
·Jika berukuran kecil. Aturan dasarnya adalah kira-kira 100 baris kode yang dapat dieksekusi dan listingnya tidak lebih dari 2 halaman.
·Satu entry, satu exit.
·Referensi secara keseluruhan sedikit.
·Konstruksi terstruktur yang digunakan : berurutan, IF/THEN/ELSE, CASE, WHILE, UNTIL, CALL (bukan GO TO).
Langkah 6. Menguji Modul (Test The Module)
Programmer menguji modul dengan menetapkan lingkungan yang tepat, menyediakan beberapa input, membiarkan modul langsung memproses secara logik dan mendapatkan hasilnya. Beberapa input mungkin tidak sebenarnya, terutama jika modul tersebut tidak menyediakan input yang sebenarnya.
Modul seharusnya diuji dalam dua tahap, yaitu :
·Tahap Pertama disebut pengujian “White Box”. Programmer harus mengetahui isi di dalam modul dan menyediakan data pengujian, sehingga masing-masing path logical dalam program dapat dieksekusi.
·Tahap Kedua atau pengujian “Black Box” dapat dilakukan. Dalam pengujian ini, programmer mengabaikan bagian dalam dari modul – data disediakan secara berurut dan dianggap seperti pemakaian sebenarnya.
Langkah 7. Menguji Level Terendah dari Integrasi(Test The Lowest Levels Of Integration)
Jika modul utama memanggil sub-modul, programmer harus menggabungkan dan menguji semua modul secara bersama-sama. Bahkan jika programmer tidak bertanggung jawab untuk menulis sub-modul, programmer harus menguji perintah CALL dan RETURN dari seluruh modul.
Metode terbaik untuk melakukan hal ini adalah membuat sebuah “program stub” (potongan program) sebagai pengganti sub-modul. Potongan program ini dapat terdiri dari empat baris program yang menunjukkan bahwa kontrol sudah diterima dengan baik, tampilkan parameter penerima, jika perlu lakukan pengontrolan kembali dengan beberapa parameter yang tidak sebenarnya.
Langkah 8. Menyimpan Semua Hasil Pengujian; Penggabungan Modul-modul Yang Telah Diuji (Save The Results Of All Tests; Submit Finished Modules To Integration)
Hasil pengujian digunakan untuk menyusun statistik yang menunjukkan penyebab, cara perbaikan serta biaya-biaya yang dibutuhkan untuk memperbaiki kesalahan-kesalahan program. Pimpinan proyek biasanya menguasai/mengepalai penggabungan ini pada sistem berukuran kecil sampai sedang.
Software seperti CMS (Code Management System) sangat berguna untuk menajemen konfigurasi – menjamin program tetap berjalan sesuai versinya dan mengubah ke source code (lihat bagian 9.4).
Langkah 9. Memulai Dokumentasi User(Get Started On The User Documentation)
Apakah programmer bertanggung jawab pada dokumentasi user atau tidak, tahapan ini adalah waktu terbaik untuk menjawabnya.
Sistem operasi mobile adalah software utama yang melakukan manajemen dan kontrol terhadap hardware secara langsung serta manajemen dan mengontrol software-software lain sehingga software-software lain tersebut dapat bekerja. Sehingga suatu sistem operasi mobile akan bertanggung jawab dalam mengoperasikan berbagai fungsi dan fitur yang tersedia dalam perangkat ponsel tersebut seperti, schedulling task, keyboard, WAP, email, text message, sinkronisasi dengan aplikasi dan perangkat lain, memutar musik, camera, dan mengontrol fitur-fitur lainnya.
Selain berfungsi untuk mengkontrol sumber daya hardware dan software ponsel seperti keypad, layar, phonebook, baterai, dan koneksi ke jaringan, sistem operasi juga mengontrol agar semua aplikasi bisa berjalan stabil dan konsisten. Sistem operasi harus dirancang fleksibel sehingga para software developer lebih mudah menciptakan aplikasi-aplikasi baru yang canggih.
Banyak perusahaan ponsel yang membenamkan sistem operasi dalam produknya baik pada PDA, Smartphone maupun handphone. Perkembangan aplikasi atau game selular (mobile content) sangat cepat, perusahaan pembuat mobile Operating System (OS) telah berlomba untuk memasarkan produk-produk mereka dengan menciptakan fungsi-fungsi dan teknologi yang kian hari kian memanjakan pengguna smartphone dari segi entertainment dan fungsionalitas penggunaan selular untuk memudahkan tugas sehari-hari.
OS ANDROID
Android adalah sistem operasi untuk telepon seluler yang berbasis Linux. Android menyediakan platform terbuka bagi para pengembang buat menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak. Awalnya, Google Inc. membeli Android Inc., pendatang baru yang membuat peranti lunak untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia.
Android merupakan software berbasis kode komputer yang bisa didistribusikan secara terbuka (open source) sehingga programmer bisa membuat aplikasi baru di dalmnya, terdapat android Market yang menyediakan ribuan aplikasi baik yang gratis maupun berbayar, serta memiliki aplikasi native Google yang terintegrasi, seperti Gmail, Google Maps, dan Google Calendar.
Pada saat perilisan perdana Android, 5 November 2007, Android bersama Open Handset Alliance menyatakan mendukung pengembangan standar terbuka pada perangkat seluler. Di lain pihak, Google merilis kode–kode Android di bawah lisensi Apache, sebuah lisensi perangkat lunak dan standar terbuka perangkat seluler.
Di dunia ini terdapat dua jenis distributor sistem operasi Android. Pertama yang mendapat dukungan penuh dari Google atau Google Mail Services (GMS) dan kedua adalah yang benar–benar bebas distribusinya tanpa dukungan langsung Google atau dikenal sebagai Open Handset Distribution (OHD).
Ada beberapa hal menarik soal Android ini, diantaranya bahwa OS Android ini adalah gratis karena berbasis open-source dengan kernel Linux, sehingga vendor ponsel berlomba-lomba membenamkan OS ini ke produknya untuk menekan biaya. OS Android akan terus berkembang karena didukung oleh banyak developer besar yang tergabung dalam “Open Handset Alliance” seperti Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia. saat ini versi pengembangan OS ini telah mencapai versi 2.0 dari sebelumnya generasi 1.6 dan 1.5.
Operasi sistem Android sudah memilki beberapa versi semenjak dirilisnya Operasi sistem ini, diantara versi-versinya adalah :
a. Android versi 1.1
Pada 9 maret 2009, Google merilis Android versi 1.1. Android versi 1.1. Android versi ini dilengkapi dengan pembaruan estetis pada aplikasi, jam alarm, voice search (pencarian suara), pengiriman pesan dengan Gmail dan pemberitahuan email.
b. Android versi 1.5 (cupcake)
Pada pertengahan mei 2009, Google kembali merilis telepon seluler dengan menggunakan Android dan SDK (Software Development Kit) dengan versi 1.5 (cupcake). Terdapat beberapa pembaruan termasuk juga penambahan beberapa fitur dalam seluler versi ini yakni kemampuan merekam dan menonton video dengan modus kamera, menggugah video ke youtube dan gambar Picasa lansung dari telepon, dukungan Bluetood, animasi layar, dan keyboard pada layar yang dapat disesuiakan dengan sistem.
c. Donut (versi 1.6)
Dirilis pada September dengan menampilkan proses pencarian yang lebih baik disbanding sebelumnya, penggunaan baterai indicator dan kontrol applet VPN. Fitur lainnya adalah galeri yang memungkinkan pengguna untuk memilih foto yang akan dihapus kamera, camcorder dan kemampuan dial kontak, teknologi text to change speech (tidak tersedia pada semua ponsel pengadaan resolusi VWGA)
d. Android versi 2.0/2.1 (Éclair)
Pada 3 desember 2009 kembali dilincurkan ponsel android dengan versi 2.0/2.1 (eclir). Perubahan yang dilakukan adalah pengoptimalan hardware, peningkatan Google Maps 3.1.2, perubahan UI dengan browser baru dan dukungan HTML5, daftar kontak yang baru, dukungan flash untuk kamera 3,2MP, digital Zoom dan Bluetooth 2.1.
Untuk bergerak cepat dalam persaingan perangkat generasi berikut, Google melakukan investasi dengan mengadakan kompetisi aplikasi (killer appa-aplikasi unggulan). Kompetisi ini berhadiah $25,000 bagi setiap pengembang aplikasi terpilih. Kompetisi diadakan selama dua tahap yang tiap tahapnya dipilih 50 aplikasi terbaik.
Dengan semakin berkembangnya dan semakin bertambahnya jumlah handset android, semakin banyak pihak ketiga yang berminat untuk menyalurkan aplikasi mereka kepada sistem operasi android. Aplikasi terkenal yang diubah kedalam sistem operasi android adalh Shazam, Backgrounds dan Weatherbug. Sistem operasi android dalam situs internet juga dianggap penting untuk menciptakan aplikasi android asli, contohnya ole Myspace dan facebook.
Penggunaan sistem operasi ini tidak hanya pada produk Smartphone saja, namun juga sudah mulai digunakan dalam sistem operasi dalam beberapa netbook.
Adapun fitur dari OS Android (dari Wikipedia) yaitu :
Mendukung peranti berlayar besar, layar sentuh dengan resolusi VGA, multi touch, bahkan dukungan terhadap grafik 3D berbasis OpenGL.
Mendukung konektivitas umum seperti GSM, CDMA, EV-DO, UMTS, WiFi dan WiMax.
Threaded messages untuk SMS.
Browser bawaan yang lengkap dan berbasis open-source dan meraih skor tinggi untuk test Acid3.
Mampu menjalankan Java berkat adanya implementasi Virtual Machine Compiler .
Mendukung multimedia lengkap seperti H.264, AMR, AAC, MIDI dsb.
Mendukung perangkat keras modern seperti foto dan video, navigasi GPS dan accelerometer.
Dukungan development environment termasuk device emulator, debugging, memory and performance profiling serta plugin untuk Eclipse IDE.
Dukungan aplikasi lengkap hingga 30.000 jenis program melalui Android Market, cukup download dan instal tanpa bantuan PC, baik yang versi gratis maupun bayar (bandingkan dengan OS Bada dari Samsung yang sifat toko aplikasinya tertutup).
OS BADA
Pada akhir tahun 2009 kemarin, Samsung mengumumkan bahwa mereka akan memakai sistem operasi buatan sendiri. Mereka menamakan sistem operasi tersebut dengan BADA, diambil dari bahasa Korea yang artinya lautan (ocean). Nama ini mencerminkan peluang tidak terbatas pembuatan aplikasi berbasis platform baru tersebut bagi para developer, maupun fungsi-fungsi yang akan dinikmati pemakainya. Bada dirancang sebagai sistem operasi terbuka (open platform). Karena itu, di arena sistem operasi mobile. Bada akan bersaing dengan Symbian, Android, dan Limo.
Samsung sudah siap membuka application store untuk BADA. Samsung juga sudah membangun ekosistem aplikasi mobilenya sendiri. Situs resmi Bada dapat diakses di bada.com sudah aktif sejak 10 november 2009. Di situs tersebut, disajikan semua informasi resmi mengenai Bada, termasuk update peluncuran produk, fitur, dan acara.
Bada mungkin hanya bisa ditemui pada ponsel Samsung yang memakai (touchwiz user interface). Samsung bada menawarakan kemudahan serta UI yang intuitif tanpa mengesampingkan efisiensi. Untuk meningkatkan kreatifitas dan interaksi penggunanya, Samsung bada memiliki flash control, web control, sensor gerakan, control fine-tuned vibration control dan face detection. Juga didukung oleh aplikasi context-aware berbasis sensor gerakan. Dengan menggunakan beragam sensor seperti akselerometer, gerakan miring, cuaca, proksimiti, dan sensor aktif, aplikasi yang dapat digunakan pengembangan teknologi mengimplementasikan context-aware dengan mudah. Samsung bada membedakan posisinya dengan mendukung layanan-sentris berbagai fitur seperti jejaring sosial, perangkat sinkronisasi, manajemen konten, layanan berbasis lokasi, dan layanan perdagangan. Semua didukung oleh back-end server Bada. Fitur inovatif khusus pengembang ini mendukung pengembang teknologi untuk mengimplementasikan berbagai layanan tanpa upaya tambahan.
Samsung juga akan membina komunitas developer dan pitching Bada untuk operator jaringan di seluruh dunia. Samsung juga membuat fitur utama sistem operasi seperti dialer, mesagging, dan address book yang tersedia untuk para developer sehingga aplikasi-aplikasi yang ada dapat menggabungkan fungsi perangkat dasar, selain itu berbagai palikasi layanan dapat berbagi informasi seperti jdawal, profil, konten, atau hubungan sosial yang berisi knfirmasi pengguna yang praktis agar dapat memberikan pelayanan lebih personal dan perluasan layanan yang koperatif. Basis bada yang fleksibel membuatnya mudah untuk diterapkan pda berbagai perangkat dibandingkan sistem operasi mobile lain.
Jadi para developer akan sangat mudah menciptakan aplikasi dan layanan. Perangkat ponsel yang berbasis BADA ini juga akan dapat mengakses konten dari toko aplikasi mobile milik Samsung. Bada menjadi OS (operating sistem) original dari Samsung.