Coding is really small & simple; Algorithm (design) & practice is the real key & challenging --- Marshima
Coding is really small & simple; Algorithm (design) & practice is the real key & challenging --- Marshima
The focus of the lecture module is on technologies that help us understand:
The development basics and architecture of the Java EE technology- Servlet, JavaBean, JSP and EJB.
How to develop Java EE application - programming, assembly, and deployment.
How to solve problem in architecture of Java EE technology
Assessment
Continuous Assessment
Assignment 1 : 10%
Assignment 2 : 10%
Test : 10%
Group Project : 40%
Final Assessment
Final Test :30%
Web Application Project (CSC584) – Group project (3-4 Members)
Project Description:
Tutor-Match: Academic Peer Mentoring
Description: A platform connecting students who need academic support with high-achieving peer tutors for specific subjects.
CRUD: Tutors create profiles and availability; students read profiles and create bookings; tutors update booking statuses (Approved/Completed); admins delete inappropriate reviews.
Business Logic (Scheduling & Conflict): A time-blocking algorithm that prevents double-booking by checking a tutor's existing sessions in the database before allowing a new student to confirm a time slot.
Dashboard: Most requested subjects, average student rating, and total hours completed per faculty.
2. E-Aduan Kolej: Hostel Maintenance & Repair
Description: A ticketing system for residential college students to report infrastructure damages.
CRUD: Students create repair tickets; technicians read assigned tickets and update status (Pending, In Progress, Resolved); admins delete duplicate reports.
Business Logic (Prioritization & Routing): An automated routing algorithm that assigns a priority level (High/Medium/Low) based on the damage category (e.g., Electrical is High, Furniture is Low) and forwards the ticket to the specific technical department.
Dashboard: Average resolution time per block, volume of tickets by category, and technician performance.
3. Campus-Bazaar: Pre-loved Textbook & Gear Exchange
Description: A localized digital marketplace for students to buy, sell, or trade used campus items.
CRUD: Sellers create item listings; buyers read listings and create purchase requests; sellers update availability; admins delete flagged posts.
Business Logic (Dynamic Search & Filtering): A database querying algorithm that dynamically constructs SQL SELECT statements (using PreparedStatement) based on multiple user filters (e.g., keyword LIKE, price range, and faculty category).
Dashboard: Most popular categories, total monetary value exchanged, and active user growth.
4. E-Hadir: Student Event & Workshop Ticketing
Description: A centralized event management system for university clubs to issue digital tickets.
CRUD: Committees create events and capacities; students read events and create registrations; committees update attendance statuses; admins delete canceled events.
Business Logic (Capacity & Waitlist Management): A state-control algorithm that deducts available tickets upon booking. If capacity hits 0, it routes new registrants to a waitlist table and automatically upgrades them if a confirmed attendee cancels.
Dashboard: Top 5 clubs with the highest turnouts, monthly engagement rates, and venue utilization.
5. Siswa-Gigs: Campus Part-Time Job Portal
Description: A micro-job portal where campus departments or vendors hire students for short-term tasks.
CRUD: Employers create job listings; students read jobs and create applications; employers update application statuses (Hired/Rejected); admins delete expired jobs.
Business Logic (Wage & Deduction Calculation): A financial calculation algorithm that multiplies the student's logged hours by the hourly rate, deducts a standard platform processing fee, and outputs the final payable net amount.
Dashboard: Total wages earned, peak hiring periods, and most demanded skill sets.
6. Biblio-Space: Library Discussion Room Booking
Description: A reservation system for managing high-demand study spaces and presentation labs.
CRUD: Students create bookings; librarians read daily schedules; librarians update room statuses (e.g., block for maintenance); students delete (cancel) bookings.
Business Logic (Quota Enforcement): A business logic algorithm that calculates a student's total booked hours for the current week. If the sum exceeds the university's maximum quota (e.g., 6 hours/week), the system rejects the new booking attempt.
Dashboard: Heatmap of frequently booked timeslots, room utilization percentages, and peak visitation hours.
7. E-Klinik Siswa: Campus Health & Medical Leave
Description: A patient management system for the campus health center to handle appointments.
CRUD: Students create doctor appointments; medical officers read patient histories and update diagnoses; clinic admins delete or archive graduation records.
Business Logic (Queue Estimation): A calculation algorithm that determines the estimated waiting time for a walk-in student by multiplying the number of "Pending" patients in the database queue by the historical average consultation time (e.g., 15 minutes).
Dashboard: Trends of common illnesses (e.g., flu spikes), daily waiting times, and inventory alerts.
8. FYP-Showcase: Final Year Project & Innovation Repository
Description: A digital gallery where final-year students pitch their projects to lecturers and industry partners.
CRUD: Students create project portfolios; guests read projects; lecturers read projects and create grade entries; admins update final publication statuses.
Business Logic (Weighted Scoring): A grading algorithm that calculates a final FYP score by applying different mathematical weights to various criteria (e.g., 40% for working prototype, 30% for report, 30% for presentation).
Dashboard: Most viewed projects, breakdown by technology domain, and industry engagement metrics.
9. Biasiswa-Link: Financial Aid & Zakat Tracker
Description: A portal for managing student applications for emergency funds and Zakat.
CRUD: Students create aid applications; finance officers read submissions; officers update approval statuses; students delete unsubmitted drafts.
Business Logic (Eligibility Filtering): An automated validation algorithm that cross-references a student's inputted household income against the current poverty line/Zakat threshold, automatically flagging or rejecting applications that do not meet the financial criteria.
Dashboard: Total funds disbursed, demographics of recipients, and pending application bottlenecks.
10. Sumbang-Siswa: Student Project Crowdfunding
Description: A fundraising platform for student clubs to gather donations for charity drives, events, or competitions.
CRUD: Clubs create campaign pages; donors read campaigns and create pledges; admins update campaign verification statuses; clubs delete drafts.
Business Logic (Milestone Tracking): A financial calculation that tracks the sum of incoming donations, calculates the percentage against the target goal, and automatically freezes the payment gateway for the campaign once 100% is reached.
Dashboard: Total funds raised university-wide, highest-funded campaigns, and average donation size.
Project Requirements:
You need to develop a web application that based on the company requirements. The web application should have at least four (4) modules as given below:
Login/Logout
Allow user to login and logout from the web application using session management.
Registration with validation
Allow new user to register to the web system.
Information management: Create / Read / Update / Delete
Allow user to manage information from a database such as to create, read, update and delete information from the database.
Dashboard
To provide user an overview of the process or information by different data representations.
System specification
You need to develop the web application using Java Technology and MVC framework. You must include the JavaBean (Model), JSP (View) and Servlet (Servlet) in the web application.
You need to use github to manage code with team members
Project Deliverables
A storyboard
You need to prepare HTML files to show the flow/ structure of the web application and database ERD that have at least four tables.
A web application
You need to submit a web application project using Java Technology
User manual
You need to prepare a user manual for the web application.
Project Assessment (40%)
Project storyboard (10%) - dateline Week 9
Web application and user manual (20%) - dateline Week 14
Peer review assessement (5%) - dateline Week 14
Presentation– (5%) -- dateline Week 14
Click on the below group to view the assessment marks for lab exercises and tests