تفاصيل العمل

نظام إدارة وحجز الفنادق المكتبي | مشروع متكامل بلغة Java و JavaFXنظرة عامة على المشروعنظام مكتبي احترافي متكامل لإدارة وحجوزات الفنادق (Desktop Hotel Reservation System) بأسلوب هندسي متقدم باستعمال Java 17+ و JavaFX. يعتمد المشروع على نمط التصميم MVC (Model-View-Controller) لتقديم أداء سلس، وتجربة مستخدم تفاعلية، مع معالجة حقيقية للبيانات متعددة الخيوط (Multithreading) لإدارة صلاحيات الموظفين، الإدارة، والنزلاء بكل كفاءة. الميزات التقنية والمعمارية الرئيسيةنظام صلاحيات متعدد المستويات (RBAC): واجهات ومسارات عمل مخصصة لكل من: النزيل (Guest)، المسؤول (Admin)، وموظف الاستقبال (Receptionist). برمجة كائنية التوجه متقدمة (OOP Architecture): بناء هيكلي قوي يعتمد على المفاهيم المتقدمة مثل التوريد (Inheritance)، التكبيل (Encapsulation)، الواجهات (Interfaces مثل Payable, Reservable, Manageable)، والأنواع المحددة (Enums). واجهة مستخدم تفاعلية (JavaFX / FXML / CSS): تصميم عصري ومنظم بفصل كامل بين التصميم والمنطق البرمجي، مع تحكم ديناميكي في قياسات الشاشة وثيمات CSS مخصصة. معالجة متوازية متعددة الخيوط (Multithreading & Concurrency): تحديث تلقائي ولحظي للغرف وتصفية البيانات في الخلفية بدون أي تجميد للواجهة الرسمية (UI Freezing) باستخدام خيوط تنفييل مستقلة وآمنة (Platform.runLater(), Daemon Threads, synchronized). دورة حيوية كاملة للحجز والفواتير: حساب تلقائي للتكلفة، تتبع حالات الحجز، إصدار الفواتير مع دعم خيارات دفع متعددة (مباشرة، بطاقة credit، دفع إلكتروني). جودة البرمجيات واختبار النظام (Software Testing & QA)تم تصميم هذا المشروع مع تركيز كامل على ضمان جودة البرمجيات (Software Quality Assurance) واختبار الحالات الحرجية (Edge Cases) لضمان استقرار التطبيق: التحقق الدقيق من البيانات والمدخلات (Input Validation):منع المدخلات غير الصحيحة أو القيم السالبة للحسابات والمبالغ المالية. التحقق المنطقي من تواريخ الحجز (منع اختيار تاريخ المغادرة قبل الوصول أو الحجز في تواريخ سابقة). حماية النظام من الحجوزات المزدوجة أو إلغاء الحجوزات بعد اكتمالها. معالجة الاستثناءات المخصصة (Custom Exceptions): معالجة الاستثناءات مثل (InvalidPaymentException, RoomNotAvailableException) لتقديم تنبيهات وتغذية راجعة واضحة للمستخدم دون انهيار البرنامج. أمان المعالجة المتزامنة (Thread Safety): حماية مصفوفات البيانات من التعارض والتغيرات المفاجئة أثناء القراءة والتحديث التلقائي. تغطية شاملة لحالات الاختبار (Test Matrix Execution): إعداد وتنفيذ جدول اختبارات شامل يغطي الحالات السليمة والحالات الحرجية لجميع وظائف التسجيل، الحجز، الإدارة، والتنفيذ بالخلفية بنسبة نجاح 100%. المهارات والتقنيات المستخدمةاللغات والأساسيات: Java 17+, Object-Oriented Programming (OOP) واجهات المستخدم: JavaFX, FXML, CSS البرمجة المتوازية: Multithreading, Concurrency, Thread Synchronization اختبار ودعم الجودة: Software Testing, Boundary Value Testing, Robust Input Validation, Defensive Programming

Desktop Hotel Reservation System | Enterprise Java & JavaFX SolutionEnglish VersionProject OverviewA full-featured, enterprise-grade Desktop Hotel Reservation System built with Java 17+ and JavaFX. Designed with a clear Model-View-Controller (MVC) architecture, the application handles complex multi-role workflows—Guest, Admin, and Receptionist—while maintaining high performance, real-time data sync, and responsive UI layout through multi-threading. Key Technical Capabilities & ArchitectureRole-Based Access Control (RBAC): Custom authorization workflows tailored for Guests, Administrators, and Receptionists with distinct navigation dashboards and permission scopes. Clean OOP Design & Software Architecture: Robust backend engineered using inheritance, encapsulation, polymorphism, enums, custom interfaces (Authenticatable, Reservable, Payable, Manageable, Budgetable), and design patterns. Dynamic GUI (JavaFX + FXML + CSS): Modular layout architecture utilizing centralized scene routing (ScreenNavigator), custom scaling controllers, and responsive CSS theme styling. Asynchronous Processing & Multithreading: Thread-safe background execution (Runnable, Daemon Threads, Platform.runLater(), and synchronized blocks) delivering real-time room availability auto-refreshes and background data filtering without UI freezes. End-to-End Reservation Lifecycle: Complete booking workflow with instant price/night calculations, status tracking (Pending, Confirmed, Cancelled, Completed), invoice generation, and single or split payment method processing. Software Testing & Quality Assurance FocusThis application was built with Software Quality Assurance (SQA) and defensive programming principles at its core to ensure zero runtime crashes and strict data integrity: Defensive Validation & Input Sanitization:Strict regex validation and sanitization on credentials, registration fields, and financial amounts. Logical boundary enforcement on date pickers (preventing check-out prior to check-in, past dates, and overlapping bookings). Automatic state validation preventing double-payments or invalid booking state transitions. Custom Exception Handling: Dedicated runtime exception layer (InvalidPaymentException, RoomNotAvailableException) handling edge cases gracefully and displaying clear feedback alerts to users. Thread Safety & Race Condition Prevention: Explicit synchronization on static memory collections to eliminate concurrent modification exceptions during real-time background queries. Systematic Verification & Testing Matrix: Fully executed manual and edge-case testing coverage across all authentication, CRUD, reservation, checkout, and background thread execution flows with verified zero-defect pass rates. Tech Stack & Skills DemonstratedLanguages & Core: Java 17+, Object-Oriented Programming (OOP) UI/UX: JavaFX, FXML, CSS Concurrency: Java Threads, Runnable, Thread Synchronization, Event Loops Quality & Testing: Black-box Testing, Boundary Value Analysis, Exception Handling, Defensive Programming, Test Case Matrix Execution

ملفات مرفقة