busi732 / Team-2-2024Fall

This is a project repository for Team 2 members in BUSI 732 Quantitative Research, 2024Fall
0 stars 3 forks source link

ADR on Guobi #24

Open rr-85 opened 1 week ago

rr-85 commented 1 week ago

Objective
Document the decision to use Gurobi as the primary optimization library for the project by comparing its features, performance, and capabilities with other libraries such as SciPy and PuLP. This ADR will provide a well-reasoned justification for the selection and serve as a reference for future decisions.


User Story

As a data scientist,
I want to evaluate Gurobi against SciPy and PuLP for optimization tasks,
so that I can select the most suitable library for solving the project’s optimization problems efficiently while meeting scalability and performance requirements.


INVEST Criteria

  1. Independent
    The task of evaluating and documenting the decision for the optimization library is independent of other modeling or implementation tasks and can be completed in isolation.

  2. Negotiable
    The comparison criteria (e.g., performance, ease of use, scalability, licensing) and the final decision can be adjusted based on team input and project constraints.

  3. Valuable
    A clear and well-documented ADR ensures that the chosen library aligns with project needs, reducing implementation risks and providing transparency for stakeholders.

  4. Estimable
    The task involves well-defined steps:

    • Research and test Gurobi, SciPy, and PuLP.
    • Compare their features, performance, and usability.
    • Document the findings and rationale for the decision.
  5. Small
    The task is scoped to focus solely on the decision-making process for the optimization library, ensuring it can be completed within a sprint.

  6. Testable
    The ADR will be validated by:

    • Ensuring the decision is based on objective criteria and test results.
    • Confirming that the chosen library meets the project’s requirements.
gibby-ci commented 4 days ago

@rr-85 try to put in a user story format. using INVEST method.