Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Investigate cog/over outside base years #3903

Closed
jadudm opened this issue May 29, 2024 · 4 comments
Closed

Investigate cog/over outside base years #3903

jadudm opened this issue May 29, 2024 · 4 comments
Assignees
Labels

Comments

@jadudm
Copy link
Contributor

jadudm commented May 29, 2024

A question has been asked about the cog/over algorithm.

Specifically, the question is: are we handling assignments outside of base years correctly?

The flow, as-is, is shown below. (The flow was previously expressed as a Mural; this is a Mermaid transcription, which would allow us to put it under version control.)

flowchart TD
    classDef startClass fill:#000,stroke:#CCC,color:#FFF
    classDef endClass fill:#000,stroke:#CCC,color:#FFF
    classDef info fill:#F4D03F,stroke:#CCC
    classDef question fill:#F39C12,stroke:#CCC
    classDef overInfo fill:#AED6F1,stroke:#CCC
    classDef cogInfo fill:#F5B7B1,stroke:#CCC
    
    A(Start):::startClass --- B[Record is <br />submitted to the FAC]
    B:::info --> C{Total expenditure <br />less than <br />or equal to $50M?}
    C:::question
    C -->|YES| O1
    C -->|NO| C0
    subgraph Oversight
    O1[Determine Oversight]:::overInfo
    O2:::question
    O1 --> O2
    O2{Does record have\nDA expenditures?}
    O2 -->|NO| O4
    O2 -->|YES| O3
    O4:::overInfo
    O3:::overInfo
    O3[Sum DA<br />expenditures to <br />unique ALN prefixes]
    O4[Agency with<br />predominant amount<br />of total funding\is oversight]
    O3 --> O6
    O4 --> O5[End]:::endClass
    O6:::question
    O6{Does agency<br />with largest DA<br />expenditure make up<br />at least 25%<br />of total expenditure?}
    O6 -->|YES| O8
    O6 -->|NO| O7
    O8:::overInfo
    O7:::overInfo
    O8[Agency with<br />predominant DA<br />expenditure is<br />oversight]
    O7[Agency with<br />predominant total<br />expenditure is <br />oversight]
    O8 --> O9[End]:::endClass
    O7 --> O10[End]:::endClass
    end
    subgraph Cognizance
    C0:::cogInfo
    C1:::question
    C2:::cogInfo
    C3:::cogInfo
    C4:::endClass
    C0[Determine Cognizance]
    C0 --> C1{Does<br />entity exist in<br />Cog_Ref_List}
    C1 -->|YES| C2[Listed Cog is assigned.]
    C1 -->|NO| C3[Look back at base year<br />for the submission]
    C2 --> C4(END)
    C3 --> C5{Does<br />base year <br />submission exist?}
    C5:::question
    C5 -->|NO| C6
    C5 -->|YES| C7
    C6:::cogInfo
    C7:::cogInfo
    C7[Use submission's<br />BASE YEAR<br />DA expenditure to<br />determine Cog]
    C7 --> C8
    C6[Use submission's<br />CURRENT YEAR<br />DA expenditure to<br />determine Cog]
    C6 --> C8
    C8:::question
    C8{Does record have<br />DA expenditures?}
    C8 -->|NO| C10
    C8 -->|YES| C9
    C10:::cogInfo
    C9:::cogInfo
    C10[Agency with<br />predominant amount<br />of total funding is Cog]
    C9[Sum DA<br />expenditures to<br />unique ALN prefixes]
    C9 --> C11
    C10 --> C16[End]:::endClass
    C11:::question
    C11{Does agency<br />with largest DA<br />expenditure make<br />up at least 25%<br />of total expenditure?}
    C11 -->|YES| C12 
    C11 -->|NO| C13
    C12:::cogInfo
    C13:::cogInfo
    C12[Agency with<br />predominant DA<br />expenditure is Cog]
    C12 --> C14[End]:::endClass
    C13[Agency with<br />predominant amount<br />of total expenditure<br />is Cog]
    C13 --> C15[End]:::endClass
    end
Loading

The question is, should we do the following?

1. Does a base year submission exist?

2. If NO, then we ask: was Cog assigned outside of the base year? 

2a. If NO, then use the current year DA, and continue through the flowchart.
2b. If YES, use the assignment that was made outside the base year, and END.

This would modify the cog portion of the algorithm. After modification, it would look like:

flowchart TD
    classDef startClass fill:#000,stroke:#CCC,color:#FFF
    classDef endClass fill:#000,stroke:#CCC,color:#FFF
    classDef info fill:#F4D03F,stroke:#CCC
    classDef question fill:#F39C12,stroke:#CCC
    classDef overInfo fill:#AED6F1,stroke:#CCC
    classDef cogInfo fill:#F5B7B1,stroke:#CCC
    
    A(Start):::startClass --- B[Record is <br />submitted to the FAC]
    B:::info --> C{Total expenditure <br />less than <br />or equal to $50M?}
    C:::question
    C -->|YES| O1
    C -->|NO| C0
    subgraph Oversight
    O1[Determine Oversight]:::overInfo
    O2:::question
    O1 --> O2
    O2{Does record have<br />DA exepnsidtures?}
    O2 -->|NO| O4
    O2 -->|YES| O3
    O4:::overInfo
    O3:::overInfo
    O3[Sum DA<br />expenditures to<br />unique ALN prefixes]
    O4[Agency with<br />predominant amount<br />of total funding\is oversight]
    O3 --> O6
    O4 --> O5(END):::endClass
    O6:::question
    O6{Does agency<br />with largest DA<br />expenditure make up<br />at least 25%<br />of total expenditure?}
    O6 -->|YES| O8
    O6 -->|NO| O7
    O8:::overInfo
    O7:::overInfo
    O8[Agency with<br />predominant DA<br />expenditure is<br />oversight]
    O7[Agency with<br />predominant total<br />expenditure is <br />oversight]
    O8 --> O9(END):::endClass
    O7 --> O10(END):::endClass
    end
    subgraph Cognizance
    C0:::cogInfo
    C1:::question
    C2:::cogInfo
    C3:::cogInfo
    C4:::endClass
    C0[Determine Cognizance]
    C0 --> C1{Does<br />entity exist in<br />Cog_Ref_List}
    C1 -->|YES| C2[Listed Cog is assigned.]
    C1 -->|NO| C3[Look back at base year<br />for the submission]
    C2 --> C4(END)
    C3 --> C5{Does<br />base year <br />submission exist?}
    C5:::question
    C5 -->|NO| C6a
    C5 -->|YES| C7
    C6a{Was Cog assigned<br />outside of the<br />base year?}
    C6a:::question
    C6a -->|NO| C6
    C6a -->|YES| C6b
    C6b:::cogInfo
    C6b[Use the assignment made<br />outside of the base year]
    C6b --> C6c(END):::endClass
    C6:::cogInfo
    C7:::cogInfo
    C7[Use submission's<br />BASE YEAR<br />DA expenditure to<br />determine Cog]
    C7 --> C8
    C6[Use submission's<br />CURRENT YEAR<br />DA expenditure to<br />determine Cog]
    C6 --> C8
    C8:::question
    C8{Does record have<br />DA expenditures?}
    C8 -->|NO| C10
    C8 -->|YES| C9
    C10:::cogInfo
    C9:::cogInfo
    C10[Agency with<br />predominant amount<br />of total funding is Cog]
    C9[Sum DA<br />expenditures to<br />unique ALN prefixes]
    C9 --> C11
    C10 --> C16(END):::endClass
    C11:::question
    C11{Does agency<br />with largest DA<br />expenditure make<br />up at least 25%<br />of total expenditure?}
    C11 -->|YES| C12 
    C11 -->|NO| C13
    C12:::cogInfo
    C13:::cogInfo
    C12[Agency with<br />predominant DA<br />expenditure is Cog]
    C12 --> C14(END):::endClass
    C13[Agency with<br />predominant amount<br />of total expenditure<br />is Cog]
    C13 --> C15(END):::endClass
    end
Loading

This ticket is to track the investigation of whether or not this update to the cog/over assignment algorithm is the right thing to do.

@jadudm jadudm added this to FAC May 29, 2024
@jadudm jadudm converted this from a draft issue May 29, 2024
@jadudm jadudm self-assigned this May 29, 2024
@jadudm jadudm added the product label May 29, 2024
@jadudm
Copy link
Contributor Author

jadudm commented May 31, 2024

This is now blocked pending further conversation with OMB.

@jadudm jadudm moved this from In Progress to Blocked in FAC May 31, 2024
@danswick
Copy link
Contributor

One note from OMB: we need to clearly delineate the process difference between base years and non-base years.

@jadudm
Copy link
Contributor Author

jadudm commented Sep 24, 2024

@danswick , I'm going to unassign me from this ticket, because it is not clear that I'm driving the work on it? However, we can re-add me at any time (including right away).

@jadudm jadudm removed their assignment Sep 24, 2024
@danswick danswick self-assigned this Oct 25, 2024
@danswick danswick moved this from Blocked to In Progress in FAC Nov 4, 2024
@sambodeme sambodeme mentioned this issue Dec 3, 2024
18 tasks
@danswick
Copy link
Contributor

danswick commented Dec 4, 2024

I think the intent of this ticket is covered in other cog/over tickets. We can/should come back here to reference the flowchart once we're ready to create public docs!

@danswick danswick closed this as completed Dec 4, 2024
@github-project-automation github-project-automation bot moved this from In Progress to Done in FAC Dec 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: Done
Development

No branches or pull requests

2 participants