BAB III ANALISIS DAN PERANCANGAN APLIKASI 3.1 ANALISIS

dokumen-dokumen yang mirip
BAB IV IMPLEMENTASI DAN PENGUJIAN

APLIKASI PERANGKAT AJAR PENGELOLAAN DAN PERHITUNGAN EKSPRESI MATEMATIKA DARYANTO

BAB III METODE PENELITIAN / PERANCANGAN SISTEM. perancangan dan pembuatan program ini meliputi : dengan konversi notasi infix, prefix, dan postfix.

Pertemuan 10. Tumpukan (Stack) Dipersiapkan oleh : Boldson Herdianto. S., S.Kom., MMSI.

BAB II STACK (TUMPUKAN)

BAB II LANDASAN TEORI

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan

Gambar 3.1. Diagram alir apikasi image to text

BAB III ANALISA DAN PERANCANGAN

BAB II STACK Atau TUMPUKAN

STACK ATAU TUMPUKAN 3.1 DAFTAR LINEAR


SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 4 & 5

BAB IV IMPLEMENTASI DAN EVALUASI

Gambar 2.1 Ilustrasi Stack

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN PERANCANGAN

S T A C K ( T U M P U K A N )

BAB III ANALISIS DAN PERANCANGAN. Dalam proses produksi terdapat beberapa faktor yang akan mempengaruhi

ALGORITMA DAN STRUKTUR DATA

Pengenalan Visual Basic

BAB 3 STACK (TUMPUKAN)

Materi. Tipe, Variabel dan Operator Algoritma Pemrograman PENULISAN ALGORITMA PENULISAN ALGORITMA 15/03/2010 NAMA DAN EKSPRESI

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA, KONSEP DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN APLIKASI

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN. Subbab ini akan berisi pembahasan mengenai cara kerja algoritma Welch-

BAB III ANALISIS DAN PERANCANGAN

4. STACK / TUMPUKAN TEORI PENUNJANG

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN. Pada dasarnya perancangan sistem yang dibuat oleh peneliti adalah

BAB IV PERANCANGAN SISTEM

datanya. Hasil User dapat melanjutkan aktivitas selanjutnya setelah memilih File yang diinginkan. 2. Use Case Menyisipkan Teks Table 4-2 Deskripsi Use

BAB III ANALISIS DAN PERANCANGAN

BAB III METODE PENELITIAN

STACK (Tumpukan) Tumpukan Koin. Tumpukan Kotak

LIST LINIER & STACK. Pertemuan 6 Yani sugiyani, M.Kom

STACK. Sistem penyimpanan data dengan mekanisme Last In First Out( LIFO).

BAB III ANALISA DAN PERANCANGAN. Aplikasi penterjemahan kata Indonesia-Inggris yang dibuat dalam tulisan

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN

Algoritma dan Pemrograman Bab II Dev Pascal, Variabel, Tipe Data. Adam Mukharil Bachtiar, S.Kom. Universitas Komputer Indonesia

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

ALGORITMA DAN STRUKTUR DATA ARRAY STACK DAN QUEUE

BAB III ANALISA MASALAH DAN PERANCANGAN

BAB 2 LANDASAN TEORI

Modul 12 Open Office Calc

BAB III KONSEP DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN

Tumpukan(Stack)!! " # $ %&' $ %& ( ) ( * +, / ( (

BAB 2 LANDASAN TEORI. Istilah komputer (computer) berasal dari bahasa latin computere yang berarti

BAB 2 LANDASAN TEORI

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISIS. Mekanisme Penyimpanan dan Pengambilan Sequence

Membuat Proteksi File Excel Tingkat Tinggi dengan Kode VBA. By. Samsudin_Batolay

1. LifeLine Sequence Diagram dibuat dengan banyak lifeline. Setiap lifeline mendapatkan tempat sendiri sendiri. Beberapa jenis lifeline antara lain

STRUKTUR DATA Pertemuan 4

Algoritma dan Pemrograman

Bab 2 Editor vi 9. BAB 2 EDITOR vi TUJUAN PRAKTIKUM

Struktur Data Array. Rijal Fadilah S.Si

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB IV HASIL DAN UJI COBA

PERTEMUAN 2 ALGORITMA & PEMROGRAMAN

BAB III PERANCANGAN SISTEM. Shipping Direktorat Jenderal Imigrasi menunjukkan bahwasanya dalam akses

S TA C K Sunu Wibirama

Pertemuan 2. Editor vi

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. Nama program yang hendak dikembangkan adalah Viola Jones Simulator. Tujuan dari

BAB III ANALISA DAN PERANCANGAN

PHP (HYPERTEXT PREPROCESSOR)

Algoritma Pemrograman

Modul Praktikum 6 Dasar-Dasar Teknologi Informasi dan Komunikasi. Aplikasi Spreadsheet Microsoft Excel (2) Validasi Data & Fungsi Terbilang

MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA

BAB 3 PERANCANGAN PROGRAM APLIKASI

Membuka file prjenkripsi.vbp kemudian tekan tombol Run.

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISA MASALAH DAN RANCANGAN PROGRAM

BAB IV HASIL DAN UJI COBA

MODUL PRAKTIKUM ALGORITMA & BAHASA PEMROGRAMAN I (BASIC) Dosen Pengasuh : Suroto, S.Kom, M.Ak

BAB III ANALISA DAN PERANCANGAN. Pada tugas akhir ini akan dirancang sebuah aplikasi Pembelajaran Berbasis

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

KSI B ~ M.S. WULANDARI

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN

BAB IV HASIL DAN UJICOBA

BAB 3 ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN

Turbo C adalah tool yang dipakai untuk membuat code program dalam bahasa C ataupun C++. Berikut adalah jendela utama Turbo C

BAB III METODE PENELITIAN. Langkah penelitian yang digunakan disajikan pada Gambar 4.

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISA DAN DESAIN. yang jelas untuk perbaikan ataupun pengembangan dari suatu sistem.



BAB 2 LANDASAN TEORI

Algoritma Pemrograman 2 B

Struktur Data II. Bekerja Dengan Form.

Kuliah Online : TEKKOM [2013/VI]

Transkripsi:

29 BAB III ANALISIS DAN PERANCANGAN APLIKASI 3.1 ANALISIS Dengan menggunakan Visual Basic 6.0 aplikasi perangkat ajar pengelolaan dan perhitungan ekspresi matematika yang akan dibangun dalam penelitian ini, diharapkan dapat dijadikan alat bantu dalam proses belajar mengajar mengenai ekspresi matematika dan stack. Aplikasi ini diharapkan mampu melakukan pengelolaan dan perhitungan terhadap ekspresi matematika yaitu dengan mengkonversikan notasi yang biasa dipakai oleh manusia sehari-hari (notasi infix) ke dalam notasi yang dipakai oleh komputer (notasi prefix dan postfix) serta melakukan evaluasi terhadap hasil dari konversinya yang prosesnya-prosesnya memanfaatkan cara kerja stack. Proses penginputan oleh user dapat dilakukan dengan dua cara yaitu user dapat secara langsung mengetikkan notasi infix ke dalam kolom input dengan menggunakan keyboard atau dapat juga melalui file, yaitu dengan cara membuka file teks (*.txt) yang sudah disimpan sebelumnya dan secara otomatis akan terinput di kolom input. Notasi infix yang diinput pada kolom input berupa operand-operand dan operator-operator dengan tumpukan maksimal adalah 100. Operand-operand yang dapat digunakan dalam aplikasi ini yaitu abjad besar maupun kecil dari a sampai z dan angka dari 0 sampai 9. Aplikasi ini tidak hanya mampu mengeksekusi operandoperand dengan panjang karakter tunggal tetapi juga mampu mengeksekusi operandoperand dengan panjang karakter lebih dari satu. Sedangkan untuk operatoroperatornya menggunakan tanda + untuk penjumlahan, - untuk pengurangan, * untuk perkalian, / untuk pembagian, ^ untuk pemangkatan serta ( untuk tanda kurung buka dan ) untuk tanda kurung tutup. Jika ada penulisan yang salah atau tidak sesuai dengan aturan yang berlaku maka akan ada pesan kesalahan yang akan 29

30 muncul di layar sehingga user dapat dengan mudah memperbaiki kesalahan penulisannya. Aplikasi ini dilengkapi dengan simulasi kerja stack secara visual proses konversi notasi infix ke notasi prefix, konversi notasi infix ke notasi postfix dan proses evaluasi notasi postfix dengan mengambil contoh beberapa notasi untuk menambah pemahaman tentang stack dan ekspresi matematika. Hasil dari eksekusi konversi dan perhitungan dari aplikasi ini dapat disimpan dalam format file teks (*.txt). 3.2 PERANCANGAN APLIKASI Pada tahap perancangan aplikasi ini akan dijelaskan secara rinci mengenai perancangan aplikasi perangkat ajar pengelolaan dan perhitungan ekspresi matematika yang akan dibagi dalam tiga bagian, yaitu perancangan structure data type dan algoritma, perancangan pemodelan dan perancangan antarmuka. 3.2.1 Perancangan Structure Data Type dan Algoritma 3.2.1.1 Structure Data Type Pendeklarasian struktur data menggunakan tata susunan linier ( larik ) dan variabel yang dikemas dalam tipe data record. Const MaksimalStack = 100 { Kapasitas maksimal tumpukan } Type JenisElemen = String TipeStack = record Elemen = Array[1..MaksimalStack] of JenisElemen Top = 0..MaksimalStack

31 Dari keterangan di atas dapat dijelaskan TipeStack adalah struktur data bertipe record yang terdiri dari field Elemen bertipe larik/array dengan indeks dari 1 sampai dengan MaksimalStack dengan JenisElemen bertipe string. Top bertipe integer berkisar dari 0 sampai dengan MaksimalStack. TipeStack di atas hanya digunakan untuk proses konversi karena JenisElemen-nya bertipe string, sedangkan untuk proses evaluasi JenisElemen dapat diganti dengan tipe data double karena dalam proses evaluasi yang masuk dalam tumpukan adalah berupa angka. 3.2.1.2 Algoritma Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis. Inti dari permasalahan aplikasi ini yaitu proses konversi dan perhitungan ekspresi matematika. Perancangan algoritma dalam aplikasi ini dibagi dalam empat bagian utama. 1. Algoritma pengujian penulisan input notasi infix Algoritma ini melakukan pengujian terhadap penulisan input ekspresi matematika yakni dalam bentuk infix. Pengujian terhadap penulisan input meliputi pengujian terhadap operator dan operand serta pengujian terhadap struktur notasi infix. Algoritma pengujian penulisan akan memunculkan pesan kesalahan apabila menemukan operator dan operand yang tidak valid atau struktur notasi infix yang tidak benar. Berikut perancangan algoritma pengujian penulisan input notasi infix. a. Hilangkan spasi notasi infix yang telah diinput b. Baca panjang notasi infix yang diinput c. Siapkan fungsi IsOperator() yang mengembalikan nilai bertipe boolean sebagai penguji operator ( +, -, *, /, ^ ).

32 Public Function IsOperator(token As String) As Boolean Dim result As Boolean Dim p As Integer Dim DafOperator As String DafOperator = "+-*/^" p = InStr(1, DafOperator, token) If p > 0 Then result = True Else result = False End If IsOperator = result End Function d. Siapkan fungsi IsOperand() yang mengembalikan nilai bertipe boolean sebagai penguji operand ( a sampai z, A sampai Z dan 0 sampai 9 ). Public Function IsOperand(token As String) As Boolean Dim result As Boolean Dim DafVar As String DafVar= "ABCDEFGHIJKLMNOPQRSTUVWXYZ_ abcdefghijklmnopqrstuvwxyz0123456789" If InStr(1, DafVar, token) > 0 Then result = True Else result = False End If IsOperand = result End Function e. Menguji penulisan notasi infix yang telah diinput. Menguji kesalahan penulisan jika tanda tutup kurung ) diikuti dengan operand, misal: (a+b)c. Menguji kesalahan penulisan jika operand diikuti dengan tanda buka kurung (, misal: a(a+b). Menguji kesalahan penulisan jika tanda kurung terbalik, misal: )(. Menguji kesalahan penulisan jumlah tanda kurung, misal: a+b)+c. Menguji simbol yang tidak dikenal, misal: a%b. Menguji penulisan operator yang berurutan, misal: ++, --, **. Menguji kesalahan penulisan jika operator berada di belakang atau di depan notasi, misal: +a-b, a-b+. Menguji kesalahan penulisan jika notasi tidak ada operand, misal: +.

33 Menguji kesalahan penulisan jika notasi tidak ada operator, misal: aaaa. Menguji kesalahan penulisan jika notasi kurang operand, misal: aaaa+. f. Jika notasi benar dalam penulisan maka pada fungsi pengujian penulisan notasi akan mengembalikan nilai true, dan sebaliknya jika notasi salah dalam penulisan maka pada fungsi pengujian penulisan notasi akan mengembalikan nilai false dan menampilkan pesan kesalahan. 2. Algoritma konversi notasi infix ke notasi prefix Algoritma ini melakukan konversi notasi yang diinput user ke notasi prefix. Berikut perancangan algoritma konversi notasi infix ke notasi prefix. a. Siapkan stack kosong. b. Siapkan fungsi push() stack dan pop() stack. c. Siapkan fungsi perbandingan derajat operator(). d. Hilangkan spasi notasi infix dan tambahkan tanda buka kurung ( pada awal notasi. e. Baca panjang notasi infix yang diinput. f. Scan notasi dari kanan ke kiri. g. Jika bertemu dengan operand langsung ditulis sebagai keluaran. Keluaran ditulis dari kanan ke kiri. Hasil = Operand + Hasil h. Jika bertemu dengan tanda tutup kurung ), maka dipush() ke dalam stack. i. Jika bertemu operator tambahkan tanda koma (,) di depan keluaran untuk memisahkan antar bagian ( separator ). Hasil = ", " + Hasil j. Lakukan perbandingan antara operator yang berada pada top stack dan operator yang akan dipush() ke dalam stack dengan memanggil fungsi perbandingan derajat operator(). Jika operator sebelumnya yang berada pada top stack memiliki derajat yang lebih rendah, maka push() operator yang lebih tinggi derajatnya ke dalam stack.

34 k. Jika operator sebelumnya yang berada pada top stack memiliki derajat yang lebih tinggi, maka pop() operator yang berada dalam stack dan ditulis sebagai keluaran dan tambahkan tanda koma (,) di depan keluarannya sebagai separator. Hasil =, + Operator + Hasil l. Jika bertemu dengan tanda buka kurung (, maka dipop() bagian top dari stack hingga tanda tutup kurung ) dan ditulis sebagai keluaran dan tambahkan tanda koma (,) sebagai separator. Tanda tutup kurung ) juga dipop() tetapi tidak perlu ditulis sebagai keluaran. Hasil = Operator +, + Hasil m. Ulangi langkah-langkah di atas, hingga notasi habis sampai tanda buka kurung (. 3. Algoritma konversi notasi infix ke notasi postfix Algoritma ini melakukan konversi notasi yang diinput user ke notasi postfix. Berikut perancangan algoritma konversi notasi infix ke notasi postfix. a. Siapkan stack kosong. b. Siapkan fungsi push() stack dan pop() stack. c. Siapkan fungsi perbandingan derajat operator(). d. Hilangkan spasi notasi infix dan tambahkan tanda tutup kurung ) pada akhir notasi. e. Baca panjang notasi. f. Scan notasi dari kiri ke kanan. g. Jika bertemu dengan operand langsung ditulis sebagai keluaran. Keluaran ditulis dari kiri ke kanan. Hasil = Hasil + Operand h. Jika bertemu dengan tanda buka kurung (, maka dipush() ke dalam stack. i. Jika bertemu operator tambahkan tanda koma (,) di belakang keluaran untuk memisahkan antar bagian ( separator ). Hasil = Hasil +,

35 j. Lakukanlah perbandingan antara operator yang berada pada top stack dan operator yang akan dipush() ke dalam stack dengan memanggil fungsi perbandingan derajat operator(). Jika operator sebelumnya yang berada pada top stack memiliki derajat yang lebih rendah, maka push() operator yang lebih tinggi derajatnya ke dalam stack. k. Jika operator sebelumnya yang berada pada top stack memiliki derajat yang lebih tinggi, maka pop() operator yang berada pada top stack dan ditulis sebagai keluaran dan tambahkan tanda koma (, ) di belakang keluarannya sebagai separator. Hasil = Hasil + Operator +, l. Jika bertemu dengan tanda tutup kurung ), maka dipop() bagian top dari stack hingga tanda buka kurung ( dan ditulis sebagai keluaran dan tambahkan tanda koma (,) sebagai separator. Tanda buka kurung ( juga dipop() tetapi tidak perlu ditulis sebagai keluaran. Hasil = Hasil +, + Operator m. Ulangi langkah-langkah di atas, hingga notasi habis sampai tanda tutup kurung ). 4. Algoritma evaluasi notasi postfix Algoritma ini melakukan perhitungan dari hasil konversi yaitu notasi postfix. Operand yang dapat dihitung adalah operand-operand yang berupa angka, jika operand-operand berupa huruf hasil evaluasinya diberi nilai 0. Berikut perancangan algoritma evaluasi notasi postfix. a. Siapkan stack kosong. b. Siapkan fungsi push() stack dan pop() stack. c. Hilangkan spasi notasi postfix. d. Periksa notasi postfix yang akan dievaluasi apakah operandnya berupa angka atau variabel. e. Jika operandnya berupa variabel maka hasil evaluasi = 0, dan jika operandnya berupa angka maka lanjutkan langkah berikutnya.

36 f. Tambahkan tanda tutup kurung di akhir notasi postfix. g. Baca panjang notasi postfix h. Scan notasi dari kiri ke kanan. i. Jika bertemu dengan operand tulis di Temp. Temp = Temp + operand j. Jika bertemu dengan operand didepannya dan tanda koma (,) dibelakangnya maka dipush() nilai Temp ke dalam stack dan kemudian kosongkan nilai Temp. k. Jika bertemu dengan operator maka dipop() dua nilai teratas dari stack, nilai yang pertama dipop() menjadi operand kanan dan nilai yang kedua dipop() menjadi operand kiri, lalu hitung dengan operator yang bersangkutan. Hasilnya dipush() lagi ke dalam stack ( jika tidak ada dua operand dalam tumpukan maka ada kesalahan dalam notasi tersebut ). l. Ulangi langkah-langkah diatas hingga bertemu tutup kurung ). m. Jika elemen telah habis, maka nilai yang tertinggal ( teratas dari stack ) dipop() dan ditulis sebagai hasil akhirnya. 3.2.2 Perancangan Pemodelan Pemodelan adalah gambaran dari realita yang sederhana yang dituangkan dalam bentuk pemetaan tertentu. Pemodelan perangkat lunak digunakan untuk mempermudah langkah berikutnya dari pengembangan sistem sehingga lebih terencana. 3.2.2.1 Use Case Diagram Berikut ini adalah use case diagram dari aplikasi perangkat ajar pengelolaan dan perhitungan ekspresi matematika yang akan dibuat.

37 Gambar 3.1 Use Case Diagram bawah ini. Dari use case diagram di atas akan dijelaskan dalam skenario-skenario di Tabel 3.1 Skenario use case membuka modul teori ekspresi matematika Use case Membuka modul teori ekspresi matematika

38 Tabel 3.1 Skenario use case membuka modul teori ekspresi matematika ( lanjutan ) Actor User Deskripsi 1. User menjalankan aplikasi. 2. User memilih menu teori pada menu utama. 3. Sistem akan menampilkan form slide teori ekspresi matematika di layar. Alternatif Tabel 3.2 Skenario use case mengkonversi dan menghitungan ekspresi matematika Use case Mengkonversi dan menghitungan ekspresi matematika Actor User Deskripsi 1. User menjalankan aplikasi. 2. User memilih menu konversi dan perhitungan pada menu utama. 3. Sistem akan menampilkan form konversi dan perhitungan di layar. 4. User menginput notasi infix pada form konversi dan perhitungan di kolom input dengan menggunakan keyboard. 5. User mengeksekusi notasi infix yang telah diinput dengan memilih tombol konversi. 6. Sistem akan menguji penulisan yang benar. 7. Sistem akan mengkonversikan notasi infix ke notasi prefix. 8. Sistem akan mengkonversikan notasi infix ke notasi postfix. 9. Sistem akan mengevaluasi hasil konversi ( notasi postfix ). 10. Sistem akan menampilkan hasil konversi dan evaluasi pada kolom output, kolom prefix untuk hasil konversi notasi infix ke notasi prefix, kolom postfix untuk hasil konversi notasi infix ke notasi postfix, dan kolom evaluasi untuk hasil evaluasinya. Alternatif 1. User juga dapat memilih menu konversi dan perhitungan dalam menu toolbar pada form menu utama.

39 Tabel 3.3 Skenario use case membuka file Use case Actor Deskripsi Membuka file User 1. User memilih tombol buka file pada form konversi dan perhitungan untuk menginput notasi infix. 2. Sistem akan menampilkan kotak dialog open. 3. User memilih file text (.txt) yang akan digunakan sebagai input notasi infix. 4. User memilih tombol open dari kotak dialog setelah selesai memilih file. 5. Sistem melakukan pembacaan file text dan menampilkannya pada kolom input notasi infix pada form konversi dan perhitungan. Alternatif 1. User juga dapat memilih menu buka file dalam menu toolbar pada form konversi dan perhitungan. Tabel 3.4 Skenario use case menyimpan hasil Use case Actor Deskripsi Menyimpan hasil User 1. User memilih tombol simpan pada form konversi dan perhitungan setelah proses konversi dan evaluasi. 2. Sistem akan menampilkan kotak dialog save as. 3. User memilih lokasi untuk menyimpan file. 4. User mengetikkan nama file dengan ekstensi.txt. 5. User memilih tombol save dari kotak dialog setelah selesai mengetikkan nama file. 6. Sistem akan melakukan proses simpan dan kembali lagi ke form konversi dan perhitungan.

40 Tabel 3.4 Skenario use case menyimpan hasil ( lanjutan ) Alternatif 1. User juga dapat memilih menu simpan dalam menu toolbar pada form konversi dan perhitungan. Tabel 3.5 Skenario use case membersihkan layar Use case Actor Deskripsi Membersihkan layar User 1. User memilih tombol bersihkan pada form konversi dan perhitungan setelah ada proses pengetikan di kolom input notasi infix. 2. Sistem akan membersihkan kolom input dan output. Alternatif 1. User juga dapat memilih menu bersihkan dalam menu toolbar pada form konversi dan perhitungan. Tabel 3.6 Skenario use case menampilkan simulasi stack Use case Menampilkan simulasi stack Actor User Deskripsi 1. User memilih menu dalam frame simulasi sistem kerja stack pada form konversi dan perhitungan. 2. User dapat memilih menu konversi notasi infix ke prefix, menu konversi infix ke postfix dan konversi evaluasi postfix. 3. Sistem akan menampilkan detail sistem kerja stack sesuai menu yang dipilih dengan menggunakan contoh notasi. Tabel 3.7 Skenario use case mendapatkan informasi tentang program Use case Mendapatkan informasi tentang program Actor User Deskripsi 1. User menjalankan aplikasi. 2. User memilih menu tentang program pada menu utama.

41 Tabel 3.7 Skenario use case mendapatkan informasi tentang program (lanjutan) 3. Sistem akan menampilkan form tentang program di layar. Alternatif 1. User juga dapat memilih menu tentang program dalam menu toolbar pada form menu utama. Tabel 3.8 Skenario use case menggunakan bantuan program Use case Actor Deskripsi Menggunakan bantuan program User 1. User menjalankan aplikasi. 2. User memilih menu bantuan pada menu utama. 3. Sistem akan menampilkan form bantuan di layar. Alternatif 1. User juga dapat memilih menu bantuan dalam menu toolbar pada form menu utama. Tabel 3.9 Skenario use case mencari kata Use case Mencari kata Actor User Deskripsi 1. User mengetikkan kata kunci di dalam textbox pada form bantuan. 2. User memilih tombol cari untuk mengeksekusi pencarian kata. 3. Sistem kemudian menampilkan hasil pencarian kata yaitu dengan menyorot kata yang dicari yang terdapat dalam kolom bantuan. 4. Sistem akan memberikan informasi dengan kotak dialog jika kata yang dicari tidak ada.

42 3.2.2.2 Activity Diagram Berikut ini activity diagram yang akan digunakan dalam aplikasi perangkat ajar pengelolaan dan perhitungan ekspresi matematika. 1. Activity diagram membuka modul teori ekspresi matematika Pada menu utama, user memilih menu teori dan kemudian sistem akan menampilkan form teori. Proses tersebut dapat digambarkan dengan activity diagram di bawah ini. Gambar 3.2 Activity diagram membuka modul teori ekspresi matematika 2. Activity diagram mengkonversi dan menghitung ekspresi matematika Pada menu utama, user memilih menu konversi dan perhitungan kemudian sistem akan menampilkan form konversi dan perhitungan. User menginputkan notasi infix ke dalam kolom input notasi infix, kemudian user memilih tombol konversi. Sistem akan melakukan pengujian penulisan notasi yang telah diinput. Jika notasi yang diinput tidak valid atau tidak benar maka sistem akan

43 menampilkan pesan kesalahan dan user dapat memperbaiki kembali penulisan yang salah. Jika notasi yang diinput valid atau benar maka sistem akan memproses notasi yang telah diinput. Proses-proses yang dilakukan yaitu mengkonversi notasi yang diinput ke dalam bentuk notasi prefix, mengkonversi ke dalam bentuk notasi postfix, mengevaluasi hasil konversinya yaitu notasi postfix. Kemudian sistem menampilkan ketiga hasil tersebut ke dalam kolom output. Proses tersebut dapat digambarkan dengan activity diagram di bawah ini. Gambar 3.3 Activity diagram mengkonversi dan menghitung ekspresi matematika

44 3. Activity diagram membuka file Pada form konversi dan perhitungan, user memilih tombol buka kemudian sistem menampilkan kotak dialog open, user kemudian memilih file yang akan dibuka (file berekstensi.txt), Jika user memilih tombol open pada kotak dialog maka sistem akan membaca file yang telah dipilih dan menampilkannya di kolom input notasi infix pada form konversi dan perhitungan. Jika user memilih tombol cancel maka sistem akan membatalkan proses, menutup kotak dialog dan kembali pada form konversi dan perhitungan. Proses tersebut dapat digambarkan dengan activity diagram di bawah ini. Gambar 3.4 Activity diagram membuka file 4. Activity diagram membersihkan layar. Pada form konversi dan perhitungan, user memilih tombol bersihkan dan

45 kemudian sistem akan membersihkan kolom input dan output. Proses tersebut dapat digambarkan dengan activity diagram di bawah ini. Gambar 3.5 Activity diagram membersihkan layar 5. Activity diagram menyimpan hasil Setelah proses konversi dan perhitungan dilakukan dan user mendapatkan hasilnya pada kolom output, user dapat menyimpan hasil konversi dan perhitungan dengan memilih tombol simpan pada form konversi dan perhitungan. Kemudian sistem akan menampilkan kotak dialog save as dan user menentukan lokasi penyimpanan dan memberi nama file yang akan disimpan (berekstensi.txt), kemudian user memilih tombol save dan sistem melakukan penyimpanan file. Jika user ingin membatalkan penyimpanan klik tombol cancel dan sistem akan menutup kotak dialog tanpa menyimpan file dan kembali ke form konversi dan perhitungan. Proses tersebut dapat digambarkan dengan activity diagram berikut ini.

46 Gambar 3.6 Activity diagram menyimpan hasil 6. Activity diagram menampilkan simulasi stack Pada form konversi dan perhitungan, user memilih menu pada frame simulasi sistem kerja stack, ada tiga pilihan yaitu konversi infix ke prefix, konversi infix ke postfix dan evaluasi postfix. Jika user memilih konversi infix ke prefix maka sistem akan menampilkan simulasi konversi infix ke prefix (form demo 1), jika user memilih konversi infix ke postfix maka sistem akan menampilkan simulasi

47 konversi infix ke postfix (form demo 2), dan jika user memilih evaluasi postfix maka sistem akan menampilkan simulasi evaluasi postfix (form demo 3). Proses tersebut dapat digambarkan dengan activity diagram di bawah ini. Gambar 3.7 Activity diagram menampilkan simulasi stack 7. Activity diagram mendapatkan informasi tentang program Pada menu utama, user memilih menu tentang program dan kemudian sistem akan menampilkan form tentang program. Proses tersebut dapat digambarkan dengan activity diagram di bawah ini.

48 Gambar 3.8 Activity diagram mendapatkan informasi tentang program 8. Activity diagram menggunakan bantuan program Pada menu utama, user memilih menu bantuan dan kemudian sistem akan menampilkan form bantuan program. Proses tersebut dapat digambarkan dengan activity diagram di bawah ini. Gambar 3.9 Activity diagram menggunakan bantuan program

49 9. Activity diagram mencari kata Pada form bantuan program, user mengetikkan kata kunci yang dicari pada textbox, kemudian memilih tombol cari. Sistem akan mencari kata yang telah diketikkan oleh user, jika kata yang dimaksud ditemukan, maka sistem akan menyorot kata yang ditemukan tersebut dan jika tidak ada kata yang ditemukan maka sistem akan menampilkan pesan yang memberitahukan bahwa kata yang dicari tidak ditemukan. Proses tersebut dapat digambarkan dengan activity diagram di bawah ini. Gambar 3.10 Activity diagram mencari kata

50 3.2.2.3 Sequence Diagram Berikut ini sequence diagram yang akan digunakan dalam aplikasi perangkat ajar pengelolaan dan perhitungan ekspresi matematika. 1. Sequence diagram membuka modul teori ekspresi matematika Gambar 3.11 di bawah ini menggambarkan sequence diagram membuka modul teori ekspresi matematika. Gambar 3.11 Sequence diagram membuka modul teori ekspresi matematika 2. Sequence diagram mengkonversi dan menghitung ekspresi matematika Gambar 3.12 berikut ini menggambarkan sequence diagram mengkonversi dan menghitung ekspresi matematika.

51 Gambar 3.12 Sequence diagram mengkonversi dan menghitung ekspresi matematika 3. Sequence diagram membuka file Gambar 3.13 di bawah ini menggambarkan sequence diagram membuka file. Gambar 3.13 Sequence diagram membuka file

52 4. Sequence diagram membersihkan layar Gambar 3.14 di bawah ini menggambarkan sequence diagram membersihkan layar. Gambar 3.14 Sequence diagram membersihkan layar 5. Sequence diagram menyimpan hasil Gambar 3.15 di bawah ini menggambarkan sequence diagram menyimpan hasil. Gambar 3.15 Sequence diagram menyimpan hasil

53 6. Sequence diagram menampilkan simulasi stack Gambar 3.16 di bawah ini menggambarkan sequence diagram menampilkan simulasi stack. Gambar 3.16 Sequence diagram menampilkan simulasi stack 7. Sequence diagram mendapatkan informasi tentang program Gambar 3.17 di bawah ini menggambarkan sequence diagram mendapatkan informasi tentang program. Gambar 3.17 Sequence diagram mendapatkan informasi tentang program

54 8. Sequence diagram menggunakan bantuan program Gambar 3.18 di bawah ini menggambarkan sequence diagram menggunakan bantuan program. Gambar 3.18 Sequence diagram menggunakan bantuan program 9. Sequence diagram mencari kata Gambar 3.19 di bawah ini menggambarkan sequence diagram mencari kata. Gambar 3.19 Sequence diagram mencari kata

55 3.2.3 Perancangan Antarmuka Berikut ini rancangan antarmuka aplikasi perangkat ajar pengelolaan dan perhitungan ekspresi matematika. 3.2.3.1 Form Splash Form Splash merupakan jendela yang pertama sekali ditampilkan ketika program dipanggil. Form ini menampilkan informasi ringkas tentang aplikasi dalam waktu yang singkat, kemudian form akan menghilang sendiri. Perancangan Form Splash diperlihatkan pada Gambar 3.20. Gambar 3.20 Perancangan Form Splash

56 3.2.3.2 Form Menu Utama Form menu utama berisi menu-menu utama yang dapat dipilih pengguna. Form utama akan ditampilkan setelah form splash. Perancangan dari form utama ditunjukkan pada Gambar 3.21. Gambar 3.21 Perancangan Form Menu Utama

57 3.2.3.3 Form Menu Teori Form menu teori berisi slide tentang teori ekspresi matematika. Perancangan dari form menu teori ditunjukkan pada Gambar 3.22. Gambar 3.22 Perancangan Form Menu Teori 3.2.3.4 Form Menu Konversi dan Perhitungan Form menu konversi dan perhitungan merupakan inti dari aplikasi, berisikan kolom input dan output untuk berinteraksi. Perancangan dari form menu konversi dan perhitungan ditunjukkan pada Gambar 3.23.

58 Gambar 3.23 Perancangan Form Menu Konversi dan Perhitungan 3.2.3.5 Form Menu Simulasi Sistem Kerja Stack Form menu simulasi sistem kerja stack menampilkan gambar-gambar yang disusun berurutan yang disimpan dalam image list, digunakan untuk menjelaskan sistem kerja stack secara visual. Menu ini terdiri dari Konversi Infix ke Prefix, Konversi Infix ke Postfix, dan Evaluasi Postfix. Perancangan dari form menu simulasi sistem kerja stack ditunjukkan pada Gambar 3.24.

59 Gambar 3.24 Perancangan Form Menu Simulasi Sistem Kerja Stack 3.2.3.6 Form Menu Tentang Program Form menu tentang program berisikan uraian ringkas tentang program dan informasi tentang penulis. Perancangan dari form menu tentang program ditunjukkan pada Gambar 3.25. Gambar 3.25 Perancangan Form Menu Tentang Program

60 3.2.3.7 Form Menu Bantuan Form menu bantuan akan menampilkan file text yang telah dibuat sebelumnya. Form ini dilengkapi dengan pencarian kata. Perancangan dari form menu bantuan ditunjukkan pada Gambar 3.26. Gambar 3.26 Perancangan Form Menu Bantuan