Professional Documents
Culture Documents
Unit Testing
Unit Testing
I have selected the Agile methodology for the development of the FU-EduNext system at FPT University.
Reasons for Choosing Agile:
Flexibility in Requirement Changes: Agile is suitable for projects like FU-EduNext where the
needs and demands might shift during the development stages.
Focus on End-User Feedback: Agile places importance on consistent feedback from end-users,
essential due to the varied requirements of lecturers, students, and staff.
Swift Project Turnaround: Agile's incremental model aids in quick development and release,
meeting the project's stringent timeline ranging from 3 to 9 months.
Emphasis on Teamwork and Regular Interaction: Agile underlines the significance of team
collaboration and ongoing dialogue, key for a multidisciplinary development team.
Ongoing Refinement: Agile supports ongoing refinement of the product, processes, and
methodologies, assuring outcomes of superior quality that meet managerial standards.
2.
Unit Testing:
Phase: This is the primary, foundational stage of testing.
Responsibility: Conducted by the developers themselves, this process involves testing each
component or code segment to confirm its accuracy and functionality.
Integration Testing:
Phase: Conducted after unit testing.
Executors: This stage can be managed by the developers or a dedicated team focusing on
integration testing. It aims to assess the interactions and interfaces between combined units or
modules for any inconsistencies or faults.
System Testing:
Level: A more advanced stage that follows integration testing.
Conducted By: Typically handled by an independent Quality Assurance (QA) team. This
comprehensive testing evaluates the entire integrated system against its defined requirements.
Acceptance Testing:
Stage: The concluding phase before the system is officially launched.
Responsible Parties: Performed by the end-users, like lecturers, students, and academic staff, or
by client representatives. The objective here is to confirm the system meets end-user needs and
is prepared for real-world deployment.
3.
Functional Requirements:
Management Tools for Lecturers: The system should provide lecturers with the capability to
organize and oversee constructive questions and group student assignments.
Student List Integration: The system needs a feature that allows lecturers to seamlessly import
student rosters either from the FAP system or through Excel files.
Group Assignment Functions: There should be a mechanism for lecturers to allocate students
into specific groups for presentations and reviews.
Presentation Review by Students: Students should be able to access and review constructive
questions, offering their insights and critically assessing the presentations of their peers or
assigned groups.
Non-Functional Requirements:
Data Security Measures: The system must prioritize the protection and privacy of user data,
especially when interfacing with the university's Gmail-based communication systems.
System Efficiency and Dependability: It is critical for the system to demonstrate high efficiency
and dependability, managing numerous simultaneous user interactions without noticeable lags
or disruptions.
5
Test Case for Managing Constructive Questions and Student Groups by Lecturers:
Goal: Verify lecturers' ability to effectively create, modify, and handle constructive questions and student
groups.
Procedure:
Sign in with lecturer credentials.
Go to the 'Questions and Groups Management' area.
Formulate a new constructive question and establish a student group.
Alter the recently created question and adjust details of the group.
Expected Outcome: The system should facilitate both the creation and modification of questions and
groups flawlessly, with updates properly reflected.
6
For Lecturers: The desire is to have capabilities for crafting, accessing, and modifying
constructive questions and efficiently grouping students. The goal is to foster a dynamic, well-
organized educational atmosphere. This feature should permit customization of course material
to meet student needs, ensuring active student participation in group tasks and dialogues.
For Students: The need is to access and review constructive questions and peer presentations.
There's also a requirement to offer personal critiques and assessments of these presentations.
This functionality is intended to encourage active involvement in the educational journey,
enhance critical thinking skills, and foster productive engagement with classmates' work.
7.
1. Import Student List
• Make use of the function that divides students into review and presentation groups.
• Choose the students you want to assign from the class roster.
• Verify that certain requirements are fulfilled or that there is an equal distribution.