Skip to content

Developer Maintenance Guide

LZPxka edited this page Jan 11, 2025 · 1 revision

Developer Maintenance Guide

Project Structure

  • src/: Contains the main application code.
  • data/: Stores input files such as GIFT questions.
  • output/: Stores generated outputs such as exams and charts.

Key Files

  • everywhereCli.js: Main entry point of the CLI application.
  • questions.js: Manages question-related functionality.
  • exams.js: Handles exam generation and export.
  • contacts.js: Manages contact creation and updates.

Development Guidelines

Coding Standards

  1. Follow consistent naming conventions.
  2. Write clear and concise comments for each function.

Error Handling

  1. Validate user inputs.
  2. Provide meaningful error messages.

Known Issues

  1. Handling Answers for Essay and Matching Questions:

    • Issue: Inconsistent processing of correct and incorrect answers.
    • Improvement: Enhance the answer comparison logic.
  2. CLI Command Execution:

    • Issue: CLI does not immediately accept new commands after execution.
    • Workaround: Use Ctrl + C to terminate the current session before entering a new command.
  3. Duplicate Input Feedback:

    • Issue: User input feedback sometimes duplicates.
    • Workaround: Press Backspace to resolve temporarily.

Future Enhancements

  1. Implement a graphical user interface (GUI) for easier interaction.
  2. Expand export formats to include CSV and PDF.
  3. Introduce user authentication for better data security.

Test Plan

The Test Plan serves as a structured framework to document and verify the test cases for the software. It outlines the scenarios, objectives, and expected results to ensure that the implementation adheres to the defined Software Requirement Specifications (SRS). By executing these tests, we aim to identify potential issues and improve the overall quality of the software.

Objectives

  1. Verify that the implementation meets the defined requirements.
  2. Identify discrepancies and suggest improvements for future development.
  3. Ensure a high standard of software quality through systematic testing.

Technical Environment

The tests are conducted in a technical environment capable of running Node.js version 18 or higher. This includes any desktop operating systems such as Windows, Linux, or macOS.

How to Access the Test Plan

The full test plan, including detailed scenarios, test cases, and results, is available as a shared document. You can access it via the following link: Complete Test Plan Document.