Simple Pattern Matching Adobe Flash Lite

digunakan, pengguna akhir harus didorong untuk mengomentari fitur dan fungsi, kemudahan penggunaan, kehandalan dan karakteristik lain yang sesuai.

2.11 Simple Pattern Matching

Menurut Jhonson, M a simple pattern-matching algorithm for recovering empty nodes and their antecedents : 2009. Secara garis besar, algoritma ini dapat dikategorikan sebagai contoh dari pendekatan the Memory-Based Learning, dimana kedua pola ekstraksi dan pencocokkan pola melibatkan kunjungan rekursif ke semua sub-pohon dari pohon yang bersangkutan. Hal ini juga dapat dianggap sebagai jenis transformasi pohon, jadi keseluruhan arsitektur sistem termasuk parser adalah contoh dari transform-detransform. Algoritma ini memiliki 2 fase. Fase pertama dari algoritma mengekstrak pola dari pohon di training corpus. Pada fase kedua, menggunakan hasil ekstraksi pola untuk dimasukkan ke dalam node kosong dan mengindex pendahulu mereka di pohon yang tidak memiliki node kosong. Sebelum pohon digunakan di fase training and insertion , mereka melewati langkah praproses, yang melabelkan ulang node preterminal yang mendominasi kata kerja bantu dan transisi.

2.12 Unified Modelling Language UML

Unified Modeling Language UML adalah bahasa pemodelan visual untuk tujuan umum yang digunakan untuk menentukan, memvisualisasi, membangun, dan mendokumentasikan artefak dari perangkat lunak sistem. UML digunakan untuk memahami, mendesain, menjelajah, mengonfigurasi, memelihara dan mengontrol 26 informasi tentang sistem tersebut. UML dimaksudkan untuk digunakan dengan semua metode pengembangan, tahapan-tahapan siklus hidup, domain-domain aplikasi dan media. Pemodelan bahasa ini dimaksudkan untuk menyatukan pengalaman masa lalu tentang teknik pemodelan dan untuk memasukkan praktik-praktik terbaik perangkat lunak saat ini menjadi pendekatan standar. Spesifikasi UML tidak mendefinisikan proses standar tetapi dimaksudkan untuk menjadi berguna dengan proses pengembangan berulang. Hal ini dimaksudkan untuk mendukung proses pengembangan dengan object oriented. UML menyimpan informasi tentang struktur statis dan perilaku dinamis suatu sistem. Sebuah sistem dimodelkan sebagai koleksi benda-benda diskrit yang berinteraksi untuk melakukan kerja yang pada akhirnya bermanfaat. Struktur statis mendefinisikan jenis-jenis objek penting untuk sistem dan pelaksanaannya, serta sebagai hubungan antara objek-objek. Perilaku dinamis mendefinisikan sejarah obyek dari waktu ke waktu dan komunikasi antara objek-objek untuk mencapai tujuan Rumbaugh, et al., 2006: 3. UML bukanlah bahasa pemrograman. UML dapat digunakan untuk menulis program, tetapi tidak memiliki kemudahan sintak dan semantik yang mana kebanyakan bahasa pemrograman menyediakan untuk memudahkan tugas pemrograman. Beberapa tools dapat menyediakan generator kode dari UML ke dalam berbagai bahasa pemrograman, serta membangun reverse engineered model dari program yang ada. UML adalah bahasa pemodelan untuk tujuan umum. Untuk domain khusus, seperti tata letak GUI, desain sirkuit VLSI, atau kecerdasan buatan berbasis aturan, sebuah alat yang lebih khusus dengan bahasa khusus yang lebih 27 tepat. UML merupakan bahasa pemodelan diskrit. Hal ini tidak dimaksudkan untuk model sistem kontinyu seperti yang ditemukan di bidang teknik dan fisika. UML dimaksudkan untuk menjadi tujuan universal bahasa pemodelan untuk sistem diskrit seperti yang terbuat dari perangkat lunak, firmware atau logika digital Rumbaugh, et al ., 2006: 4. Tabel 2.1 UML Views and Diagrams Major Area View Diagrams Main Concepts Structural static view class diagram association, class, dependency, generalization, interface, realization, design view internal structure connector, interface, part, port, provided interface, role required interface collaboration diagram connector, collaboration, collaboration use, role component diagram component, dependency, port, provided interface, realization, required interface, subsystem use case view use case diagram actor, association, extend, include, use case, use case generalization Dynamic state machine view state machine diagram completion transition, do activity, effect, event, region, state, transition, trigger activity view activity diagram Action, activity, control flow, control node, data flow, exception, exception region, fork, join, object node, pin interaction view sequence diagram occurrence specification, execution specification, interaction, interaction 28 fragment, interaction operand, lifeline, message, signal communication diagram collaboration, guard condition, message, role, sequence number Physical deployment view deployment diagram artifact, dependency, manifestation, node Model Management model management view package diagram import, model, package, profile package diagram constraint, profile, stereotype, tagged value Sumber: Rumbaugh, et al., 2006: 26

2.12.1 Use Case Diagram

Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Dalam pembuatan Use Case Diagram, yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah daftar belanja, dan sebagainya. Seorangsebuah aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu. Sebuah use case dapat meng-include fungsionalitas use case lain sebagai bagian dari proses dalam dirinya. Secara umum diasumsikan bahwa use case yang di-include akan dipanggil setiap kali use case yang meng-include 29 dieksekusi secara normal. Sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas yang common. Sebuah use case juga dapat meng- extend use case lain dengan behaviour-nya sendiri. Sementara hubungan generalisasi antar use case menunjukkan bahwa use case yang satu merupakan spesialisasi dari yang lain Dharwiyanti Wahono, 2003: 4. Gambar 2.2 Contoh Use Case Diagram Sumber: Rumbaugh, et al., 2006: 695

2.12.2 Activity Diagram

Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state diagram khusus, di mana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya internal processing. Oleh karena itu activity diagram tidak 30 menggambarkan behaviour internal sebuah sistem dan interaksi antar subsistem secara eksak, tetapi lebih menggambarkan proses-proses dan jalur- jalur aktivitas dari level atas secara umum. Sebuah aktivitas dapat direalisasikan oleh satu use case atau lebih. Aktivitas menggambarkan proses yang berjalan, sementara use case menggambarkan bagaimana aktor menggunakan sistem untuk melakukan aktivitas Dharwiyanti Wahono, 2003: 7. Gambar 2.3 Contoh Activity Diagram Sumber: Rumbaugh, et al., 2006: 699 31

2.12.3 Sequence Diagram

Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem termasuk pengguna, display, dan sebagainya berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atas dimensi vertikal waktu dan dimensi horizontal objek-objek yang terkait. Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai tanggapan dari sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan. Masing-masing objek, termasuk aktor, memiliki lifeline vertikal. Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya, message akan dipetakan menjadi operasimetode dari class. Activation bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali dengan diterimanya sebuah message Dharwiyanti Wahono, 2003: 8. Hal pertama yang dapat diperhatikan dalam sequence diagram adalah sequence diagram mengindikasikan perbedaan tentang bagaimana partisipan berinteraksi. Ini adalah salah satu keunggulan diagram interaksi, mereka tidak begitu baik untuk menunjukkan detail dari algoritma, seperti loops, dan keadaan kondisional, tetapi mereka memperjelas proses-proses yang dilakukan oleh masing-masing partisipan Fowler, 2004:55 32 Gambar 2.4 Contoh Sequence Diagram Sumber: Rumbaugh, et al., 2006: 700 33

2.12.4 Deployment Diagram

Deployment diagram menggambarkan detail bagaimana komponen di- deploy dalam infrastruktur sistem, di mana komponen akan terletak pada mesin, server atau piranti keras apa, bagaimana kemampuan jaringan pada lokasi tersebut, spesifikasi server, dan hal-hal lain yang bersifat fisikal. Sebuah node adalah server, workstation, atau piranti keras lain yang digunakan untuk men-deploy komponen dalam lingkungan sebenarnya. Hubungan antar node misalnya TCPIP dan requirement dapat juga didefinisikan dalam diagram ini Dharwiyanti Wahono, 2003: 10. Gambar 2.5 Contoh Deployment Diagram Sumber: Rumbaugh, et al., 2006: 701 34

2.13 Adobe Flash Lite

Menurut Elron, Janousek, Joos 2009: 12 Adobe Flash Lite adalah versi yang dioptimalkan Flash Player yang didukung oleh beberapa hal berikut, perangkat mobile umum: • Sistem operasi Symbian • Sistem operasi Windows Mobile • Binary Runtime Environment Wireless BREW platform Selain itu, perangkat mobile yang sudah mendukung Flash Lite, termasuk Chumby, BenQ, China Mobile, iRiver, KDDI, Kodak, LG, Motorola, Nokia, NTT DoCoMo, Samsung, Sony Ericsson, dan Verizon Wireless. Flash Lite memberikan kelebihan luar biasa hal ini memungkinkan akses ke sekitar 80 persen dari ponsel di seluruh dunia. Dengan menggunakan platform Flash Lite , mereka tidak tergantung pada sistem operasi API dan dapat memanfaatkan “write once, run anywhere” pengembangan praktis, karena aplikasi dapat dengan mudah melakukan porting ke sistem operasi yang berbeda, seringkali dengan tidak ada perubahan, daripada mengembangkan aplikasi baru untuk setiap sistem operasi. Menurut Elron, Janousek, Joos 2009: 13 arsitektur Flash Lite adalah versi Flash yang dioptimalkan dan termasuk komponen berikut: 1. Device API: Flash Lite memiliki akses ke beberapa layanan ponsel seperti SMS, tingkat baterai, dan lain-lain dengan memanfaatkan fungsi fscommand dan fscommand2. 35 2. Network: HTTP dan HTTPS panggilan dapat dibuat untuk mengambil data, menggunakan getURL dan e-mail, menggunakan mailto.API lainnya, seperti loadMovieNum, loadVariables, dan loadVariablesNum, dapat digunakan untuk mengambil data dan media pada saat runtime. SWX dan XML keduanya didukung dengan Flash Lite 2 dan 3. 3. Drawing API: API ini memungkinkan penciptaan dinamis atau statistik dari vektor grafis dan animasi. 4. Dynamic Data: data eksternal XML dapat dimuat dan diuraikan secara langsung, serta menggunakan proxy bila diperlukan. 5. Persistent data: Anda dapat menyimpan objek-objek yang lokal atau mobile di direktori sistem ponsel. Adobe Flash Lite Player adalah runtime environment ringan yang teroptimalisasi untuk ponsel, dan embedded portable device lainnya. Pemutarnya, memungkinkan alat-alat non-PC ini untuk memainkan konten Flash Lite. Berikut adalah beberapa kelebihan dari Adobe Flash Lite: 1. Friendly development environment, Adobe Creative Suite dan Device Central menyediakan lingkungan yang baik untuk pengembangan perangkat lunak mobile yang cepat dan pengujian interaktif yang luas antar target device dan platform. 2. Vector support, selain mendukung Bitmap, Flash Lite memberikan pengolahan gambar vector yang memungkinkan untuk scaling, rotasi, dan transformasi. 36 3. Content portability, Flash lite adalah salah satu runtime mobile terbaik untuk migrasi dari konten desktop ke dalam konten mobile dengan sedikit perubahan. 4. Small file size, karena SWF adalah format biner, maka ukuran konten dari flash lite sangatlah kecil, yang ideal untuk penggunaan pada perangkat mobile dimana memory adalah komoditas yang sangat berharga dalam perangkat mobile. Sedangkan, beberapa kekurangan dari Adobe Flash Lite adalah: a. Learning the tools, untuk pengembang baru, membutuhkan beberapa waktu untuk mempelajari IDE, timeline dan konteks seperti movieClips, button. Namun, memepelajari actionScript lebih mudah daripada mempelajari bahasa pemrograman native Symbian C++, Objective-C, dan memiliki kemiripan dengan bahasa pemrograman Web javaScript. b. Fragmentation, fragmentasi perangkat masih menjadi kendala diantara platform flash Lite. Versi flash lite yang berbeda dapat menjadi kendala, diantaranya kemampuan dari dari tiap versi yang berbeda, juga dukungan actionScript yang berbeda di tiap versinya. c. Developer adoption rate, Flash lite di adopsi oleh OEM dan data provider. Di awal evolusinya, hanya terdapat sedikit pengembang dikarenakan terbatasnya distribusi untuk menghasilkan keuntungan dari penjualan konten Flash lite. Hal ini berubah di tahun 2008, setelah Adobe mengubah fokusnya 37 dari menjual Flash lite runtime kepada OEM ke membantu pengembang untuk mengembangkan kontennya ke dalam jutaan perangkat yang telah terpasang pemutar Flash Lite.

2.14 PHP