• Tidak ada hasil yang ditemukan

Perancangan Aplikasi Forum Diskusi Berbasis Web

N/A
N/A
Protected

Academic year: 2017

Membagikan "Perancangan Aplikasi Forum Diskusi Berbasis Web"

Copied!
106
0
0

Teks penuh

  • Topik: Perancangan Aplikasi Forum Diskusi Berbasis Web

I. Introduction: Perancangan Aplikasi Forum Diskusi Berbasis Web

This document details the design of a web-based discussion forum application. The application aims to provide a platform for users to engage in discussions on various topics. The primary focus is on functionality, user experience, and security, ensuring a robust and user-friendly environment for online communication. The design incorporates a three-tier architecture, separating the presentation, application logic, and data layers for maintainability and scalability. This modular design allows for easier updates and customization in the future.

II. System Architecture and Technologies

The application utilizes a LAMP (Linux, Apache, MySQL, PHP) stack, a common and well-supported architecture for web applications. PHP handles the server-side logic, dynamically generating web pages based on user interaction. Apache acts as the web server, managing requests and responses. MySQL is the relational database system used to store user information, discussion threads, and comments. The front-end is built using HTML, CSS, and JavaScript, leveraging Bootstrap for responsive design and ease of development. The choice of these technologies provides a balance between cost-effectiveness, ease of development and maintenance, and stability. The code snippets provided (e.g., index.php, admin.php) illustrate the PHP and HTML structure.

III. User Interface (UI) and User Experience (UX)

The UI is designed with simplicity and clarity in mind. Bootstrap's pre-built components and styling are leveraged to create a clean and intuitive interface. Navigation is straightforward, allowing users to easily create new discussion threads, respond to existing ones, and manage their profiles. The code reveals a clear structure with elements like navigation bars and panels to organize content effectively, creating a positive user experience. The application also features user profile management, allowing users to update personal information and preferences. Further enhancements in UX could be considered through user testing and feedback analysis.

IV. Functionality and Features

Key features include user registration and login, discussion thread creation, comment posting, user profiles, and an admin panel for moderation. The admin panel (admin.php) offers functionality to manage users and monitor discussions, including access to reported comments. The code demonstrates the implementation of these functions through PHP scripts that handle database interactions. The use of mysql_query functions indicate direct database interaction which needs to be replaced with prepared statements to prevent SQL injection vulnerabilities for enhanced security.

V. Security Considerations

Security is a critical aspect. The application uses MD5 hashing for password storage (although this is considered outdated and more robust hashing algorithms like bcrypt or Argon2 should be implemented for improved security). Input sanitization and validation is crucial, though not completely evident from the snippets provided; functions like mysql_real_escape_string suggest some effort towards preventing SQL injection. However, a comprehensive security audit is needed to address vulnerabilities and ensure compliance with industry best practices. Implementing prepared statements to handle database queries is a high priority to eliminate SQL injection.

VI. Database Design

The database schema (not explicitly provided) is assumed to include tables for users (with fields like username, password, email), discussion threads (with fields like title, content, author, timestamp), and comments (with fields like thread ID, author, content, timestamp). Relationships between these tables enable efficient data retrieval and management. A proper ER diagram should be included for better clarity. The code snippets hint at the existence of tables such as komprom, komentar, join, and laporan, suggesting a well-structured database, but further detail is needed.

VII. Future Enhancements

Future improvements could include implementing a more robust search functionality, integrating a notification system, adding features for rating and voting on comments, and incorporating a more sophisticated user authentication system using bcrypt or Argon2 for improved security. Adding features like user roles and permissions, and implementing a robust logging and auditing mechanism would improve the application further. Furthermore, the integration of a richer text editor could improve the user experience when creating and editing posts.

Gambar

Gambar 3.4 DFD Level 0 Aplikasi Forum Diskusi Online
Tabel 3.1 Tabel join
Tabel Laporan
Gambar 3.5 Relasi Tabel
+7

Referensi

Dokumen terkait

Pada Tugas Akhir ini telah dibuat suatu sistem yang memiliki fasilitas login, beranda, mading atau berita, update status, galeri foto, dan forum diskusi..

Di halaman ini User bisa melihat daftar Galeri yang sudah di upload oleh.. Admin atau User yang

Gambar 3.66 State Transition Diagram Halaman Admin-Forum Buat Ubah.

desain logo, user mengirimkan pesan ke admin untuk informasi mengubah atau mengedit. User bisa memesan logo, lalu melakukan pembayaran dan user harus konfirmasi pembayaran jika

Setelah admin memasukkan user id dan password yang benar maka admin akan masuk ke menu utama dari web tersebut dapat dilihat pada gambar 4 berikut. Pada halaman ini terdapat

Pada halaman user member dapat mengisi formulir online penarikan uang, cek saldo, dan mengirim testimonial, sedangkan pada halaman admin dapat digunakan untuk melihat

Gambar 3.3 Activity Diagram Laporan Dalam gambar 3.3 dijelaskan bahwa user dapat melihat jadwal yang sudah dilakukan approval oleh admin dengan cara login ke

Pada gambar 13 menampilkan halaman kas masuk dimana admin komunitas akan melihat kas uang masuk yang sudah dilakukan oleh anggota, admin akan melihat apakah dalam data yang dilihat