EduContrib: Streamlining Student Submissions
EduContrib: Streamlining Student Submissions
GREENWICH
COMP1640 – Enterprise
Web Software
Development
First and foremost, we express our sincere appreciation to our esteemed mentor, Mr. Doan Dinh
Ho, whose guidance, wisdom, and unwavering commitment have been instrumental in shaping
the vision and direction of EduContrib. His expertise and leadership have inspired us to strive for
excellence and to navigate through challenges with confidence.
We would like to acknowledge the invaluable contributions of our dedicated team members:
Chau Van Phuc, Huynh Hoang Khang, Vo Thi Nha Dam, and Le Anh Thu. Each member has
played a crucial role in their respective capacities as Developer (Back-end), Developer (Front-
end), Tester, and Designer. Their expertise, creativity, and tireless effort have been the driving
force behind the development and refinement of EduContrib.
We are deeply grateful to the University of Greenwich (United Kingdom) for their generous
support and resources, which have enabled us to turn our vision of EduContrib into reality. Their
commitment to fostering innovation and academic excellence has been pivotal in our journey.
Finally, as the Scrum Master of the team, I would like to express my gratitude to my fellow team
members for their collaboration, dedication, and resilience throughout the project. Together, we
have overcome challenges, celebrated successes, and grown both personally and professionally.
To everyone who has contributed to the realization of EduContrib, whether through guidance,
support, or encouragement, we offer our sincerest thanks. Your belief in our vision and your
unwavering support have been the cornerstone of our success.
Ngo Diem My
Built upon Visual Studio, utilizing ASP.NET framework, and SQL Server for database
management, EduContrib ensures robustness and scalability to meet the demands of an academic
environment. Leveraging GitHub as a version control platform and Google's collaboration tools
for seamless communication among team members, EduContrib embodies modern software
development practices.
EduContrib encompasses essential features such as role-based access control, submission system
for various media types, review and feedback mechanisms, and publication management. In
addition, EduContrib introduces innovative features like real-time chat support between students
and assistance providers, fostering direct and immediate communication channels.
The successful implementation of EduContrib not only fulfills the specified requirements but
also integrates additional functionalities to enrich the user experience. With its comprehensive
feature set, EduContrib exemplifies the integration of cutting-edge technologies with
pedagogical objectives, paving the way for enhanced student participation and academic
excellence.
Through EduContrib, led by the "HighFive" team, the project aspires to create a dynamic and
collaborative environment that fosters creativity, facilitates knowledge sharing, and ultimately
enriches the university experience for all stakeholders. With a clear vision and unwavering
dedication, the EduContrib project sets out to redefine the way student contributions are
collected, managed, and celebrated within the academic community.
The Development Team (Table 3.1), comprising Châu Văn Phúc, Huỳnh Hoàng Kháng, Võ Thị
Nha Dam, and Lê Anh Thư, was responsible for executing the tasks. The team adhered to key
Scrum ceremonies including Sprint Planning, Daily Stand-ups, Sprint Review, and Sprint
Retrospective, which facilitated continuous communication and refinement of the project
approach. These events fostered a culture of continuous feedback and adaptation, enabling the
team to tackle challenges promptly and maintain a steady pace of development (Rubin, 2012).
Table 3.1Development Team and Roles in the EduContrib Project
Implementation of Sprints:
The adoption of Scrum enabled the EduContrib team to effectively manage complexities and
uncertainties inherent in software development. By dividing the project into manageable Sprints,
the team could prioritize work, adapt to changes swiftly, and ensure continuous progress. The
clear roles, ceremonies, and artifacts defined by Scrum fostered team accountability,
transparency, and collaboration, directly contributing to the project's successful outcome.
Through a blend of effective Agile Scrum practices, strategic planning, and adaptive risk
management, the "HighFive" team adeptly navigated the development of EduContrib. By
championing flexibility, continuous improvement, and stakeholder engagement, the project
exemplified the profound impact of Agile methodologies on fostering collaborative, efficient,
and high-quality software development environments.
Based on the user stories, High-five designed use case diagrams according to the requirements of
each user type (it is presented in detail in 4.5.11 section). The following is a collection of the
main functions of the system.
Administrators need capabilities for managing user accounts, setting critical deadlines
(closure day and final closure day), and updating terms and conditions to ensure the
system's operational efficiency and compliance.
Users require functionalities for logging in/out and viewing publicly available articles,
aligning with basic access and information retrieval needs.
Students are provided with a comprehensive set of features, including article submission,
multimedia file uploads, receiving notifications, reviewing edit histories, and interacting
with feedback mechanisms. These functionalities are designed to enhance the user
experience and encourage active participation.
Delivering an intuitive and user-friendly interface to facilitate ease of use across diverse
user groups.
Ensuring system compatibility with various devices, enhancing accessibility and user
engagement.
Adhering to ISO/IEC 27001 standards for system security, safeguarding user data and
system operations.
Model: The data layer, or Model in MVC architecture, was meticulously designed, as depicted
in the Entity-Relationship Diagram (ERD), which includes entities such as Users, Contributions,
Messages, and Roles. Each entity was crafted to ensure data integrity and to facilitate complex
queries that the system might need. This data-centric design is pivotal for the system’s core
functionalities, such as user management, submission processes, and the storage of articles and
associated metadata.
View: The View component is concerned with the user interface (UI) and user experience (UX)
design. It was created with a strong emphasis on usability, ensuring that the platform is intuitive
and accessible across various devices and platforms, adhering to responsive design principles.
This focus on a seamless user interface is in response to the non-functional requirement of an
intuitive and user-friendly interface, vital for maintaining user engagement (Norman & Nielsen,
2010).
Controller: Serving as the intermediary between the Model and the View, the Controller handles
user input and utilizes models to retrieve data that views need to render the UI. The controllers in
EduContrib are optimized to handle requests efficiently, thus ensuring high performance and a
responsive user experience.
The MVC-driven design of EduContrib thus illustrates a cohesive structure that is not only
efficient in terms of data management but also provides a fluid and engaging user experience,
ultimately aligning with the agile principles of user-centered development.
4.3 Database
4.3.1 Security
The database's security was essential. Information about employees and students is kept on the
user table. Therefore, the necessary steps have been taken to guarantee the confidentiality and
integrity of this sensitive data. We use MD5 encryption to ensure the confidentiality and integrity
of sensitive data stored in the user table within the database.
The "User" table does not store any plain-text passwords, instead, the program generates MD5
hashed passwords that are compared to the user's login attempt (Figure 4.1). If both matches, the
user is granted access to the program. This approach ensures that even in the event of a security
breach, user credentials will remain safe and secure. The reason being user accounts cannot be
compromised as the hashed passwords are not reversible to plain-text passwords. Thus, attackers
cannot use user credentials to gain unauthorized access to the system.
Making sure the user's most recent login date and time would appear on their subsequent login is
a crucial illustration of this and a requirement (Figure 4.2). The best datatype to use in this
situation was a Datetime datatype since it stores the data in the most sensible format, which is
determined by the application, and displays the pertinent information clearly and concisely,
guaranteeing that all of the data in this column is formatted consistently.
The RoleID indicates the user's role in the magazine system. Different RoleIDs grant access to
specific areas of the application. For instance, RoleID = 1 represents the Guest role, allowing
access only to guest pages and tasks associated with it. On the other hand, RoleID = 4 signifies
the Admin role, granting access to admin pages and tasks.
Teachers, identified by their FacultyID, can view, comment on, and approve articles uploaded by
their faculty members. Similarly, the marketing manager can review all approved articles and
grant guest role access. However, guest accounts are restricted to viewing contributions relevant
to their FacultyID. For example, an IT faculty guest account (FacultyID=1) can only view
contributions made by IT students.
Using foreign keys also allows for adding other capabilities, such as multiple picture uploads. A
magazine upload has its separate primary key, and the facts connected to the contribution, e.g.,
title, file path, and whose user submitted it, are saved in the "Contributions" table – as such, this
column is set to auto increment to ensure no duplicate clashes arise. A second table named
"imgFile" is linked to the contributions table using a foreign key, which references the primary
key of the contribution table, which means that numerous photos can belong to the same
contribution. A third table, which stores magazines from donations named "magazine," is
likewise linked to the contributions table using a foreign key. Similarly, the database will
allocate several comments to a magazine piece.
Validation:
Users log in and obtain access to the program using their email address; this will be unique to an
individual - an email address cannot exist twice, making it a suitable means to identify and
ensure this element within the database: a UNIQUE key is utilized on the email column. Again,
this relates to guaranteeing that the table can only take ‘good’ data, allowing an email address to
exist only once.
Throughout the project, we prioritized color consistency and closely followed client
specifications. This meticulous attention to detail ensured our website design aligned with
HTML5 standards, promoting modern professional web development practices and cross-
platform compatibility. By utilizing frameworks, we accelerated development, enhanced
performance, simplified maintenance, and delivered a visually appealing user interface. (Richter
& Cornford, 2013).
The "HighFive" team's approach to web design exemplifies a user-centered philosophy, blending
innovative visual design with technical excellence to create a website that is both attractive and
highly functional. Below will be a discussion of how High-Five Team designed in the
EduContrib project.
By adopting responsive design principles, the "HighFive" team ensured that EduContrib was
built with a future-proof foundation, capable of adapting to new devices and screen dimensions,
thereby maximizing the reach and impact of the platform.
3
1 2
Figure 4.5 Responsive design in EduContrib
Usability
The website development project involves front-end design and back-end code structure, with
front-end design focusing on user interface and experience, while back-end code structure
manages the database, handles front-end requests, performs logical functions, and ensures system
security. The responsive design ensures the website is user-friendly and platform-independent,
compatible with all screen sizes and browsers, making it accessible to users regardless of their
device.
EduContrib system is tested on multiple devices with different screen sizes. The list of devices
(Figure 4.4) mentioned below has responsive layout screenshots. Mobile developer tool are used
as emulation.
Accessibility
"EduContrib" is developed with a strong emphasis on accessibility to ensure that all users,
regardless of ability, can navigate and interact with the website effectively. The design
incorporates high-contrast text and a layout that accommodates assistive technologies such as
screen readers. The platform adheres to the Web Content Accessibility Guidelines (WCAG),
which provide a framework for making web content more accessible to people with disabilities
(Caldwell et al., 2008).
Maintainability
Reusability
In the realm of software engineering, reusability is the measure of the ease with which
components can be reused in other applications or scenarios. "EduContrib" has been engineered
with reusable code at its foundation, employing modular design patterns that allow
functionalities to be repurposed across different parts of the application without significant
changes. This not only streamlines the development process but also reduces the overall cost and
time-to-market for new features. By leveraging reusability, "EduContrib" sets itself up for
sustainable growth and the ability to rapidly respond to the ever-changing landscape of
educational technology (Gamma et al., 1994).
Use of Bootstrap
In statistical methods, the bootstrap technique offers a modern approach to estimate uncertainties
like standard errors and confidence intervals. It works well even without traditional assumptions
like normal distribution, making it a versatile and reliable choice for analyzing data (Efron,
1979).
For the EduContrib project, the team chose the Bootstrap framework to craft a responsive design.
This means the website adjusts smoothly to fit screens from phones to desktops, making sure
everyone gets a good view and easy access, no matter their device (Otten, 2015).
Performance Optimization: Understanding that user retention and satisfaction are heavily
influenced by the platform's responsiveness and speed, performance optimization was prioritized.
Techniques such as minifying CSS and JavaScript files, optimizing database queries, and
implementing lazy loading for media content were employed. These methods reduce the amount
Security Measures: With cybersecurity threats on the rise, ensuring the security of user data and
interactions on "EduContrib" was paramount. Advanced encryption protocols for data
transmission, secure hash algorithms for storing passwords, and regular security audits were part
of the project's security strategy. Additionally, the implementation of Content Security Policy
(CSP) headers and rigorous input validation mechanisms protected against common
vulnerabilities such as cross-site scripting (XSS) and SQL injection attacks.
Cross-Browser Compatibility: To ensure that "EduContrib" is accessible from any device and
browser, extensive testing for cross-browser compatibility was conducted. This included the use
of polyfills and CSS prefixes to ensure that modern web features work seamlessly across older
browsers, thus broadening the platform's reach and ensuring a consistent experience for all users,
regardless of their choice of browser.
Accessibility and Inclusivity: Following the Web Content Accessibility Guidelines (WCAG) 2.1,
"EduContrib" was designed to be fully accessible to users with disabilities. This involved the
strategic use of ARIA (Accessible Rich Internet Applications) roles, ensuring keyboard
navigability, providing alternative text for images, and designing with color contrast sensitivity
in mind. These efforts made the platform more inclusive, aligning with the principle that digital
educational resources should be accessible to all members of the academic community.
User Feedback Integration: Recognizing the value of user input, the development process
incorporated mechanisms for collecting and integrating user feedback. This iterative approach
allowed for the continuous refinement of "EduContrib," ensuring that the platform evolved in
response to the needs and preferences of its end-users. Surveys, usability testing sessions, and
feedback forms provided invaluable insights that informed design and functionality
enhancements.
The image (Figure 4.6) below shows our sitemap and how we Workflow practices have been
effective. Workflow practices have been effective.
Mobile Design
Below mentioned home page view used Wireframe to prototype the information structure. The
layout is designed for mobile devices
(Figure 4.7) is the mobile device's homepage interface. Includes a branding section, a drop-down
navigation bar that serves as a table of contents to list the main functional pages, and finally a
footer
(Figure 4.8) is the mobile device login page interface. Display username and password fields in
the frame as shown below.
(Figure 4.9) is the design interface with a screen size of 7.9 inches viewed in landscape mode.
When switching to portrait view, the screen will look like the view on mobile devices.
Desktop Design
The desktop design has a login page and home page that are similar in size to the ipad view
(Figure 4.10) allows students to upload contributions. Students will fill in the title box, journal
and brief description for the article, then click upload with photo and word file, accept the terms
and submit.
Figure 4.15 "Role-Based Access Control: 404 Error for Unauthorized Page Request.
Team High-Five 26
The Page New Contributions feature (Figure 4.9) is designed to offer real-time updates for newly
submitted articles, providing administrators and coordinators with immediate visibility of fresh
content. This not only enhances the dynamism of the platform but also enables timely feedback
and interaction with contributors (Sharp et al., 2007).
Figure 4.17 Simulating the successful new Contributions feature of students' Article.
Figure 4.18 Simulating the successful Email Notification feature of students' Article.
Team High-Five 27
4.5.6 Set Closure Day and Final Closure Day
This function (Figure 4.17) allows administrators to define crucial deadlines within the system.
The 'closure day' marks when students must submit their contributions, while the 'final closure
day' indicates the last opportunity for any edits. Establishing these clear timelines is essential for
maintaining a structured editorial process and ensuring the magazine's timely publication.
Figure 4.19 Simulating the Set Closure Day and Final Closure Day feature of students' article
Figure 4.20 Simulating the Set Closure Day and Final Closure Day feature of students' article
Team High-Five 28
4.5.8 Send and Receive Feedback on Articles
The feedback loop between coordinators and students is a vital component for the iterative
improvement of article quality (Figure 4.19). Coordinators can send constructive feedback on
submissions, and students can receive and act on this feedback, a process central to the
educational value of the magazine project, enhancing learning and development.
Figure 4.21 Send and Receive Feedback on Articles feature of students' article
Each of these features was detailed through user stories, establishing clear and actionable criteria
that guided the development process. Through this user-centric approach, the team ensured that
the functionalities of EduContrib were aligned with the users' needs, making the platform both
practical and user-friendly.
This comprehensive requirements analysis ensured that EduContrib was designed with a clear
understanding of end-user needs, setting the stage for a secure, interactive, and highly functional
platform.
Team High-Five 29
Figure 4.22 Simulating the Statistics feature on the admin page
These reporting tools not only aid in the efficient management of the submission process but also
provide valuable data for evaluating the success of the magazine initiative and identifying areas
for improvement.
Figure 4.23 Simulating Tracking User Session Information feature on the admin page
Team High-Five 30
4.5.11 UML diagrams
The Unified Modeling Language (UML) diagrams are instrumental in visualizing and
documenting the design and functionality of the "EduContrib" system. UML diagrams offer a
standard way to outline the system's structure and behavior, providing a clear and comprehensive
picture of the system from various angles.
Use case diagrams are essential in defining the interactions between users (actors) and the
system. They describe the system's functional requirements in the context of user goals, showing
all the possible sequences of interactions. In "EduContrib," the use case diagrams would
encapsulate the functionalities for Guests, Students, Coordinators, Marketing, and Admin roles,
as seen in the previously shared diagrams. These diagrams help in understanding the user-
specific features such as login, manage contributions, send feedback, view statistics, and manage
accounts.
Guest Use Case Diagram (Illustrated in figure 4.22): This use case diagram illustrates the
interactions a guest user can have with a website. A guest can view articles and statistics, which
are primary actions. The 'Login' use case is marked as an inclusion (<<include>>), indicating
that a guest must log in to access further functionalities beyond just viewing. There’s also a
'Logout' option, suggesting that if a guest logs in, they can later log out. Essentially, this diagram
maps out what a guest can do without creating an account, and how they can transition to a
logged-in state to access more features.
Student Use Case Diagram (Illustrated in figure 4.23): This use case diagram depicts a student's
possible actions within a system. After logging in, which is a central action, the student can
manage contributions—this includes adding, editing, deleting, and downloading content, which
Team High-Five 31
is marked as an extension (<<extend>>), indicating it’s a conditional or optional action. The
student can also view statistics and chats, and send feedback or emails, which are included as
part of the login session. Logging out is another option, returning the student to a non-
authenticated state. The diagram effectively maps the student’s journey from login to performing
various tasks within the system.
Coordinator Use Case Diagram (Illustrated in figure 4.24): This use case diagram outlines the
functionalities available to a 'Coordinator' within a system. After logging in, the Coordinator has
several options:
Manage Contributions: This is the core activity, with extended functionalities that
include approving or rejecting articles and downloading contributions.
Send Feedback: It’s an included part of managing contributions, where the Coordinator
can communicate directly with the contributors.
View Chat and View Statistics: These options suggest that the Coordinator can interact
with users via chat and review data analytics to gain insights into user behavior and
content performance.
Logout: The Coordinator can log out of the system, which would presumably return
them to a guest or non-logged-in state.
Team High-Five 32
Figure 4.27 Coordinator Use Case Diagram
Team High-Five 33
Marketing Use Case Diagram (Illustrated in figure 4.25): After logging in, the Marketing
Manager can:
Admin Use Case Diagram (Illustrated in figure 2.25): After logging in, the Admin can:
Team High-Five 34
Manage Faculty: This involves tasks such as adding, deleting, and editing faculty
details, with the ability to view detailed records.
Manage Account: Similar to managing faculty, but focused on user accounts, this
includes creating and modifying user details.
Manage Role: The Admin can view roles, likely with additional capabilities to modify
them as needed.
Manage Magazine: This includes adding new issues, editing existing ones, or deleting
them, with the ability to display detailed information about each magazine.
View Statistics: The Admin can view various statistics, which likely include user
engagement, contribution metrics, and more.
Logout: Finally, the Admin can log out, ending the session securely.
In this ERD (Figure 4.27), we have several entities like Users, Roles, Faculties, Contributions,
Messages, and more, each representing a different type of data stored in the system.
Team High-Five 35
Users are at the center, connected to various functionalities such as Roles, indicating what
actions they can perform, and Faculties, which could represent their affiliation or department
within the university.
Contributions is linked to Users, suggesting that users can create or submit content, which can
then be further detailed in entities like ImgFile for image uploads, and featured in the Magazine
entity, which could represent published editions of the magazine.
Messages seem to enable communication between users, while Comments provide a way to give
feedback on Contributions.
LastLogin and Security are likely tracking user session information and security measures,
respectively.
Each of these connections is designed to ensure data integrity and define the relationships, like
who can send or receive messages, what contributions can be made, and how the various
elements of the platform interact with one another. This ERD is essential for developers to
understand how to build the database and the relations that need to be maintained within the
application.
Code Snippets 1 (Figure 4.28): Password hashing MD5 this code will hashing normal password
to MD5, so the system will be more security.
Code Snippets 2 (Figure 4.29): Save Contribution, after click save it will process the code and
save the contribution of the contributor to the database
Team High-Five 36
Figure 4.31 Code Snippet for Creating a New Contribution in EduContrib
Code Snippets 3 (Figure 4.30): Send Email service, this is a service it will require an email and
the token to access to the email to preform send email function such as send notification after
contributor upload file to coordinator
Code Snippets 4 (Figure 4.31): Save image into database after contributor upload their file with
image or image only.
Team High-Five 37
Figure 4.33Method for Image File Upload in EduContrib
Code Snippets 5 (Figure 4.32): his bit of code is like a helpful assistant for when you pick a
photo to upload on a website. When you choose a picture, this code quickly shows you that
picture on the page, so you can make sure it's the right one before you finish uploading it.
Team High-Five 38
5. TESTING
Aiming to create a robust application that fully meets the client's requirements, HighFive employed a parallel development and testing
process. Below is detailed information on the tested elements and the achieved results, demonstrating the application's quality and
reliability.
No. Date Feature Purpose Process Expected Result Actual Result Result
1 28/4/2024 login Check if users can log in Valid accounts, The user can As expected Pass
successfully with valid valid passwords. successfully log in and
credentials. access their account
2 28/4/2024 new Verify the student's New Enter article Student successfully As expected Pass
Contribution Contributions feature when information, upload submitted article
uploading images and files valid photos and
successfully files
3 28/4/2024 new Verify the new Contribution Do not enter enough When you click As expected Pass
Contribution feature of students when not information or leave submit, a message
entering enough information any information appears asking you to
and texting the submit button blank enter complete
information
4 28/4/2024 New Verify the student's New Enter comment and Comment successfully As expected Pass
Comment Comment feature submit
5 28/4/2024 New Verify the student's New Do not enter A message appears As expected Pass
Comment Comment feature when not comments and asking to enter a
6 28/4/2024 Edit Verify the student's edit Enter the Edited successfully As expected Pass
Contributions Contributions feature when information to be
student students want to edit edited
their posts
7 2/4/2024 Edit Verify the Student Edit Delete files or Update successful As expected Pass
Contributions Contribution feature when a images
student wants to delete a file
or image
8 1/4/2024 Edit Verify the student's edit Click the Back to Return to previous As expected Pass
Contributions Contributions feature when list button page
student students want Back
to list
9 1/4/2024 New Verify the student's New Click the Back to Return to previous As expected Pass
Contributions Contributions feature when list button page
student students want Back
to list
10 1/4/2024 Download Verify the student's Click Download Download file As expected Pass
File Download File feature File successfully
11 1/4/2024 Chat Verify that the student's Chat Input text Submitted As expected Pass
feature has been sent successfully
successfully when the student
enters the text and presses the
send button
12 1/4/2024 Chat Verifying the student's Chat Do not enter text Show notification As expected Pass
feature, sending fails when
13 1/4/2024 Statistics Verify the Student Statistics Statistics are always Show statistics screen As expected Pass
feature, indicators are always updated on the
updated when students post Home page
new articles
Table 6.2 details a series of tests conducted on specific features of Marketing Coordinator accounts on the EduContrib
platform.
Table 6.3 Feature Testing Results for EduContrib System with Marketing Coordinator Account.
No. Date Feature Purpose Process Expected Result Actual Result Result
1 Login Verify the Marketing Valid accounts, valid The user can As expected Pass
30/3/2024 Coordinator login passwords. successfully log in
feature, when the and access their
Coordinator logs in account
with a valid account
2 Login Verify Marketing Enter the correct Displays the message As expected Pass
30/3/2024 Coordinator login password and leave the "Please, Enter Email"
feature, when the user username blank
leave the username
blank and click sign-in
3 Login Verify Marketing Enter the correct Displays the message As expected Pass
30/3/2024 Coordinator login username and enter the "Please, Enter
4 30/3/2024 View Ensure Marketing Navigate to the Manage Detailed information As expected Pass
Contribution Coordinator can view Contributions section. about the contribution,
Details detailed information including submission
about contributions. Select the contribution to date, contributor
view details. name, and content,
should be displayed.
6 30/3/2024 Reject Ensure Marketing Navigate to the Manage The contribution As expected Pass
Contribution Coordinator can reject Contributions section. status should change
contributions. to "Rejected" and the
Select the contribution to contributor should be
reject. notified.
Click on the "Reject"
button.
7 30/3/2024 Download Verify Marketing Navigate to the Manage Download file As expected Pass
file Coordinator's file Contributions section. successfully
download feature when
Table 6.3 details a series of tests conducted on specific features of Marketing Manager accounts on the EduContrib
platform.
Table 6.4 Feature Testing Results for EduContrib System with Marketing Manager Account.
No. Date Feature Purpose Process Expected Result Actual Result Result
1 1/4/2024 Highlight Ensure the Marketing Navigate to the homepage The selected As expected Pass
Selected Manager can highlight highlighting section. submissions should
Submissions selected submissions on be prominently
the magazine's homepage. Select submissions to displayed on the
highlight. magazine's
Save the selections. homepage.
2 1/4/2024 Download Ensure the Marketing Click the download file Downloaded As expected Pass
file Manager can download button successfully
any contributions
3 1/4/2024 Download Ensure the Marketing Click the download all file Downloaded As expected Pass
all Manager can download all button successfully
contributions
No. Date Feature Purpose Process Expected Result Actual Result Result
1 1/4/2024 Manage The new account Navigate to the Manage Account The new account As expected Pass
Account: should be section. should be
Create New successfully successfully
Account created and added Select the option to create a new created and added
to the system. account. to the system.
Fill in the required information for
the new account (e.g., username,
email, password, role).
2 1/4/2024 Manage Ensure the Admin Navigate to the Manage Role The new role As expected Pass
Role: can create a new section. should be
Create New user role. successfully
Role Select the option to create a new created and added
role. to the system.
Define the permissions and
privileges for the new role.
4 1/4/2024 Manage Ensure the Admin Navigate to the Manage Rule The new rule As expected Pass
Rule: can create a new section. should be
Create New system rule. successfully
Rule Select the option to create a new created and added
rule. to the system.
Define the conditions and actions
for the new rule.
5 1/4/2024 Manage Ensure the Admin Navigate to the Manage Rule The selected rule As expected Pass
Rule: Edit can edit an existing section. should be
rule user rule. successfully
Select the rule to be edited. updated with the
Modify the permissions and modified
privileges as needed. permissions.
6 1/4/2024 Manage Ensure the Admin Navigate to the Manage Faculty The new faculty As expected Pass
Faculty: can create a new section. should be
7 1/4/2024 Manage Ensure the Admin Navigate to the Manage Faculty The selected As expected Pass
Faculty: can edit an existing section. faculty should be
Edit Faculty faculty. successfully
Select the faculty to be edited. updated with the
Modify the details as needed. modified details.
8 1/4/2024 Manage Ensure the Admin Navigate to the Manage Magazine The new As expected Pass
Magazine: can create a new section. magazine issue
Create New magazine issue. should be
Magazine Select the option to create a new successfully
Issue magazine issue. created and added
Provide necessary details for the to the system.
new issue (e.g., title, publication
date).
9 1/4/2024 Manage Ensure the Admin Navigate to the Manage Magazine The selected As expected Pass
Magazine: can edit an existing section. magazine issue
Edit should be
Table 6.5 details a series of tests conducted on specific features of Guset accounts on the EduContrib platform.
Table 6.6 Feature Testing Results for EduContrib System with Student Account.
No. Date Feature Purpose Process Expected Result Actual Result Result
1 2/4/2024 View Ensure guests Look for the option to The guest should be redirected As expected Pass
Magazine can access the access the magazine to the magazine homepage.
Homepage: magazine homepage.
Access homepage.
Magazine Click on the link or
Homepage button to access the
magazine homepage.
2 2/4/2024 Guest This test case Open the web browser The login page of the As expected Pass
Account verifies the and navigate to the "EduContrib" system is
Access functionality of login page of the displayed.
guest account "EduContrib" system.
access to the The guest enters the provided
"EduContrib" Enter the guest guest account credentials
system. account credentials correctly.
(username and
password) into the Upon clicking the "Login"
button, the system should grant
3 2/4/2024 Guest This test case The guest is logged The guest can access the reports
Account verifies the access into the "EduContrib" section to view selected reports
Access permissions of the system. from each faculty.
guest account in
the "EduContrib" The system homepage The guest cannot perform
system. or dashboard is actions that require contributor
displayed. or coordinator permissions, such
as submitting articles or
changing system settings.
6.2 Scope
The testing phase will focus on validating the functional requirements vital to the application. These requirements have been deduced
from the client's stipulations as well as user stories. Detailed within section 6.2.1 is a test log encompassing all features slated for
examination throughout the development process. Ensuring the successful fulfillment of these tests is imperative in meeting the
client's needs.
Student functionalities
Feature Description
Login User must be able login into the system
New Contribution User can upload multiple photos or docx and doc files to the system
Comment Users can comment on their contributions to the Coordinator of that Faculty
Table 6.7 is a quick rundown of what marketing coordinator can do on the EduContrib system
Table 6.8 Marketing Coordinator Functionalities Overview in EduContrib System.
Marketing Coordinator
Feature Description
View all contributions from Coordinator can View all contributions from their faculty.
their faculty.
Marketing Manager
Feature Description
Visibility of each faculty’s Marketing can visibility of each faculty’s contributions
contributions
Table 6.4 is a quick rundown of what admin can do on the EduContrib system
Table 6.10 Admin Functionalities Overview in EduContrib System.
Admin
Feature Description
Manage Account Admin can manage account such as: view, add, edit, and active
Manage Rule Admin can manage rule such as: view, add
Manage Faculty Admin can manage faculty such as: view, add, edit, and delete
Manage Magazine Admin can manage magazine such as: view, add, edit, and delete
Manage Security Admin can manage security such as: view, add
Table 6.5 is a quick rundown of what guset can do on the EduContrib system
Table 6.11 Guest Functionalities Overview in EduContrib System.
Guest
Feature Description
View Guest can view all contributions published
The feedback collected highlighted the user appreciation for the system’s intuitive navigation
and the efficiency of the new submission process. Constructive criticisms were received
regarding the desire for more interactive elements within the chat feature and a more detailed
dashboard for statistics. These insights informed the iterative development process, allowing for
continuous refinement of the platform.
The evaluation showed a high degree of requirement fulfillment with all core functionalities such
as login, contribution submissions, and file downloads meeting the established criteria. The
additional features, such as the chat and statistics modules, exceeded initial expectations,
offering expanded capabilities. Nevertheless, the feedback pointed towards areas for
improvement, which included enhancing real-time interactivity and providing more granular
control over notification settings.
Through both structured user feedback and rigorous quality evaluation, the EduContrib team was
able to confirm the platform’s alignment with user needs and its readiness for broader
deployment. These evaluations were not only crucial for validating the product’s quality but also
served as a roadmap for ongoing enhancements, underlining the project’s commitment to
delivering a continually evolving and user-focused platform.
Enhance the real-time functionality of the chat feature to increase engagement and
immediacy in communication between students and faculty.
Improve the granularity of notification settings to allow users more control over the
frequency and types of alerts they receive.
Introduce a more sophisticated analytics dashboard for both students and faculty to track
engagement and performance metrics in greater depth.
Integrate plagiarism checking feature into the system.
These enhancements aim to address user demands for a more tailored and interactive experience
and to provide administrators with more detailed insights for better decision-making (Nielsen,
2001).
Implementing these recommendations will serve not only to refine the existing functionalities of
EduContrib but also to ensure that the system continues to evolve in alignment with the needs of
its users, underpinning the "HighFive" team's dedication to delivering a dynamic and user-centric
educational platform.
This platform not only simplifies the operational aspects of contribution management but also
opens up new avenues for student engagement, making the act of contributing more accessible
and rewarding. The implementation of features beyond the initial scope, such as in-depth
statistics and a robust chat system, has significantly extended the platform’s capabilities, setting
a new standard for educational software tools.
In closing, EduContrib is more than a project; it's a vibrant ecosystem that stands to positively
influence the academic journey of its users. It is the embodiment of innovation, collaboration,
and the relentless pursuit of excellence—the core values that the "HighFive" team champions. As
EduContrib moves forward, it will undoubtedly continue to serve as a beacon of innovation in
educational technology.
DeMarco, T., & Lister, T. (2013). Waltzing With Bears: Managing Risk on Software Projects.
Dorset House Publishing.
Kerth, N. L. (2001). Project Retrospectives: A Handbook for Team Reviews. Dorset House
Publishing.
Leffingwell, D. (2011). Agile Software Requirements: Lean Requirements Practices for Teams,
Programs, and the Enterprise. Addison-Wesley Professional.
Nielsen, J. (2001). Designing Web Usability: The Practice of Simplicity. New Riders Publishing.
Rubin, K. S. (2012). Essential Scrum: A Practical Guide to the Most Popular Agile Process.
Addison-Wesley.
Leffingwell, D. (2011). Agile Software Requirements: Lean Requirements Practices for Teams,
Programs, and the Enterprise. Addison-Wesley Professional.
Norman, D. A., & Nielsen, J. (2010). Enhancing the Usability of Complex Systems. Nielsen
Norman Group.
Martin, R. C. (2008). Clean Code: A Handbook of Agile Software Craftsmanship. Prentice Hall.
Richter, J., & Cornford, J. (2013). "Web Design." Retrieved from lecture1-libre.pdf.
Caldwell, B., Cooper, M., Reid, L. G., & Vanderheiden, G. (2008). Web Content Accessibility
Guidelines (WCAG) 2.0. W3C.
Gardner, B. S., & Grigsby, J. (2011). "A Web for Everyone: Accessibility in Modern Web
Design." In Responsive Web Design by Example. Packt Publishing.
Arditi, A., & Brabyn, L. (1999). "Color and Contrast Sensitivity in the Low Vision Observer." In
Vision '99: Vision Rehabilitation: Assessment, Intervention and Outcomes. Swets & Zeitlinger
Publishers.
Lynch, P. J., & Horton, S. (2016). Web Style Guide: Foundations of User Experience Design.
Yale University Press.
Martin, R. C. (2008). Clean Code: A Handbook of Agile Software Craftsmanship. Prentice Hall.
Gamma, E., Helm, R., Johnson, R., & Vlissides, J. (1994). Design Patterns: Elements of
Reusable Object-Oriented Software. Addison-Wesley.
Efron, B. (1979). "Bootstrap Methods: Another Look at the Jackknife." Annals of Statistics, 7(1),
1-26.
Ferraiolo, D. F., & Kuhn, D. R. (1992). Role-Based Access Controls. Artech House.
Sharp, H., Rogers, Y., & Preece, J. (2007). Interaction Design: Beyond Human-Computer
Interaction. Wiley.