UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
Task Scheduling Optimization through Graph Theory
A Research Project
Discrete Structures II
Presented to the Faculty of the
College of Information Technology
University of Negros Occidental - Recoletos
In Partial Fulfillment of
the Requirements of the Course
CSP20123X
By:
Emil Claude Villegas
Cristeto III Turiano
March 2025
College of Information Technology
i
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
CHAPTER I: INTRODUCTION................................................................................................... 1
1.1 Overview of Discussed and Resolved Topics................................................................... 2
1.1.1 Directed Graphs (DAGs):.........................................................................................2
1.1.2 Topological Sorting:..................................................................................................2
1.1.3 SHA-256 and SHA-3................................................................................................3
1.2 Purpose of the GUI Program:........................................................................................ 3
1.2.1 Visualize DAGs:........................................................................................................ 3
1.2.2 Interact with Topological Sorting:............................................................................. 4
1.2.3 Apply SHA-256 Hashing:......................................................................................... 4
1.2.4 Prioritize Tasks:........................................................................................................4
CHAPTER II: REVIEW OF RELATED LITERATURES................................................................ 5
2.1 Previous Work:..................................................................................................................5
2.1.1 Cloud Computing-Based Scheduling Techniques:...................................................5
2.1.2 SHA-256 Hashing in Data Security:.........................................................................5
2.2 Relevance of Chosen Topics:........................................................................................... 6
2.2.1 Directed Acyclic Graphs (DAGs):.............................................................................6
2.2.2 Topological Sorting:..................................................................................................6
2.2.3 SHA-256 Hashing:................................................................................................... 7
CHAPTER III: METHODOLOGY...................................................................................................8
3.1 Programming Language and Tools:..................................................................................8
3.1.1 Directed Acyclic Graphs (DAGs):.............................................................................8
3.1.2 Topological Sorting:...................................................................................................8
3.1.3 Cryptographic Hashing (SHA256 / SHA-3).............................................................. 9
3.2 User Interface Design:.................................................................................................... 10
CHAPTER IV: IMPLEMENTATION............................................................................................. 15
4.1 Code Explanation........................................................................................................... 15
4.2 Challenges Faced...........................................................................................................21
CHAPTER V: RESULTS AND DISCUSSION............................................................................. 23
5.1 Testing............................................................................................................................ 23
5.2.1.1 Functionality Tests:............................................................................................. 23
5.2.1.2 Performance Testing:........................................................................................... 23
5.2.1.3 Scalability Testing:............................................................................................... 24
5.2 Evaluation of Effectiveness.............................................................................................24
5.2.2 Result of the Evaluation:..............................................................................................25
5.2.2.1 Task Scheduling Efficiency:................................................................................. 25
5.2.2.3 Data Integrity and Security:..................................................................................25
5.2.2.4 System Scalability and Performance:.................................................................. 25
CHAPTER VI: CONCLUSION.....................................................................................................26
College of Information Technology
i
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
6.1 Summary of Findings......................................................................................................26
6.2 Future Improvements......................................................................................................27
6.2.1 Extended/Advanced Discrete Structures:............................................................... 27
6.2.2 Advanced Scheduling Features:............................................................................. 27
6.2.3 Improved UI (User Interface):................................................................................. 28
6.2.2.4 Better Handling of Time-Constraints:................................................................... 28
REFERENCES............................................................................................................................ 29
APPENDICES............................................................................................................................. 30
CURRICULUM VITAE................................................................................................................. 40
College of Information Technology
i
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
College of Information Technology
i
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
APPROVAL SHEET
This is to certify that the research project titled: “Task Scheduling Optimizating through
Graph Theory” prepared and submitted by: Cristeto Turiano III and Emil Claude Villegas in
partial fulfillment of the requirements for the course Discrete Structures II at the Univeristy of
Negros Occidental- Recoletos has been examined and hereby recommended for approval.
____________________________
CIT FACULTY / Discrete Structures II Adviser
Date signed:
Noted By:
____________________________
College Dean
Date signed:
College of Information Technology
i
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
ABSTRACT
In complex environments where task management and timely execution are essential,
traditional scheduling approaches often fall short in accommodating dynamic dependencies and
data integrity. This research presents a task scheduling system built upon discrete structure
principles—specifically Directed Acyclic Graphs (DAGs), topological sorting, and SHA-256
cryptographic hashing—to enhance task prioritization, sequencing, and security. By representing
tasks as graph nodes and their dependencies as directed edges, the system generates logical
execution orders using topological sorting. It also integrates SHA-256 to ensure data integrity
and detect tampering. A graphical user interface (GUI) allows users to visualize task graphs, add
and manage tasks, and interactively explore task execution sequences. The system was
rigorously tested for functionality, scalability, and performance, successfully handling 500+ tasks
without significant degradation. The result is a dynamic and secure scheduling solution that
demonstrates both educational and practical applications of discrete mathematics. Future
enhancements aim to incorporate advanced scheduling features and improved user interface
design for broader usability.
College of Information Technology
i
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
CHAPTER I
INTRODUCTION
In an era where organization and efficiency are essential to productivity, task scheduling
is the backbone for handling workloads in most fields, whether they are for software
development, construction, education, or for daily office operations. The problem of effectively
distributing tasks given deadlines, priorities, and the resources at hand has been an ever-present
issue in optimizing allocation. As demands grow more complex and time-sensitive, the
shortcomings of traditional based scheduling methods become more increasingly apparent.
However, by applying mathematical optimization techniques such as Graph Theory, these
problems can be mitigated and further optimized.
This study seeks to create a dynamic scheduling system utilizing graph theory to break
away from the constraints of the conventional heuristic-based methods. By presenting tasks as
nodes and complex dependencies as weighted edges, we see a system that effectively describes
intricate task dependencies and schedules activities in terms of deadlines, resource availability,
and task urgency. Inspired by graph-based scheduling methods used in cloud computing settings
(Sujan and Devi, 2016) and general task graph scheduling systems (Robert, 2011), the research
design applies the principles to common applications like educational project management and
office task allocation. This system adapts dynamically to current-time limitations for optimal
resource allocation and enhanced overall productivity.
College of Information Technology
1
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
1.1 Overview of Discussed and Resolved Topics
This project draws on several key concepts from Discrete Structures II to create an
effective task-scheduling system. Below is an overview of the topics, highlighting their
underlying mathematical principles and real-world applications:
1.1.1 Directed Graphs (DAGs):
A directed graph consists of nodes connected by edges that have a specific direction.
When these graphs contain no cycles, they are known as Directed Acyclic Graphs (DAGs). This
acyclic property ensures that the tasks (nodes) can be arranged in a logical order without circular
dependencies. In task scheduling, DAGs model tasks as nodes and dependencies as edges, a
method that is applied in various domains such as software build pipelines, academic course
planning, and workflow management (Robert, 2011).
1.1.2 Topological Sorting:
Topological sorting is a process that produces a linear ordering of nodes in a DAG such
that for every directed edge from node A to node B, node A appears before node B in the
ordering. This ensures that all prerequisites for any given task are completed before the task is
initiated. Dynamic approaches to topological sorting—such as the algorithm presented by Pearce
and Kelly (2007)—provide efficient means of maintaining up-to-date ordering even as task
dependencies evolve. These techniques are especially valuable in real-time scheduling systems
and dynamic project workflows.
College of Information Technology
2
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
1.1.3 SHA-256 and SHA-3
SHA-256 and SHA-3 are cryptographic hash functions that convert input data into a
fixed-length, irreversible hash value. These functions are designed to be collision-resistant,
ensuring that even small changes in the input result in significantly different outputs. Such
properties make them essential for data integrity, digital signatures, password verification, and
secure communications. As discussed by Gowthaman and Sumathi (2015), the SHA-256
algorithm processes data in multiple stages—such as message padding, extension, and
compression—using a series of bitwise operations and modular arithmetic to generate a 256-bit
hash output efficiently. In the context of task scheduling systems, hash functions can be used to
ensure data consistency and detect unauthorized modifications to task information.
1.2 Purpose of the GUI Program:
The purpose of the GUI program is to offer an interactive platform that bridges theory
and practice in the field of discrete structures applied to task scheduling. By providing a visual
and hands-on environment, the program helps users—whether students, educators, or
professionals—grasp and experiment with key concepts such as Directed Acyclic Graphs
(DAGs), topological sorting, and the SHA-256 Hashing. Specifically, this project enables users
to:
1.2.1 Visualize DAGs:
Construct and modify graphs that represent tasks and their dependencies, helping to
illustrate how tasks are interconnected and sequenced.
College of Information Technology
3
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
1.2.2 Interact with Topological Sorting:
Execute topological sorting algorithms on the constructed graphs to see how tasks are
prioritized, ensuring that all prerequisites are met before subsequent tasks begin.
1.2.3 Apply SHA-256 Hashing:
Generate and view hash values for each task node using SHA-256 to simulate data
validation and tamper detection. This highlights how hashing can help maintain the integrity of
task information in collaborative or distributed environments.
1.2.4 Prioritize Tasks:
Dynamically rank tasks based on factors such as deadlines, resource requirements, and
overall value. This feature helps users understand and visualize how prioritization drives efficient
scheduling, ensuring that high-priority tasks are executed first to optimize workflow.
Through these features, the GUI program serves both an educational purpose and
practicality by showcasing how these techniques optimize real-world scheduling scenarios.
College of Information Technology
4
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
CHAPTER II
REVIEW OF RELATED LITERATURES
2.1 Previous Work:
In order to develop a robust and effective scheduling system, it is essential to review the
existing projects and related literature. By examining both historical and recent studies, we can
build upon established approaches and identify areas where new techniques can offer
improvements. Some existing studies includes:
2.1.1 Cloud Computing-Based Scheduling Techniques:
Research in cloud and mobile cloud computing environments has shown that graph-based
models can effectively optimize task scheduling. For instance, Sujan and Devi (2016) applied
weighted graphs to manage task dependencies in cloud computing, while Wang et al. (2018)
proposed a dynamic task scheduling algorithm based on a weighted bi-graph model in mobile
cloud computing.
2.1.2 SHA-256 Hashing in Data Security:
SHA-256 is a widely used cryptographic hash function that ensures data integrity by
producing a fixed 256-bit output from variable-length input. According to Gowthaman and
Sumathi (2015), enhancements to SHA-256 such as using a Non-Linear Pseudo Random
Generator and a Carry Select Adder–can significantly improve its speed, security, and efficiency.
College of Information Technology
5
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
2.2 Relevance of Chosen Topics:
Choosing which techniques to apply to our application is a deliberate process that
leverages core principles from discrete mathematics to address complex dependencies and
optimization challenges. Each topic was chosen to address specific challenges in the program
These topics include:
2.2.1 Directed Acyclic Graphs (DAGs):
DAGs offer a clear structure for task modeling and their dependencies. Through the
prevention of cycles, DAGs enable logical task ordering—a critical property to avoid deadlock
and ensure smooth execution. As Digitale et al. (2021) detail in their directed acyclic graph
tutorial, these data structures present an intuitive but formal means to model intricate
relationships, making them highly useful in research and practical applications.
2.2.2 Topological Sorting:
Topological sorting systematically orders tasks within a DAG so that they are only
executed when after all its prerequisites are completed—-an approach validated by Ajwani et al.
(2012), who developed an I/O-efficient topological sorting algorithm for large graphs,
demonstrating practical solutions for managing complex dependencies in dynamic systems. This
method is crucial for maintaining task sequences that respect dependencies, a requirement in
academic project planning and industrial scheduling.
College of Information Technology
6
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
2.2.3 SHA-256 Hashing:
SHA-256 ensures data integrity by producing a fixed-length, unique hash value for any
given input. Applying SHA-256 to task data allows systems to verify the authenticity and
consistency of each task node, which makes it a valuable tool for maintaining security in the
scheduling system, and preventing unauthorized modifications, contributing to the system’s
overall reliability.
In addition to their practical applications, these topics are foundational in computer
science mathematics and serve as critical building blocks for more advanced techniques. By
integrating interactive visualizations of DAGs, Topological sorting, and SHA-256 Hashing into
our application, users—ranging from students to industry professionals—can gain a deeper
understanding of how theoretical principles translate into effective, real-world solutions for task
scheduling.
College of Information Technology
7
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
CHAPTER III
METHODOLOGY
3.1 Programming Language and Tools:
Our project leverages several discrete structures to optimize task scheduling through
graph theory-based techniques. The following topics were implemented in the development of
our program:
3.1.1 Directed Acyclic Graphs (DAGs):
DAGs ultimately serve as the backbone of our scheduling logic. They were used to model
task dependencies and their constraints, and they are essential to ensure that no circular
dependencies exist. Each task is a node in the graph, and an edge from node A to node B
indicates that task A must be completed before task B.
3.1.2 Topological Sorting:
Topological sorting was employed to determine a valid sequence of task execution based
on dependency constraints. Given that our graph is a DAG, topological sorting ensures that each
task is scheduled only after all its prerequisites have been completed.
College of Information Technology
8
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
3.1.3 Cryptographic Hashing (SHA256 / SHA-3)
The system incorporates cryptographic hashing using SHA-256 and SHA-3 to enhance
data integrity and security. Implemented through standard cryptographic libraries available in the
programming language, these functions are used to generate unique hash values for each task
based on its attributes, such as task name, deadline, priority, and dependencies.
Each time a user account is created or modified, its data is hashed and stored. When
accounts are loaded or updated, the system recomputes the hash and compares it to the stored
value to detect any tampering or unauthorized changes. This ensures that the task data remains
consistent and authentic, especially in systems that support shared access or distributed task
management. By leveraging widely adopted cryptographic tools, the system adds a lightweight
but effective layer of verification without compromising performance.
College of Information Technology
9
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
3.2 User Interface Design:
Figure 1: Login Page
The Login Page is the first page users will see once they run the program. They are
required to login into an account, and each account stores their tasks separately. If the user does
not have an account, they are required to create one at the Sign Up Page.
College of Information Technology
10
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
Figure 2: Sign Up Page
The Sign Up Page allows the user to create an account, which involves setting
up/creating a new admin ID, the name of the account, and securing their password.
Figure 3: Main Menu
College of Information Technology
11
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
Once the user creates/login into an account, they will be redirected to the Main Menu.
The Main Menu shows two interactive options, the Add Note/Tasks page and the TaskList page,
which the user can decide whether they will create a new task, or view the list of current tasks..
Figure 4: Add Task Page
In this page, the user is prompted to create a task, which involves putting the task title,
the content of the task, and if they have prerequisites. Once the user creates a task, it will be
displayed at the TaskList page.
College of Information Technology
12
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
Figure 5: Task List Page
This page shows the current list of tasks that have yet to be completed or finished. If there
are no available tasks at the moment, it will simply display No Tasks Available until the user
adds a new task.
College of Information Technology
13
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
Figure 6: Task List W/ Tasks
This is an example of the Task List page having available tasks at the moment. At the left
side, we can see the list of tasks that were added and view their details and dependencies. At the
right side, we can see a model of the tasks, which shows each tasks dependencies or
prerequisites, allowing for a clear visualization for what must be done first.
College of Information Technology
14
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
CHAPTER 4
IMPLEMENTATION
4.1 Code Explanation
Fig 1. Base frontend template
This code snippet serves as the base HTML template to all other HTML pages. This is
used as a mold for other pages to implement their specific functions on. It holds the body, the
basic styling, and functions that are present in all HTML pages.
College of Information Technology
15
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
Fig 2. Admin sign up frontend html code
This is the code that handles user inputs to successfully sign up their details. It is simple,
and is passed through using the form attribute and is submitted through the use of a submit
button type.
College of Information Technology
16
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
Fig 3. Admin sign up backend logic
This is the backend logic that processes all the inputs taken from the frontend in Figure 2.
All errors are handled graciously, and parameters are set to ensure a meaningful user account.
After which, it is added to the database, and is committed to save all of a user’s details. After
that, it redirects the user to the admin page that can only be accessed if you’re logged in.
College of Information Technology
17
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
Fig 4. User add task page
This code snippet shows an interactive GUI for users to add a task. It is functional, with
several parameters set to ensure meaningful task details, and is labelled properly to guide the
user properly.
College of Information Technology
18
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
Fig 5. User add task backend logic
This code snippet handles all the data passed by the frontend page in figure 4. This code
allows users to add tasks, and add prerequisites if a task should have one. If the process is
successful, a variable is constructed by all the passed data, and is added, then committed, to the
database. If a task has a prerequisite, then this code will append each of the prerequisites to its
parent tasks.
College of Information Technology
19
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
Fig 6. Get task function
This code snippet allows the user to fetch all the tasks that they have created. All data
fetched here comes from the database which the program manages in every user decision.
Fig 7. Delete task function
This code basically acts as a completion part of the program, when a user completes a
task, this code handles it, then deletes it.
College of Information Technology
20
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
Fig 8. Directed Acyclic Graph (DAG) illustrator
This code snippet allows the program to create a Directed Acyclic Graph with the data
fetched from the database. It is done through the use of the vis library.
4.2 Challenges Faced
One of the primary challenges encountered by the researchers was the integration of the
frontend, backend, and database components into a cohesive project. Although the researchers
possessed prior knowledge of each individual component, combining them presented unforeseen
difficulties, particularly as numerous unfamiliar errors emerged throughout the process. To
address these challenges, the researchers primarily consulted instructional YouTube videos that
demonstrated full-stack integration techniques. For issues related to code logic or syntax, they
frequently sought assistance from ChatGPT to diagnose and resolve problems. Furthermore,
College of Information Technology
21
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
designing an intuitive and visually informative graphical user interface (GUI) posed an
additional challenge. This was especially evident in the development of a feature that
dynamically generates a Directed Acyclic Graph (DAG) based on user input, which required
careful consideration of both functionality and user experience.
College of Information Technology
22
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
CHAPTER V
RESULTS AND DISCUSSION
5.1 Testing
To ensure the functionality, reliability, and security of the developed task scheduling
system, a series of structured tests were conducted. These tests were designed to validate each
feature of the program, particularly the core components based on Directed Acyclic Graphs
(DAGs), Topological Sorting, and SHA-256 hashing. The testing process was divided into
several categories:
5.2.1.1 Functionality Tests:
Each feature of the system was tested to verify that it performed as described in the
objectives. This included verifying the creation of tasks, the assignment of dependencies, and the
execution of topological sorting to produce the correct task execution order.
5.2.1.2 Performance Testing:
The system was tested for its ability to handle an increasing number of tasks (ranging
from 10 to 500+ tasks) while maintaining efficient scheduling times.
College of Information Technology
23
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
5.2.1.3Scalability Testing:
The system was subjected to larger datasets to observe how it managed performance and
scalability as the number of tasks and their complexity increased.
5.2 Evaluation of Effectiveness
In this section, the effectiveness of the task scheduling system is evaluated based on its
ability to meet the key objectives outlined in the introduction, including the creation of a
dynamic scheduling system using Graph Theory, the visualization of Directed Acyclic Graphs
(DAGs), and ensuring data integrity through SHA-256 hashing. The evaluation focuses on how
well the system performs these tasks, the efficiency of its algorithms, and the security features
integrated into the application. This is evaluated based on the following:
● How quickly and efficiently the system schedules tasks given their dependencies.
● The system’s ability to handle and correctly order tasks based on their dependency
relationships using Directed Acyclic Graphs (DAGs).
● The system’s implementation of topological sorting to ensure tasks are executed
in the correct order.
● The robustness of the SHA-256 hashing implementation in ensuring task data
integrity.
● The ability of the system to handle a growing number of tasks without significant
performance degradation.
College of Information Technology
24
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
5.2.2 Result of the Evaluation:
5.2.2.1 Task Scheduling Efficiency:
The system successfully scheduled tasks in a time-efficient manner. Even as the task
number increased, performance remained consistent, even if we added 500 tasks. This shows the
system’s ability to handle task scheduling with high efficiency. The implementation of
graph-based scheduling ensures that tasks are prioritized based on dependencies and deadlines,
optimizing scheduling time.
5.2.2.3 Data Integrity and Security:
The implementation of SHA-256 hashing effectively ensured the integrity of task data.
The system performed regular checks to verify that no unauthorized modifications had occurred.
Whenever a task's data was altered, the system correctly recomputed the hash and compared it
with the stored value to detect discrepancies, thereby maintaining data authenticity and security.
5.2.2.4 System Scalability and Performance:
The system maintained performance even as the number of tasks grew. Tests involving
500+ tasks showed only a minimal increase in computation time, demonstrating the system's
scalability. It was able to handle large, complex datasets without significant performance
degradation.
College of Information Technology
25
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
CHAPTER VI
CONCLUSION
6.1 Summary of Findings
This project successfully implemented a dynamic task scheduling system leveraging
discrete structure concepts, particularly Directed Acyclic Graphs (DAGs), Topological Sorting,
and SHA-256 Hashing. The system was able to accurately model task dependencies, dynamically
schedule tasks, and maintain data integrity. The GUI program served its educational purpose
well, offering a clear and interactive platform for users to visualize and experiment with task
scheduling concepts.
The DAG-based scheduling was able to ensure correct task execution orders by
respecting dependencies and deadlines, while Topological Sorting handled complex task
sequences efficiently. Additionally, the SHA-256 hashing proved effective in maintaining data
security by ensuring that task data remained consistent and unaltered.
From a technical standpoint, the program was capable of handling up to 500+ tasks
without significant performance degradation, demonstrating its scalability. Moreover, the
intuitive graphical interface improved the user's understanding of these mathematical concepts
by allowing them to interact with the scheduling process in a visual and hands-on way.
College of Information Technology
26
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
6.2 Future Improvements
While the project achieved its primary objectives, there are several areas where
enhancements could be made in future versions. These improvements would add more features,
increase usability, and optimize performance. The following recommendations are proposed for
future development:
6.2.1 Extended/Advanced Discrete Structures:
Expanding the system to utilize other discrete structures such as Group Theory, Finite
Fields, etc., would allow it to address a broader range of scheduling operations. For instance,
tasks or symmetries might be modeled using Group Theory, while Finite Fields could address
more complex scheduling scenarios such as cryptographic tasks or resource management.
6.2.2 Advanced Scheduling Features:
To increase the program’s capability, more sophisticated scheduling features could be
introduced. This might include dynamic task prioritization, where the priority of tasks can
change based on real-time factors like resource availability, deadline shifts, or delays in other
tasks. Moreover, real-time task adjustment could enable the system to adapt to unforeseen
changes in the project timeline, providing greater flexibility for the user.
College of Information Technology
27
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
6.2.3 Improved UI (User Interface):
While the current GUI is functional, enhancing it to create a more user-friendly
experience would be valuable. Future iterations could include features like drag-and-drop
functionality for task dependencies, more intuitive visual task editing, and interactive graphs that
dynamically update based on user inputs. This would improve the accessibility and efficiency of
the system, especially for those who may not have a technical background.
6.2.2.4 Better Handling of Time-Constraints:
To further refine the scheduling process, better handling of time constraints and deadlines
could be introduced. The system could integrate real-time scheduling, where tasks are assigned
time slots based not only on their dependencies but also on resource availability and critical
deadlines. This would make the system more applicable to real-world environments, where
meeting deadlines is crucial.
College of Information Technology
28
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
References:
Bang-Jensen, J., & Gutin, G. (Eds.). (2018). Classes of Directed Graphs. Springer Monographs
in Mathematics. doi:10.1007/978-3-319-71840-8
Pearce, D. J., & Kelly, P. H. J. (2007). A dynamic topological sort algorithm for directed acyclic
graphs. Journal of Experimental Algorithmics, 11, 1.7. doi:10.1145/1187436.1210590
Sujan, S., & Kanniga Devi, R. (2015). An Efficient Task Scheduling Scheme in Cloud
Computing Using Graph Theory. Advances in Intelligent Systems and Computing,
655–662. doi:10.1007/978-81-322-2674-1_62
Robert, Y. (2011). Task Graph Scheduling.
Wang, T., Wei, X., Liang, T., & Fan, J. (2018). Dynamic tasks scheduling based on weighted
bi-graph in Mobile Cloud Computing. Sustainable Computing: Informatics and Systems.
doi:10.1016/j.suscom.2018.05.004
Ajwani, D., Cosgaya-Lozano, A., & Zeh, N. (2012). A topological sorting algorithm for large
graphs. Journal of Experimental Algorithmics, 17(1), 3.1. doi:10.1145/2133803.2330083
Digitale, J. C., Martin, J. N., & Glymour, M. M. (2021). Tutorial on directed acyclic graphs.
Journal of Clinical Epidemiology. doi:10.1016/j.jclinepi.2021.08.001
Gowthaman, A., & Sumathi, M. (2015). Performance study of enhanced SHA-256 algorithm.
International Journal of Applied Engineering Research, 10(4), 10921–10932. Retrieved
from https://www.researchgate.net/publication/283517888
College of Information Technology
29
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
APPENDICES:
College of Information Technology
30
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
College of Information Technology
31
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
College of Information Technology
32
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
College of Information Technology
33
UNIVERSITY OF NEGROS OCCIDENTAL – RECOLETOS
COLLEGE OF INFORMATION TECHNOLOGY
#51 Lizares St, Bacolod, 6100 Negros Occidental
CURRICULUM VITAE
Personal Information
Name: Emil Claude A. Villegas
Date of Birth: September 08, 2023
Program: 2nd Year, BSCS
Email: [email protected]
Areas of Interest: Backend
Personal Information
Name: Cristeto III M. Turiano
Date of Birth: November 27, 2004
Program: 2nd Year, BSCS
Email: [email protected]
Areas of Interest: Documentation
College of Information Technology
34