Skip to content
Contact
[ PROJECT ARCHIVE ]

12 projects.
Built, documented,
and shipped.

Software Engineering · Computer Science · Cybersecurity · Ethics · Mathematics
01
SE423

Software Project Management — Fursah

Software Engineering

A software project management study for Fursah, accompanied by a linked prototype. The course project develops an incremental, artifact-based plan that is refined as scope, risks, and stakeholder needs evolve.

Focus
Project PlanningRisk ManagementWBSSchedulingStakeholder Analysis
Objectives & deliverables

The brief covers project scope and organization, comparison of two plan-driven and two Agile methodologies, risk analysis, work breakdown and scheduling, stakeholder communications, and progress metrics.

Project objectives
  • Define the problem or opportunity, intended benefits, stakeholders, team structure, and a detailed, non-redundant project scope.
  • Compare two plan-driven and two Agile methodologies against the project context; justify the selection and assess methodology-specific and wider project risks.
  • Estimate the work using a consistent WBS and develop either a justified Gantt schedule or an estimated product backlog and a detailed Sprint 1 backlog, depending on the selected methodology.
  • Analyze stakeholder power and interest, plan who communicates what and when, and define at least four metrics with a collection method and rationale.
  • Refine the four artifacts together using instructor and peer feedback, maintaining a cohesive plan for a ten-minute final presentation.
Required deliverables
  • Project overview, organizational structure, and scope
  • Methodology comparison, selection, and risk register
  • Work breakdown structure, estimates, and schedule
  • Stakeholder register, communications plan, and metrics
  • Integrated artifacts and final presentation
02
SE322

Software Design and Architecture

Software Engineering

A software architecture and design project that develops a requirements baseline into documented architectural views and detailed design decisions.

Focus
Software Architecture4+1 View ModelQuality AttributesDesign PatternsDesign Validation
Objectives & deliverables

The brief requires the 4+1 view model, three to four quality attributes with scenarios, a justified architectural style, and at least three design patterns, followed by design validation and presentation.

Project objectives
  • Translate the project requirements (SRS) into a Software Architecture Design document using the 4+1 view model and detailed diagrams.
  • Identify three to four important quality attributes, document their scenarios, and justify how the selected architectural style supports the project.
  • Select and justify at least three design patterns in the Software Design Document, then review and validate the design decisions before presenting the work.
Required deliverables
  • Requirements baseline and Software Architecture Design document
  • Detailed diagrams organized using the 4+1 view model
  • Quality attribute scenarios and architectural style rationale
  • Software Design Document with at least three justified patterns
  • Design validation and final presentation
03
SE311

Software Requirements Analysis - Sillah

Software Engineering

Formal requirements engineering project for Sillah, a preventive family cardiac health platform focused on early hereditary-risk awareness.

Covers the requirements lifecycle from inception through elicitation, analysis, specification, validation, traceability, and change management.

RoleLed requirements structure, documentation flow, modeling organization, and the prevention-oriented requirements baseline.
Stack
Requirements EngineeringUMLGRLTraceabilityMkDocs
Outputs
  • Vision and scope
  • Stakeholder analysis
  • Use cases
  • Functional and non-functional requirements
  • Traceability baseline
Objectives & deliverables

The brief runs the full requirements lifecycle across six phases - inception, elicitation, analysis, specification, validation, and requirements management - for a prevention-first family cardiac health platform.

Project objectives
  • Establish the business goals, project scope, and strategic context of a prevention-first system that moves families from reactive treatment to proactive hereditary-risk awareness.
  • Elicit stakeholder needs through interviews, surveys, and document analysis, then structure the findings into analysis and domain models.
  • Prioritize the requirements and define quality constraints, separating functional behavior from non-functional targets.
  • Consolidate the agreed requirements into a formal SRS, then validate them for quality, completeness, and consistency.
  • Maintain a traceability baseline and change-control process so the requirements stay governed as the project evolves.
Required deliverables
  • Inception report with business goals, scope, and context
  • Elicitation records from interviews, surveys, and document analysis
  • Analysis models, prioritization, and quality constraints
  • Software Requirements Specification and validation review
  • Traceability matrix and change-control baseline
04
SE201

Sillah - Family Health Management System

Software Engineering

Preventive health management system helping Saudi families record medical history, receive risk alerts, and simulate preventive appointment workflows.

Documents the full software engineering process: proposal, requirements, design, prototype, testing, and final reporting.

RoleOwned system analysis, documentation structure, UML modeling support, and end-to-end project presentation.
Stack
JavaUMLSoftware DesignTestingMkDocs
Outputs
  • Requirements specification
  • Architecture and UML diagrams
  • Prototype and testing notes
  • Documentation site
  • App deployment
Objectives & deliverables

The brief follows the full software engineering process in four phases - proposal, requirements, design, and prototype with testing - for a preventive family health platform.

Project objectives
  • Propose the system: its goals, objectives, main features, and the users it serves.
  • Document 31 functional and non-functional requirements covering medical history recording, risk alerts, and preventive appointment scheduling.
  • Design the software architecture with UML diagrams and applied design principles.
  • Implement a Java prototype of ten classes that simulates the core workflows.
  • Test the prototype against the specification and report the results in a complete documentation set.
Required deliverables
  • Project proposal with goals, features, and target users
  • Requirements specification with 31 functional and non-functional requirements
  • Architecture and UML design documentation
  • Java prototype of ten classes
  • Test cases, results, and final report
05
CS340

Full Stack Database Web Application

Computer Science

Database-driven web application documented from project proposal through relational modeling, SQL implementation, backend logic, and frontend integration.

Moves from EER conceptual design to logical schema, constraints, sample data, CRUD workflows, and application-layer documentation.

RoleDesigned core data model, organized documentation, integrated system phases, and handled deployment structure.
Stack
EER ModelingSQLRelational SchemaBackend LogicMkDocs
Outputs
  • Project overview
  • EER diagram
  • Relational schema
  • SQL DDL and sample data
  • Application layer documentation
Objectives & deliverables

The brief moves a database-driven web application through six phases, from proposal and planning to conceptual and logical design, database implementation, and the application layer, closing with a sustainability reflection.

Project objectives
  • Propose the application concept and form the project team.
  • Define the functional and non-functional requirements, system architecture, and UI wireframes.
  • Produce an EER conceptual design with a written explanation of the modeling decisions.
  • Map the EER model to a relational schema with a data dictionary, normalization analysis, constraint specifications, and stated assumptions.
  • Implement the database with SQL DDL scripts, a sample dataset, and enforced integrity constraints.
  • Build the application layer: backend logic, basic and advanced SQL queries, and a frontend interface.
Required deliverables
  • Proposal and planning report with requirements and wireframes
  • EER diagram and conceptual design report
  • Relational schema, data dictionary, and normalization analysis
  • SQL DDL scripts, sample data, and integrity constraints
  • Backend logic, query set, frontend, and application report
  • Sustainability reflection, references, and appendix
06
CS330

Parallel Performance Evaluation in Linux

Computer Science

Operating systems project evaluating process-based parallelism and measured performance behavior in a Linux environment.

Uses fork-based process creation, controlled experiments, timing comparison, and reproducible technical documentation.

RoleStructured experiments, documented execution behavior, and prepared the deployed project site.
Stack
LinuxCForkPerformance TestingMkDocs
Outputs
  • Experiment plan
  • Parallel execution notes
  • Performance measurements
  • Analysis writeup
  • Documentation site
Objectives & deliverables

The brief covers process management, process-based parallelism, controlled performance experiments, and structured academic reporting across two phases in a Linux virtual machine.

Project objectives
  • Understand Linux process creation, lifecycle, and parent-child synchronization.
  • Implement process-based parallelism using fork() and wait().
  • Configure the virtual machine and Linux environment, compile the program, and run controlled timing experiments.
  • Extend the work to multithreaded performance at 1, 2, 4, 6, and 8 threads and analyze how runtime scales.
  • Present the methodology, measurements, and findings in a structured academic format.
Required deliverables
  • Phase I report with setup, experiment design, timing results, and analysis
  • Phase II work package with requirements, implementation plan, and measurement template
  • Runtime measurements across 1, 2, 4, 6, and 8 threads
  • Analysis framework and interpretation of scaling behavior
  • Project repository with source code and documentation
07
CS285

Cryptography Project

Computer Science

Secure key exchange implementation demonstrating Diffie-Hellman concepts through modular arithmetic and shared secret derivation.

Connects number theory, key generation, exchange steps, and documented cryptographic workflow in a Java implementation.

RoleImplemented the system and documented the cryptographic process from setup to shared secret output.
Stack
JavaDiffie-HellmanModular ArithmeticKey ExchangeMkDocs
Outputs
  • Algorithm explanation
  • Java implementation
  • Key generation workflow
  • Security notes
  • Documentation site
Objectives & deliverables

The brief asks for a Java implementation of Diffie-Hellman showing how two participants establish a shared secret, backed by reproducible test evidence and a technical report.

Project objectives
  • Apply the discrete mathematics behind public-key cryptography - modular arithmetic and discrete logarithms - to key exchange.
  • Build a working Diffie-Hellman implementation in Java across separate modules for key exchange, encryption, validation, and utilities.
  • Prove that both parties derive an identical shared secret.
  • Demonstrate encryption and decryption using the derived secret, with validation checks and error handling.
  • Provide two run modes - a guided numerical walkthrough and interactive live execution - with documented architecture and reproducible tests.
Required deliverables
  • Java modules for key exchange, encryption, parameters, validation, and utilities
  • Validation checks and error handling
  • Guided walkthrough and interactive execution modes
  • Technical report with results, advantages, and limitations
  • Full code documentation and references
08
CS210

Linked List Implementation and Runtime Analysis

Computer Science

Data structures project using a custom linked list to process registration records and compare sorting algorithm behavior.

Implements demand scoring, selection sort, insertion sort, merge sort, quick sort, theoretical analysis, and measured runtime comparison.

RoleImplemented data-structure behavior, contributed runtime analysis, and documented the engineering and results.
Stack
JavaLinked ListsSorting AlgorithmsBig-OMkDocs
Outputs
  • Custom linked list
  • Demand scoring
  • Sorting comparison
  • Runtime measurements
  • Source appendices
Objectives & deliverables

The brief covers a custom linked list, weighted demand scoring, four sorting algorithms, asymptotic analysis, and measured runtime comparison over a 3,432-record dataset.

Project objectives
  • Build a program that reads, processes, and sorts real registration records using a custom linked list.
  • Develop a weighted demand scoring system to prioritize registration records.
  • Implement selection, insertion, merge, and quick sort over the same data structure.
  • Compare theoretical Big-O predictions against measured execution times on a 3,432-record dataset.
  • Analyze scalability and document how design choices affect performance.
Required deliverables
  • Java program with the custom linked list and demand scoring
  • Four sorting implementations and a benchmarking harness
  • Asymptotic complexity analysis
  • Runtime measurements and performance graphs
  • Final report, teamwork contribution record, and appendices
09
CS102

School Course Enrollment System

Computer Science

Console-based university registration system with multiple user roles, file persistence, and modular object-oriented Java design.

Handles role-based access, course registration workflows, persisted data, and a complete course-project documentation trail.

RoleDesigned and implemented the full system from scratch under difficult team conditions, then documented the result.
Stack
JavaOOPFile PersistenceRole-Based AccessMkDocs
Outputs
  • Console application
  • Role workflows
  • Persistence model
  • Implementation notes
  • Documentation site
Objectives & deliverables

The brief asks for a console university enrollment system with three user roles, object-oriented design, and file-based persistence.

Project objectives
  • Simulate a basic university course enrollment system end to end.
  • Implement role-based access and workflows for students, instructors, and administrators.
  • Apply object-oriented design principles across six core entity classes: User, Student, Instructor, Administrator, Course, and Assessment.
  • Separate entities, helper classes, data management, and application logic.
  • Persist system data across five text files and generate enrollment statistics and reports.
Required deliverables
  • Console application with student, instructor, and administrator workflows
  • Six core entity classes plus helper and data-management classes
  • File-based persistence across five data files
  • Enrollment statistics and generated reports
  • Project documentation with class breakdown and code reference
10
CYS401

Mini CTF Security Lab

Cybersecurity

A mini Capture-the-Flag security lab that simulates real-world, CTF-style challenges. Users analyze each scenario, identify the security issue, and submit a flag in the format CYS401{...} for automatic validation and scoring.

Twelve challenges across four categories - Web Security, Cryptography, Security Awareness, and Cybersecurity Ethics - worth 1,200 points, with flag validation, progress tracking, hints, and a scoreboard.

RoleDesigned and built the platform, its interface, and the four-category challenge set, and implemented flag validation, progress tracking, and the scoreboard.
Stack
Capture the FlagWeb SecurityCryptographySecurity AwarenessEthics
Outputs
  • 12 challenges worth 1,200 points
  • Flag validation system
  • Progress tracking and hints
  • Scoreboard
  • Challenge-navigation interface
Objectives & deliverables

The brief (option 28) asks students to design and implement a mini CTF security lab that simulates real-world security challenges in a controlled, ethical, educational environment, supported by a 13 to 15 page report and a ten-minute presentation.

Project objectives
  • Design and implement a mini CTF security lab that simulates CTF-style challenges within a controlled, ethical, educational environment.
  • Build guided challenges across multiple categories (Web, Crypto, Awareness, Ethics) covering authentication weaknesses, insecure configurations, phishing awareness, cryptography basics, and ethical decision-making.
  • Present each challenge as a realistic scenario where the user analyzes the situation, identifies the security issue, and submits a correct flag to demonstrate understanding.
  • Automatically validate flags, track user progress, and give feedback explaining the correct security concept and best practices, with hints to support learning.
  • Provide a scoreboard or completion status and a user-friendly interface for demonstration, then document the work in a formal report and present it.
Required deliverables
  • CTF platform with a challenge-navigation interface and flag validation
  • Multiple challenge categories (Web, Crypto, Awareness, Ethics) with hints and feedback
  • Progress tracking and a scoreboard
  • 13 to 15 page report (introduction and threat assessment, literature review, implementation with interface screenshots and a code appendix, applications and recommendations)
  • Ten-minute demonstration and presentation
11
MATH221

Numerical Analysis Methods

Mathematics

Numerical methods project implementing and analyzing computational techniques for approximation, error behavior, and convergence.

Covers root-finding, interpolation, numerical differentiation and integration, stability, accuracy, and efficiency tradeoffs.

RoleImplemented algorithms, analyzed error behavior, documented derivations, and organized computational results.
Stack
Numerical MethodsRoot FindingInterpolationError AnalysisMkDocs
Outputs
  • Algorithm implementations
  • Derivations
  • Error analysis
  • Computational results
  • Documentation site
Objectives & deliverables

The brief compares three classical root-finding methods for nonlinear equations on convergence rate, accuracy, and computational efficiency, implemented in GNU Octave.

Project objectives
  • Apply and compare the bisection, Newton-Raphson, and secant methods for nonlinear equations.
  • Study the convergence rate, accuracy, computational efficiency, and stability of each method.
  • Implement the methods in GNU Octave and record iteration counts and approximate roots.
  • Present the comparison through tables and graphs.
  • Support the computational work with handwritten derivations and manual calculations.
Required deliverables
  • GNU Octave implementations of the three methods
  • Iteration counts and approximate roots per method
  • Comparative analysis of convergence, accuracy, and stability
  • Tables and graphs of the results
  • Digital report and handwritten derivations
12
ETHC303

Social Implications of Artificial Intelligence & Expert Systems

Ethics

ETHC 303 research report studying the ethical, societal, and sustainability implications of Artificial Intelligence and Expert Systems.

Connects fairness, privacy, accountability, job disruption, inequality, and energy use through WHO, UNESCO, NIST, Stanford HAI, and recent research sources.

RoleCo-authored the research and presentation with Layan Abdulaziz Alnasser, organizing recommendations around audits, human oversight, equity, and sustainability.
Stack
AI EthicsExpert SystemsResponsible AISustainabilityGovernance
Outputs
  • 16-page research report
  • Project presentation
  • Ethical and societal analysis
  • Documented literature-review methodology
  • Responsible AI recommendations
Objectives & deliverables

The brief follows the course research-paper template - abstract, introduction, literature review, methodology, analysis, recommendations, conclusion, and references - applied to Artificial Intelligence and Expert Systems.

Project objectives
  • Introduce Artificial Intelligence and Expert Systems, explain their background, and state the research questions the paper answers.
  • Review and synthesize the academic literature, highlighting key findings, major debates, and gaps.
  • Describe the methodology: data sources, approach, and the frameworks and criteria used in the analysis.
  • Analyze the ethical, societal, and sustainability implications with evidence-backed arguments and examples.
  • Offer practical, realistic recommendations addressing the issues raised, and cite every source in a consistent academic style.
Required deliverables
  • Abstract of 150 to 250 words
  • Introduction with background and research questions
  • Literature review drawing on WHO, UNESCO, NIST, and Stanford HAI sources
  • Methodology and analysis of ethical, societal, and sustainability implications
  • Recommendations, conclusion, references, and appendix