2.04 820 Design Specifications

Embed Size (px)

Citation preview

  • 8/2/2019 2.04 820 Design Specifications

    1/241

    820 Phase 2 Design Specif icat ions

    California Depart ment of Healt h Care Services

    820 Phase 2

    Design Specif icat ions

    Document Id:

    Version: 1.3

    Date: December 9, 2009

    Project Ident i f ier: 820 Phase 2

    DHCS Project Manager: Curt is Milberger

  • 8/2/2019 2.04 820 Design Specifications

    2/241

    820 Phase 2 Design Specif icat ions

    Revision RecordDate Author Revision Change Reference

    10-01-2009 Trinity TechnologyDevelopmentTeam

    1.0 Creation

    10-20-2009 Grant Stewart 1.1 Revised Introduction

    11-09-2009 Orri Rail 1.2 Revised Business Objects

    12-09-2009 Grant Stewart 1.3 Finalized Design documents andcomments

    Review Record

    Name Position/Title Date

    O. Rail Lead Developer 10-15-2009

    P. Smith Enterprise Architect 10-15-2009

    G. Stewart Project Manager 10-20-2009

    G. Stewart Project Manager 12-09-2009

    Approval Record

    Name Position/Title Date

  • 8/2/2019 2.04 820 Design Specifications

    3/241

    820 Phase 2 Design Specif icat ions

    Table of Content s1 Introduction ................................................................................................................................... 52 System Context Diagram..............................................................................................................8

    2.1 Level 1 Context Diagram ........................................................................................................82.2 Level 2 Context Diagram ........................................................................................................9

    3 820 System Activity Diagram......................................................................................................114 Component Architecture.............................................................................................................13

    4.1 Component Diagram.............................................................................................................134.2 Sequence Diagrams .............................................................................................................17

    5 Orchestrations ............................................................................................................................205.1 ProcessAccounting ............................................................................................................... 205.2 ProcessPayment................................................................................................................... 225.3 ProcessCapition.................................................................................................................... 245.4 ProcessRemittanceAdvice.................................................................................................... 26

    6 Business Objects........................................................................................................................296.1 PaymentMgmt....................................................................................................................... 296.2 ContractMgmt........................................................................................................................ 366.3 BeneficiaryMgmt ................................................................................................................... 416.4 ReportMgmt ..........................................................................................................................466.5 RemittanceAdviceMgmt ........................................................................................................576.6 InvoiceMgmt.......................................................................................................................... 596.7 CapitationMgmt..................................................................................................................... 80

    7 Data Objects ...............................................................................................................................867.1 Contract Data........................................................................................................................877.2 Beneficiary Data....................................................................................................................887.3 Invoice Data ..........................................................................................................................89

    8 Database ....................................................................................................................................898.1 Entity Relationship Diagram..................................................................................................898.2 Table Descriptions ................................................................................................................ 91

    9 User Interface .............................................................................................................................939.1 Site Map................................................................................................................................939.2 Master Page..........................................................................................................................949.3 Master Page Layout..............................................................................................................949.4 Site Constraints.....................................................................................................................969.5 Invoice Search ...................................................................................................................... 969.6 Invoice Summary .................................................................................................................. 999.7 Pre Payment ....................................................................................................................... 1029.8 Beneficiary Search..............................................................................................................104

  • 8/2/2019 2.04 820 Design Specifications

    4/241

    820 Phase 2 Design Specif icat ions

    9.15Contract Change.................................................................................................................1279.16Contract HCP......................................................................................................................1309.17Contract Disbursement Register.........................................................................................1339.18Contract Plan-Based Payments..........................................................................................1359.19Vendor Search .................................................................................................................... 1379.20Vendor Summary ................................................................................................................ 1399.21Vendor Payment History.....................................................................................................1429.22Report Search.....................................................................................................................1459.23Reference Table Search.....................................................................................................147

    10 Network Requirements .............................................................................................................15010.1Solution Platforms...............................................................................................................15010.2Server Platforms ................................................................................................................. 15510.3Scalability, Load Balancing & Redundancy ........................................................................17410.4Security and Recovery........................................................................................................175

    Appendix A Data Dictionary.........................................................................................................17810.5Table Details ....................................................................................................................... 17810.6User Permissions................................................................................................................236

    Appendix B Process Model ......................................................................................................... 237

  • 8/2/2019 2.04 820 Design Specifications

    5/241

    820 Phase 2 Design Specif icat ions

    1 IntroductionThe purpose of this document is to provide software-level and hardware-level architecturespecifications for the 820 Phase 2project. This document identifies the new applicationsbuilding blocks (software components) and their interdependencies. These are the detailedsoftware specifications that will be used by application developers to build the 820 Phase 2application. This document also serves as an 820 technical manual for architects anddevelopers to extend and maintain the system.

    This document is divided into the following sections that define how the system will be builtfrom a Software Engineering perspective.

    Software Architecture

    Orchestrations

    Business Objects

    Data Objects

    Database Model

    User Interface

    The document also contains sections from a Network Architecture perspective, including:

    Solution and Server Platforms

    Scalability

    Security

    Backup and Disaster Recovery

    A draft of the System Administration Guide (as specified as part of this deliverable, has beencreated separately in the 820 SharePoint site; filename: Draft System Admin Guide), includes:

    System Modifications and Maintenance

    Release Management

    Transition Management

    Software and Hardware Upgrades

  • 8/2/2019 2.04 820 Design Specifications

    6/241

    820 Phase 2 Design Specif icat ions

    Key artifacts gathered during the Analysis Phase were used to support the creation of theDesign Specifications Document included the identification of Use Cases and the creation ofthe 820 Phase 2 Level One Process Model below.

  • 8/2/2019 2.04 820 Design Specifications

    7/241

    820 Phase 2 Design Specif icat ions

    The below table represents a traceability matrix from the Use Cases in the RequirementsSpecification Document to the technical sections defined in this document. The Use Caseanalysis was fundamental in guiding the design of the technical components detailed in thefollowing sections.

    Use Case Design Specification Section

    1.1 Receive and Process Enrol lment Data 2.1, 2.2, 3, 4.1, 4.2, 5.3

    1.2 Calculate Capitation 2.1, 2.2, 3, 4.1, 4.2, 5.3, 6.6, 6.7

    2.1 Generate Invoices 2.1, 2.2, 3, 4.1, 4.2, 5.3, 6.6, 7.2, 7.3

    2.2 Review and Approve Invoices 2.1, 2.2, 4.1, 4.2, 6.6, 7.2, 7.3,9.1, 9.6

    2.3 HIPP BCCTP Invoice Management 2.1, 2.2, 4.1, 5.3, 6.6, 7.2, 7.3, 9.6, 9.10

    3.1 Process Payment Files Use Case 2.1, 2.2, 3, 4.1, 4.2, 5.1, 5.2, 6.1, 6.5

    4.1 Beneficiary Management 2.1, 2.2, 4.1, 6.3, 7.2, 9.8, 9.9

    4.2 Contract Management 2.1, 2.2, 4.1, 6.2, 7.1, 9.13, 9.14

    4.3 Generate Reports 2.1, 2.2, 4.1, 6.4, 9.22

    4.4 Reference Data 2.1, 2.2, 4.1, 9.23

    4.5 HIPP BCCTP Beneficiary Management 2.1, 2.2, 4.1, 6.3, 7.2, 9.8, 9.9, 9.10

    4.6 HIPP BCCTP Vendor Management 2.1, 2.2, 4.1, 9.19, 9.20

    5.1 Process and Send 820 Transactions 2.1, 2.2, 3, 4.1, 4.2, 5.4, 6.5, 7.3,

  • 8/2/2019 2.04 820 Design Specifications

    8/241

    820 Phase 2 Design Specif icat ions

    2 System Context DiagramThe System Context Diagramrepresents all external entities that may interact with the system.The diagram is the highest level view of the system and is a good starting point to representthe system.

    2.1 Level 1 Context DiagramThe Level 1 Context Diagram provides a high level view of the 820 Phase 2 system as a singleentity and shows the flow of all external entities in and out of the system.

    Level 1 Context Diagram

    MEDSwillsend a file containing beneficiary eligibility information for the current monthsinformation and 12 historical months.

  • 8/2/2019 2.04 820 Design Specifications

    9/241

    820 Phase 2 Design Specif icat ions

    SCOwill send a file (CD102) summarizing all warrants (or payments) made out to a vendor.

    Vendorwill receive an 820 Remittance Advice representing all invoice payments for a given

    month.

    2.2 Level 2 Context Diagram

    The Level 2Context Diagram breaks the CapMan system down into smaller components, whilethe external entities stay the same. Data storage also becomes visible.

    Capitation

    MEDS

    ManagedCare User

    Non-ManagedCare User

    PaymentRecipient

    SCO

    Accounting

    Capitation File

    CD102

    CMS64

    820

    RemittanceAdvice

    Contract/Invoices

    Beneficiaries/Invoices

    UserInterface

    Payment

    RemittanceGeneration

    Beneficiaries InvoicesContracts

    Reports

  • 8/2/2019 2.04 820 Design Specifications

    10/241

    820 Phase 2 Design Specif icat ions

    Paymentrepresents the process of consuming files from Accountingand SCO. Which includesverification and matching of payment information with invoices and finally calling the 820Generation.

    Remittance Generationrepresents creating the Remittance Advice (based on invoicesprocessed within Payment). This process also manages sending the 820 file to the appropriatelocation.

    User Interfacerepresents any user interaction with managed and non-managed care users.Beneficiary, Contract and Invoice management falls under this process.

    Reportsrepresent the process of creating reports from the Invoice data storage.

  • 8/2/2019 2.04 820 Design Specifications

    11/241

    820 Phase 2 Design Specif icat ions

    3 820 System Act ivity DiagramThe 820 System Activity Diagramrepresents the workflow for the backend processing. Theflow represents the entire high level process and does not show any errors conditionprocessing. Error conditions will be addressed at a lower level in relation to the specificcomponent that handles the error. This Activity Diagram is based of the Level 1 ProcessModel (see Appendix B) from the Requirement Specification.

  • 8/2/2019 2.04 820 Design Specifications

    12/241

    820 Phase 2 Design Specif icat ions

    Shape Description

    Receive Capitation File The system will receive the capitation filecoming from MEDS.

    Load into Staging Tables The capitation file will be parsed and loadedinto a staging table.

    Calculate Capitation The parsed capitation data will be processedand calculations will be performed.

    Generate Invoices Invoices will be generated based on thecalculations.

    Approve Invoices Invoices will be approved (from the UI).

    Wait for Payments Since approved invoices will be mailed to

    accounting, the system will be an idle waitstage.

    Receive CMS64 File The system will receive CMS64files comingfrom accounting.

    Receive CD102 File The system will receive CD102 files comingfrom SCO.

    Match Invoices To Payment Payment information coming from Accountingand SCO will be matched against invoices.

    Create Payment Remittance Advice A payment remittance advice will created tosend to the vendors.

  • 8/2/2019 2.04 820 Design Specifications

    13/241

    820 Phase 2 Design Specif icat ions

    4 Component ArchitectureThis section represents the components of the system. Components are high level pieces ofcode that can either be physical (i.e. DLL) or logical (interrelated groups of code).

    4.1Component Diagram

    The component diagram's main purpose is to show the structural relationships between thecomponents of a system.

    The component diagram provides a high-level, architectural view of the system, which helpsdevelopers begin formalizing a roadmap for the implementation, and make decisions abouttask assignments and/or design. System administrators will find the component diagram usefulbecause they get a view of the logical software components that will be running on theirsystems.

  • 8/2/2019 2.04 820 Design Specifications

    14/241

    820 Phase 2 Design Specif icat ions

    business layerInvoiceMgmt

    business layer

    PaymentMgmt

    business layerCapitationMgmt

    user interfaceManagedCareUI

    orchestrationProcessCapitaion

    orchestrationProcessPayment

    orchestrationProcessAccounting

    orchestrationProcessRemittanceAdvice

    user interfaceNonManagedCareUI

    business layerContractMgmt

    business layerBeneficiaryMgmt

    business layerReportMgmt

    business layerRemittanceAdvice

    Component Diagram

    Component Type Description

    InvoiceMgmt Business This component will be responsible forgenerating and approving invoices. Thegeneration part will include performingretroactive adjustments and generatingnet-changes from previous invoices. It willprovide calculations on a beneficiary level

  • 8/2/2019 2.04 820 Design Specifications

    15/241

    820 Phase 2 Design Specif icat ions

    Component Type Description

    CapitationMgmt Business The Capitation component will beresponsible to process the beneficiary datacoming in from the monthly capitated file. Itwill handle the loading and pre-populatinginvoice data before performing thecalculations.

    ProcessCapition Orchestration This orchestration will receive and process

    the capitation file coming from MEDS. Thedata will be processed into a staging tableand then instantiate CapitionMgmttoprocess the data.

    ProcessAccounting Orchestration This component will process the CMS64file coming from Accounting. This willinclude parsing and mapping the file into astructure which will be used to call into

    PaymentMgmt.

    PaymentMgmt Business This component manages the CMS64andCD102data coming from Accounting andSCO.

    ProcessPayment Orchestration This component will process the CD102filecoming from SCO. Which includes parsing

    and mapping the file into a structure whichwill be used to call into PaymentMgmt.

    ProcessRemittanceAdvice Orchestration This component will start the process tocreate an 820 Remittance Advice when apayment file has been received. It will callinto RemittanceAdviceMgmt.

    RemittanceAdviceMgmt Business This component will receive informationfrom ProcessRemittanceAdviceand createthe 820 Remittance Advice.

    ContractMgmt Business This component manages contracts withinthe system. This will include versioning of

    t t d k i i i li d ith

  • 8/2/2019 2.04 820 Design Specifications

    16/241

    820 Phase 2 Design Specif icat ions

    Component Type Description

    NonManagedCareUI User Interface This will be a user interface componentcontaining all non managed care userinterfaces.

    ReportMgmt Business This component will manage the creationof reports.

    BeneficiaryMgmt Business This component will be part of nonmanaged care and will handle versioning ofbeneficiaries to invoices.

  • 8/2/2019 2.04 820 Design Specifications

    17/241

    820 Phase 2 Design Specif icat ions

    4.2Sequence DiagramsSequence Diagrams show how components of the 820 Phase 2 System interact with eachother. They also represent lifeline and message calls between components.

    4.2.1Invoice Generation

    ProcessCapitation CapitationMgmt InvoiceMgmt

    Calculate

    Generate

    ErrorInformation

    This sequence diagram represents how invoices will be created. The ProcessCapitationcomponent will call Calculatein the CapitationMgmtcomponent; CapitationMgmt will then callGeneratein InvoiceMgmt. CapitationMgmtwill return any error information toProcessCapitation.

  • 8/2/2019 2.04 820 Design Specifications

    18/241

    820 Phase 2 Design Specif icat ions

    4.2.2Approving Invoices

    ManagedCareUI InvoiceMgmt ReportMgmt

    Set Status

    Get Invoice Report

    Invoice Report

    This sequence diagram represents how invoices will be approved. The ManagedCareUIwillcall into InvoiceMgmtwith an invoice status, in this case Approved. The ManagedCareUIretrieves the invoice by calling ReportMgmt.

    4.2.3Generate Remit tance Advice

    ProcessAccounting PaymentMgmtProcessPayement

    ProcessCMS64

    ProcessCD102

    ProcessRemittanceAdvice

    Call ProcessRemittanceAdvice

    RemittanceAdviceMgmt

    CreateRemittanceAdvice

    InvoiceMgmt

  • 8/2/2019 2.04 820 Design Specifications

    19/241

    820 Phase 2 Design Specif icat ions

    This sequence diagram represents how the 820 Remittance Advice will be generated. TheProcessAccountingcomponent will call into PaymentMgmtto process the CMS64file. TheProcessPaymentcomponent will also call into PaymentMgmtto process the CD102file.

    Subsequently ProcessPaymentwill call ProcessRemittanceAdvicecomponent to initiate the820 Remittance Advice process. A call into RemittanceAdviceMgmtwill then gather paidinvoices from InvoiceMgmtand create an 820 Remittance Advice.

  • 8/2/2019 2.04 820 Design Specifications

    20/241

    820 Phase 2 Design Specif icat ions

    5 OrchestrationsOrchestrations control the workflow for a business process. An example of an orchestrationcould be receiving and parsing a file and then calling logic to complete a business process.The following sections are design details for the orchestration types defined in the componentdiagram (section 4.1).

    5.1ProcessAccount ingThe ProcessAccountingOrchestration will be responsible for receiving and logging the receiptof the CMS64 file from accounting and archiving the file. The orchestration will also parse theCMS64 file to match the invoice numbers within the file to the unpaid invoices within the 820Phase 2 system.

  • 8/2/2019 2.04 820 Design Specifications

    21/241

    820 Phase 2 Design Specif icat ions

    5.1.1Activit y Diagram

    Archive

    SFTP

    Receive CMS64 File

    Log CMS64 File Receipt

    Map CMS64 File Contentsagainst Unpaid Invoices

    Update Unpaid Invoice Statuseswith Claim Schedule Information

    Archive CMS64 File

    Activity Description

    Receive CMS64 FileReceive CMS64 File from external interface, instantiating aninstance of the orchestration.

    Log CMS64 File Receipt Log receipt of CMS64 File in 820 Phase 2 event log.BizTalk Map that extracts invoice information for only the 820

  • 8/2/2019 2.04 820 Design Specifications

    22/241

    820 Phase 2 Design Specif icat ions

    5.2ProcessPaymentThe ProcessPayment Orchestration will be responsible for receiving and logging the receipt of

    the CD102 file from SCO and archiving the file. The orchestration will parse the CD102 file andmatch the claim schedule numbers to any unpaid invoices.

    The orchestration will enter an exception state given the following conditions:

    If any unpaid invoices have yet to receive claim schedule numbers If there are any unpaid invoices with claim schedule numbers that are not matched with

    the CD102 file If any invoice amounts are inconsistent

    If all unpaid invoices are matched correctly, then the orchestration will start the Process820orchestration.

  • 8/2/2019 2.04 820 Design Specifications

    23/241

    820 Phase 2 Design Specif icat ions

    5.2.1Activit y Diagram

    Activity Description

    Receive CD102 FileReceive CD102 File from external interface, instantiating aninstance of the orchestration.

    Log CD102 File Receipt Log receipt of CD102 File in 820 Phase 2 event log

    G t Li t f U id I i P ll th 820 Ph 2 t t t ll id i i

  • 8/2/2019 2.04 820 Design Specifications

    24/241

    820 Phase 2 Design Specif icat ions

    Activity Description

    Exception: Invoices Do NotMatch

    System enters an exception state if invoice information isincomplete for unpaid invoices in the 820 Phase 2 system.The exception is reported to the system administrator and theorchestration instance is suspended awaiting further review.

    Update Invoice Statuses andInformation

    For all 820 Phase 2 invoices matched, update invoice withwarrant information and status to CD102 received.

    Archive CD102Archive the CD102 physical file to the pre-determined archivelocation.

    Begin Process820Begin the Orchestration to process the 820 file for all unpaidinvoices that have received the CMS64 and CD102 file.

    5.3ProcessCapit ionThe ProcessCapitationOrchestration will be responsible for receiving and logging the receiptof the MMCD Capitation files from MEDS and archiving the MMCD file. The orchestration willinvoke the business layer to create invoices based upon the beneficiaries in the capitation

    file. This orchestration is a singleton, so only one instance of the ProcessCapitationorchestration will be run at the same time.

  • 8/2/2019 2.04 820 Design Specifications

    25/241

    820 Phase 2 Design Specif icat ions

    5.3.1Activit y Diagram

    Activity Description

    Receive MMCD File

    Receive MMCD File from external interface, starting theorchestration. The orchestration receipt also validates theformat of the MMCD File.

    Log MMCD File Receipt Log receipt of MMCD File in 820 Phase 2 Event Log.Persist MMCD File intoStaging Table

    Contents of the MMCD File are persisted into staging tables inthe 820 Phase 2 database

  • 8/2/2019 2.04 820 Design Specifications

    26/241

    820 Phase 2 Design Specif icat ions

    5.4ProcessRemit t anceAdviceThe ProcessRemittanceAdvice Orchestration will be responsible for creating the 820

    Remittance Advice file upon receiving a list of paid warrants from the Process PaymentsOrchestration. This will generate XML-Formatted 820 files which are then processed by theXEngine interface to validate and transform the XML files to X12 5010 820 EDI files. TheX12 5010 820 EDI Files are then processed and sent to the external SFTP Interface to bedelivered to clients.

    820 Ph 2 D i S ifi t i

  • 8/2/2019 2.04 820 Design Specifications

    27/241

    820 Phase 2 Design Specif icat ions

    5.4.1Activit y Diagram

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    28/241

    820 Phase 2 Design Specif icat ions

    Activity Description

    Receive List of Paid InvoicesA list of paid invoices is received from the ProcessPaymentsorchestration.

    Map Paid Invoices to 820 FormatThe List of Paid Invoices is mapped to multiple 820 files in XMLFormat.

    Translate 820 Paid Invoices to EDIFormat

    The 820 XML Files are sent to the XEngine interface to bevalidated and transformed to a 5010 820 Remittance AdviceEDI File.

    Log XEngine ErrorsAny XEngine errors (SNIP) that occur during translation arereturned and persisted the 820 Phase 2 Event Log.

    Archive 820 EDI File The 820 EDI File is archived to the file system.

    Send 820 Files to ClientsAll 820 Files are sent to the SFTP Interface where they arethen forwarded to the corresponding recipients.

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    29/241

    820 Phase 2 Design Specif icat ions

    6 Business Obj ectsThe Business Objectswill define business logic and rules. The objects are designed followingObject Oriented Design methodologies (OOD. Both the user interface layer and orchestrationlayer call into the business layer. The following sections are design details for the businesstypes defined in the component diagram (section 4.1).

    6.1Payment MgmtThe PaymentMgmtcomponent will handle the processing of the two distinct payment files for820 Payment Processing, CMS64and CD102.

    CMS64 processing entails matching approved invoices with an incoming CMS64 file. For amatching invoice, a Claim Schedule Numberwill be persisted with a new status ofCMS64Processed.

    CD102 processing entails matching CMS64 processed invoices with the incoming CD102 file.For a matching invoice, a warrant numbers will be persisted with a new status of Paid.

    All errors will be logged in an XML error document.

    6.1.1UseCase 3.1 Receive and Process Payment Files

    Requirement Specification

    The Process Payments process focuses on the receipt and reconciliation of the CMS64 andCD102 payment files received from the Accounting Office. The System matches the invoices tothe Claim Schedule Numbers on the CMS64 on a weekly basis, and then reconciles the ClaimSchedule Numbers to the Warrant Numbers on the CD102 file, which is received on a monthlybasis. Once the invoices have been reconciled to the payment data (CD102 File), the invoicesare ready to for the next process of going on an 820 transaction.

    Process Model

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    30/241

    820 Phase 2 Design Specif icat ions

    6.1.1.1Use Case Except ions

    o If the format or structure is incorrect then system logs an error and haltsprocessing of file (CMS64).

    o If the vendor number from the CMS64 file does not match with theCAPMAN vendor number, System updates Invoice status to CMS64Payment Error. System generates the following payment errornotification:CMS64 Payment Error Vendor Number [##] in systemDoes Not Match Vendor Number [##] on CMS64 file for Invoice Number[##]. Accounting must re-submit a corrected Claim Schedule. Else, ifwarrant has already been issued for original Claim Schedule, user mustenter a payment error adjustment.

    o

    If the invoice amount from the CMS64 file does not match with theCAPMAN invoice amount, System updates Invoice status to CMS64Payment Error. System generates the following payment errornotification:CMS64 Payment Error Invoice Amount [$$] Does NotMatch Amount [$$] on CMS64 file for Invoice Number [##]. Accountingmust re-submit a corrected Claim Schedule. Else, if warrant hasl d b i d f i i l Cl i S h d l t t

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    31/241

    g p

    resume further processing once the invoice status becomes CMS64Received.

    o If the total dollar amount of the invoices within a Claim Schedule does

    not match the Warrant Amount on the CD102, system updates thestatus of all invoices on that Claim Schedule to CD102 Payment Error.System generates the following payment error notification for eachinvoice with status of CD102 Payment Error:CD102 Payment Error Sum of Invoice Amounts [$$] for Claim Schedule [##] is not equal to theWarrant Amount [$$] on CD102 File. User must enter a payment erroradjustment.

    o If the number of warrants associated with the Claim Schedule Number

    does not equal the number of unique vendor codes for the all invoiceswithin the Claim Schedule, then system updates the status of allinvoices to CD102 Payment Error. System generates the followingpayment error notification for each invoice with status of CD102Payment Error:CD102 Payment Error Number of Warrants [##] onCD102 for Claim Schedule Number [##] is not equal to Number ofVendors [##] for the Claim Schedule in System. User must enter apayment error adjustment.

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    32/241

    6.1.2Class Diagram

    6.1.2.1PaymentService

    The PaymentServiceclass will be used to retrieve invoices that will either be a) Approvedorb) CMS64Processed. The class will also provide services to retrieve the vendor number foran invoice The ProcessCD102 and ProcessCMS64 classes will use this class

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    33/241

    Parameters Type Description

    invoiceStatus enumStatus Either enum64 or enumCD102

    status

    Output Description

    IList List of Invoiceobjects

    Method Description

    GetVendorNumber Retrieve the Vendor number for an invoice.

    Parameters Type Description

    invoiced int The invoice id

    Output Description

    String The invoice number

    6.1.2.2ProcessCMS64

    The ProcessCMS64class will be used to process a CMS64file. After retrieving a list ofinvoices with the status of CMS64Processed(using PaymentService), matching of eachinvoice will occur against the CMS64file. Any matching errors will be generated in an XMLerror log.

    Method Description

    Process This method will start the process of matching invoicesagainst the CMS64 file

    Output Description

    bool Success or Failure.

    Method Description

    GettErrorXml Retrieve the list of errors if Processfails.

    Output Description

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    34/241

    6.1.2.3InvioceMatch

    The InvoiceMatchclass will be a helper class to keep track of any issues matching theincoming CMS64 file invoices with the existing invoices in the database. Any issues will belogged.

    Property Description

    Invoice The invoice matched from the CMS64 file. .

    Output Description

    OHC820.Data.Invoice The Invoice object coming from the Data objects.

    Property Description

    CMS64 A single CMS64 record coming from the CMS64 file

    Output Description

    CMS64Record An object representing the CMS64 record.

    Property Description

    Log A log entry when a failure happens.

    Output Description

    XmlDocument An xml representation of a a failure

    6.1.2.4ProcessCD102

    The ProcessCD102class will be used to process a CD102file. After retrieving a list of

    invoices with the status of Paid(using PaymentService), matching of each invoice will occuragainst the CD102file. Any matching errors will be generated in an XML error log.

    Method Description

    Process This method will start the process of matching invoicesagainst the CD102 file

    Output Description

    bool Success or Failure.

    Method Description

    GettErrorXml Retrieve the list of errors if Processfails.

    O t t D i ti

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    35/241

    6.1.2.5PaymentMatch

    The InvoiceMatchclass will be a helper class to keep track of any issues matching theincoming CMS64 file invoices with the existing invoices in the database. Any issues will belogged.

    Property Description

    Invoice The invoice matched from the CMS64 file. .

    Output Description

    OHC820.Data.Invoice The Invoice object coming from the Data objects.

    Property Description

    CD102 A single CD102 record coming from the CMS64 file

    Output Description

    CD102Record An object representing the CD102 record.

    Property Description

    Log A log entry when a failure happens.

    6.1.2.6CMS64Record

    This class will represent a single record in the CMS64 file.

    Property Type Description

    SequenceNumberField String The sequence numberScheduleNumberField String The schedule number

    PaymentAmountField String The payment amount

    InvoiceAmountField String The invoice amount

    AdjustAmountField String The adjustment amount

    AdjReasonCodeField String The adjustment reason code

    ServiceNameField String The service namePayDateField String The pay date

    CovdPeriodFromField String The coverage period from

    CovdPeriodToField String The coverage period to

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    36/241

    ForeigncntryField String The foreign country

    VendorzipField String The vendor zip code

    VendorTypeField String The vendor type

    InvoiceNumberField String The invoice number

    ServiceCodeField String Sthe service code

    6.1.2.7CDI02Record

    Property Type Description

    SqheduleNumberField String The schedule number

    BeginWarrantNumberField String The start warrant number

    EndWarrantNumberField String The end warrant number

    WarrantDateField String The warrant date

    FederalFiscalYearField String The federal fiscal year

    AmountField String The amount field

    6.2Contract MgmtThe ContractMgmtcomponent will be used with contract data. Contracts will be versioned forevery change made. There will be no deletion or updates. This component will also handle

    HCPs, Aid Code Group and Aid Codes. Both ManagedCareUIand InvoiceMgmtcomponentswill interact with it.

    6.2.1UseCase 4.2 Cont ract Management

    Requirement SpecificationThis Use Case describes the process for Users to view, add and update Contracts,Amendments, Change Orders and Disbursement Register for Managed Care Plans..

    6.2.2Use Case - 2.1 Generat e Managed Care Invoices

    Requirement SpecificationThe Process Invoices process begins with the generation of all Managed Care invoices for the

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    37/241

    invoice(s). The invoices are now ready for payment reconciliation, which is described in thenext section: Process Payments.

    Process Model

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    38/241

    6.2.3Class Diagram

    Data.Contract

    ContractService

    +IdentifyEffectiveCurrentContracts()+LoadContractSupplementalData()

    +GetApplicableContract()

    -HcpToContractMap-HcpToSupplementalMap

    ContractMgr

    +GetContracts()+UpdateContract()+GetContractById()+GetRelatedContracts()

    interface

    IContractService

    InvoiceMgmt

    CapitationMgmt

    ManagedCareUI

    6.2.3.1IContractService

    The IContractServiceinterface will define methods to retrieve and save contract information.This interface will be used by the ManagedCareUIcomponent.

    Method Description

    GetContracts Get all contract related data. This includes HCP, AidCode groups and Aid codes.

    Parameters Type Description

    IncludeDetails Bool Flag indicated if all contractrelationships should be loaded

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    39/241

    contractNumber String The contract number

    healthCarePlanTypeId Int The health care plan type

    countyCodeTypeId Int The country code type id

    contractTypeId Int The contract type id

    effectiveFrom DateTime Effective from date

    effectiveTo DateTime Effective to date

    Output Description

    Contract[] An array of Data.Contract objects

    Method Description

    UpdateContract Update conctract information. This will create a newversion of all contract data.

    Parameters Type Description

    Contract Data.Contract The contract values to update.

    Method Description

    GetContractById Get all contract related data. This includes HCP, AidCode groups and Aid codes.

    Parameters Type DescriptionIncludeDetails Bool Flag indicated if all contract

    relationships should be loaded

    contractId Int The contract id

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    40/241

    Method Description

    GetRelatedContracts Get all contact version tied to a specific contract

    Parameters Type Description

    IncludeDetails Bool Flag indicated if all contractrelationships should be loaded

    contractId Int The contract id

    Output Description

    Contract[] An array of Data.Contract objects

    6.2.3.2ContractMgr

    The ContractMgrclass will be used by the InvoiceMgmtcomponent to retrieve the applicablecontract information to perform invoice calculations on beneficiaries.

    Method Description

    LoadContractData Loads all contracts from the database

    Method Description

    IdentifyEffectiveCurrentContracts Itentifies the contracts matched for beneficiaryinformation

    Parameters Type Description

    Beneficiary Data.Beneficiary The beneficiary to matchwith a contract

    Output Description

    Contract The matching contract

    Method Description

    LoadContractSupplementalData Load the supplemental contract information

    Parameters Type Description

    supplementalAidCodeType Data AidCodeType The supplemental aid code

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    41/241

    Parameters Type Description

    hcpId Short The id of the health careplan

    serviceMonth DateTime The applicable servicemonth

    payType Short The applicable paymenttype

    Output DescriptionList A list of Data.Supplemental objects

    Property Description

    HcpToContractMap Dictionary mapping an HCP to contracts

    Output Description

    Dictionary A dictionary keyed on hcp id with a list ofapplicable contracts

    Property Description

    HcpToSupplementalMap Dictionary mapping an HCP to supplementaldata

    Output Description

    Dictionary

    A dictionary keyed on hcp id with a list ofsupplemental data

    6.3BeneficiaryMgmtThe BeneficiaryMgmtcomponent will be used to manage beneficiaries and their associatedentities. This will include retrieval for both non-managed and managed care beneficiaries. Formanaged care only, adding risk factor and supplemental information, and for non-managedcare only, creating new beneficiaries with associated coverage. This component will bereferenced by ManagedCareUIand NonManagedCareUI, and will be reference the Datacomponent

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    42/241

    .

    6.3.2Use Case 4.5 HIPP and BCCTP Benef iciar y ManagementRequirement SpecificationThis Use Case describes the steps for adding, updating and viewing HIPP, BCCTP, and GHPPBeneficiary information in the 820 Phase 2 System via the user interface.

    6.3.3Class Diagram

    Data.Beneficiary

    BeneficiaryService

    +GetBeneficiaries()+SaveBeneficiary()+InsertAdjustment()+InsertCoverage()

    interfaceINonMCBeneficiaryService

    ManagedCareUI

    NonManagedCareUI

    +GetBeneficiaries()+InsertRiskFactor()+UpdateSupplementalInformation()+InsertSupplementalEligibility()

    interfaceIMCBeneficiaryService

    6 3 3 1 IMCBeneficiaryService

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    43/241

    M th d D i ti

    Method Description

    GetBeneficiaries Retrieve beneficiaries

    Parameters Type Description

    CIN String The CIN number of abeneficiary to retrieve

    firstName String First Name

    lastName String Last Name

    dateOfBirth DateTime The date of birth

    alienStatus String The alien status

    healthCarePlanId Int The health care plan id

    primaryEligibilityId Int The primary eligibility id

    supplementalEligibilityId Int The supplemental eligibility id

    supplementalEligibilityFromDate DateTime The from date of thesupplemental eligibilityinformation

    supplementalEligibilityToDate DateTime The to date of the supplementaleligibility information

    Output Description

    Beneficiary[] An array of Data.Beneficiary objects

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    44/241

    Contract Data.Contract The contract values to update.

    Method Description

    InsertRiskFactor Insert Risk factor for a beneficiary.

    Parameters Type Description

    beneficiaryId Long The beneficiary id

    riskFactor Decimal The risk factor

    Method Description

    InsertSupplementalEligibility Insert supplemental information for a beneficiary

    Parameters Type Description

    beneficiaryId Long The beneficiary id

    supplementailAidId Long The supplemental id code id

    diagnosis String The diagnosis code

    6.3.3.2INonMCBeneficiaryService

    The INonMCBeneficiaryServiceinterface will define methods to retrieve and save beneficiaryinformation. This interface will be used by the NonManagedCareUIcomponent.

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    45/241

    Method Description

    SaveBeneficiary Save a single beneficiary

    Method Description

    GetBeneficiaries Retrieve beneficiaries

    Parameters Type Description

    CIN String The CIN number of abeneficiary to retrieve

    firstName String First Name

    lastName String Last Name

    dateOfBirth DateTime The date of birth

    alienStatus String The alien status

    healthCarePlanId Int The health care plan id

    primaryEligibilityId Int The primary eligibility id

    supplementalEligibilityId Int The supplemental eligibility id

    supplementalEligibilityFromDate DateTime The from date of thesupplemental eligibilityinformation

    supplementalEligibilityToDate DateTime The to date of the supplementaleligibility information

    Output Description

    Beneficiary[] An array of Data.Beneficiary objects

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    46/241

    6.4Report MgmtThe ReportMgmtcomponent will be used manage and create reports. Reports will be initiated

    from the user interface and will either be formatted for Excelor AdobeReader. TheManagedCareUIand NonManagedCareUIcomponents will use it. This component willreference the Datacomponent.

    6.4.1UseCase 4.3 Generat e Repor t s

    Requirement SpecificationThis use case describes the process for users to generate, view, print and export reports viathe user interface.

    .

    6.4.2Class Diagram

    +GetAvailableReports()

    ReportManager

    Reports

    +Generate()+SetFormat()+SetDateFilter()

    Report

    1*

    1

    *

    IList

    CapitationReport

    PACEClaimScheduleReport

    ExpendituresByFundingSourceReport

    EnrollmentReport

    ExpendeturesByWaiverAuthorityReport

    PlanPaymentHistoryReport

    PermReport

    HealthPlanPaidInvoiceReport

    RateSheetReport

    ContractEncumbranceAndExpenditureReport

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    47/241

    6.4.2.1ReportManager

    The ReportManagerclass will be the managing class within this component. It will used toaccess all available reports.

    6.4.2.2Reports

    The Reportsclass will implement System.Collections.Generic.IListand will contain a list ofReportobjects. The list will be strongly typed and each object can be accessed by index.

    6.4.2.3Report

    The Reportclass will be an abstract class containing methods that are common across reportobjects within the system.

    Method Description

    SetFormat Set the format of the report to either PDF or Excel

    Parameters Type DescriptionformatType enumFormat {excel,

    pdf}An enumerator of eithervalue defining either excelor pdf

    Method Description

    GetAvailableReports Get a list of available reports

    Output Description

    Reports A list of Report objects

    Method Description

    Generate Generate the report based on a date filter.

    Output Description

    Reports A list of Report objects

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    48/241

    1.1.1.1

    6.4.2.4EnroEnllmentReport

    The EnrollmentReportclass will represent Beneficiaries grouped by County and Aid CodeGroup. Invoice Types will be both Medi-Cal Only and Medicare Part D. The invoice statuseswill be Pending through 820 Sent.

    6.4.2.5CapitationReport

    The CapitationReportclass will represent Beneficiaries grouped by Aid Code Group, HCP,

    Rate, Term date and County. Invoice Types will be both Medi-Cal Only and Medicare Part D.The invoice statuses will be Pending through 820 Sent.

    Method Description

    SetDateFilter Set the to and from date filter

    Parameters Type DescriptiondateFrom DateTime The date from

    dateTo DateTime The date To

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    49/241

    820 Phase 2 Design Specif icat ions

    6 4 2 6 E di B F di S R

  • 8/2/2019 2.04 820 Design Specifications

    50/241

    6.4.2.6ExpendituresByFundingSourceReport

    The ExpendituresByFundingSourceReportclass will represent Amounts paid, broken downby State Fiscal Year and Quarter of Payment Date, HCP and Model Type, for Funding

    Sources:Invoice Types will be both Medi-Cal Only and Medicare Part D. The invoice statuses will bePending through 820 Sent.

    6.4.2.7ExpendeturesByWaiverAuthorityReport

    The ExpendeturesByWaiverAuthorityReportclass will represent Waiver Amounts paid perState Fiscal Year and Quarter, broken down by HCP, Claim Sch. Number, Payment Type,Funding Source and Aid code group for each waiver. Invoice Types will be both Medi-CalOnly and Medicare Part D. The invoice statuses will be Pending through 820 Sent.

    6.4.2.8PermReport

    The PermReportclass will represent expenditures by HCP, Aid Code Group, Aid Code, Rate,

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    51/241

    6.4.2.9PlanPaymentHistoryReport

    The PlanPaymentHistoryReportclass will represent expenditures by Month of Payment orMonth of Service/. Invoice Types will be both Medi-Cal Only and Medicare Part D. Theinvoice statuses will be Pending through 820 Sent.

    6.4.2.10 ContractEncumbranceAndExpenditureReport

    The ContractEncumbranceAndExpenditureReportclass will represent expenditures byContract Invoice Types will be both Medi-Cal Only and Medicare Part D The invoice

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    52/241

    6.4.2.11 OMCAndPHPClaimScheduleReport

    The ContractEncumbranceAndExpenditureReportclass will represent Payments by Date ofPayment. Invoice Types will be both Medi-Cal Only and Medicare Part D. The invoice

    statuses will be Pending through 820 Sent.

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    53/241

    6.4.2.12 PACEClaimScheduleReport

    The PACEClaimScheduleReportclass will represent Payments by Date of Payment(Hierarchy: Program Type, Managed Care Plan Name, Funding Source, Quarterly). Invoice

    Types will be both Medi-Cal Only and Medicare Part D. The invoice statuses will be Pendingthrough 820 Sent.

    820 Phase 2 Design Specif icat ions

    6 4 2 13 RateSheetReport

  • 8/2/2019 2.04 820 Design Specifications

    54/241

    6.4.2.13 RateSheetReport

    The RateSheetReportclass will represent Payment Rates per Aid Code Group (orSupplemental Payment Rate), per HCP, and per current Effective Date(s). Invoice Types will

    be both Medi-Cal Only and Medicare Part D. The invoice statuses will be Pending through820 Sent.

    6.4.2.14 HealthPlanPaidInvoiceReport

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    55/241

    6.4.2.15 BeneficiaryPaymentHistorySummaryReport

    The HealthPlanPaidInvoiceReportclass will represent a summary of payment history perBeneficiary. Invoice Types will be both Medi-Cal Only and Medicare Part D. The invoicestatuses will be Pending through 820 Sent.

    820 Phase 2 Design Specif icat ions

  • 8/2/2019 2.04 820 Design Specifications

    56/241

    820 Phase 2 Design Specif icat ions

    6 5 Remit t anceAdviceMgmt

  • 8/2/2019 2.04 820 Design Specifications

    57/241

    6.5Remit t anceAdviceMgmtThe RemittanceAdviceMgmtcomponent will handle the internal processing of gatheringinvoices from the system and generating and 820 Remittance Advice. The invoices should

    have the status of Paid, meaning that Accounting and SCO have paid out the invoices to theVendor. The component will then transform the invoice data into an 820 Remittance AdviceXML document suitable for processing in XEngine to produce the actual 820 EDIdocument.

    6.5.1UseCase 5.1 Process and Send 820 Transact ions

    Requirement SpecificationThe Process and Send 820 Transactions process produces HIPAA-compliant 820 transactions

    that show the beneficiary, invoice and payment data for Trading Partners to receive from anSFTP site..

    Process Model

    1.1.1.1 Use Case Except ions

    o If the invoice payee is a beneficiary or a beneficiary representative, doNOT generate an 820 transaction for invoice.

    o

    If an 820 transaction does not pass SNIP validations, system haltsprocessing of the transaction and posts SNIP Error Report. Systemlogs an error for System Administrator.

    820 Phase 2 Design Specif icat ions

    6.5.2Class Diagram

  • 8/2/2019 2.04 820 Design Specifications

    58/241

    g

    +Process()

    RemittanceAdviceMgmt

    +GetRemittanceAdvice()-InvoiceInfoList

    Processed820

    InvoiceMgmt

    6.5.2.1RemittanceAdviceMgmt

    The RemittanceAdviceMgmtclass will manage and start the processing of a new remittanceadvice file (the 820 EDI file). With a warrant number, invoices with the status of Paidwill beprocessed and sent into XEngineto create the EDI file.

    Method Description

    Process Starts the process the generating the remittance advice.

    Parameters Type Description

    warrantNumber Long The warrant number to beprocessed against

    Output Description

    XmlDocument An XML document validated against the 820 XEngineSchema

    6.5.2.2Processed820

    Th P d820 l ill b d t th itt d i Th f t f th

    820 Phase 2 Design Specif icat ions

    Output Description

  • 8/2/2019 2.04 820 Design Specifications

    59/241

    XmlDocument An XML document validated against the 820 XEngineSchema

    6.6 InvoiceMgmtThe InvoiceManagementcomponent will handle generation of all supported invoices. Thecomponent will be used by the capitation process and, invoice recalculation.

    All supported invoices can be grouped in three logical groups: capitation invoices, supplemental

    invoices, and adjustment invoices. Though all these invoices generate same kind of output,each group has different source of input data. The caller of the component has to load requiredinput data.

    6.6.1UseCase 2.1 Generat e Managed Car e Invoices

    Requirement SpecificationThe Process Invoices process begins with the generation of all Managed Care invoices for the

    current enrollment month based on the completion of processing the Beneficiary Enrollmentfile. The invoices are then made available for review and approval by the Managed CareDepartment. They are then manually printed by the user and provided to the DHCS Accountingdepartment. Additionally, HIPP/BCCTP Department staff manually creates invoices and printthem out for the DHCS Accounting Department. Contract and Beneficiary Adjustments are alsoavailable for the user in this process, which will ultimately be shown on the appropriateinvoice(s). The invoices are now ready for payment reconciliation, which is described in thenext section: Process Payments.

    Process Model

    820Phase2

    System

    1.2CalculateCapitation

    CAPMANDatabase

    RetrieveCurrentMonth

    CapitationData

    IdentifyInvoiceType

    Systemwithholds

    7% forSacramentoGMC Dental

    PopulateAdvance

    Payments &Advance

    Adjustments

    Set InvoiceStatus to

    Pending & MakeAvailable on

    User Interface

    2.2 Reviewand Approve

    Invoices

    PopulateCurrentMonth

    CapitationInformation

    Populate TotalCapitationAmounts &

    FundingBreakdown

    PopulateHeader and

    FooterInformation

    PopulateQuarterly

    RateAdjustmentAmounts

    PopulatePreviiousQuarter

    CapitationInformation

    820 Phase 2 Design Specif icat ions

    6.6.1.1Use Case Except ions

  • 8/2/2019 2.04 820 Design Specifications

    60/241

    o If Rate Adjustment is Negative, refer to Business Rule 2.1.21 for 25%Recoupment Cutoff logic.

    o If a Rate Adjustment or Adjustments apply to a Service Month prior tothe 12 previous service months (but no earlier than 24 months prior tocurrent month), system creates a separate invoice apart from the 13-month capitation invoices. Invoices are generated based on StateFiscal Year, Contract Number, HCP, and Invoice Type.Invoice format and calculations are the same as described in Steps 2and 3, except Service Months do not include the current service monthor the 12 prior service months.

    o

    Rate Adjustments for Beneficiary-Based Supplemental Payments arecalculated for service months up to 2 years prior to current month.

    820 Phase 2 Design Specif icat ions

    6.6.2Class Diagram

  • 8/2/2019 2.04 820 Design Specifications

    61/241

    +GetInvoiceTypeRange() : InvoiceTypeRange

    interfaceIInvoiceManagement

    datatypeEnumInvoiceTypes

    +StartRange : EnumInvoiceTypes+EndRange : EnumInvoiceTypes

    structInvoiceTypeRange

    +GetInvoiceDataByBene() : InvoiceInfoList+GetExpectedInvoices() : InvoiceInfoList+CalculateNewInvoices() : InvoiceInfoList#LoadApplicableContracts()+SaveInvoices()+UpdateInvoiceStatus()+ApplyAdjustments() : InvoiceInfo+PerformRateAdjustmentBeyondCapPeriod() : DateTime+RecalculateInvoice() : int

    -ContractList : ContractDataList

    InvoiceManagerService

    +ServiceDate : DateTime+hcpId : short+AidCodeId : short+PaymentTypeId : short

    struct

    BeneEligibilityInfostructInvoiceInfo

    InvoiceInfoList

    *

    1

    +ApplyAdjustments() : InvoiceInfoList

    CapitationInvoice

    #GetAdjustedRate() : decimal#GetSupplementalAidType() : short#LoadApplicableBeneficiaries()

    SupplementalInvoices

    AidsInvoice AgnewsInvoice CraigBontaInvoiceMaternityInvoice

    -LoadAdj()

    -Adjustment

    GmcDentalReleaseInvoice

    SavingsSharingInvoice

    AdvancePaymentInvoice

    refines

    structContractData

    ContractDataList

    *

    1

    refines

    6 6 2 1 IIn oiceManagement

    820 Phase 2 Design Specif icat ions

    Output Description

  • 8/2/2019 2.04 820 Design Specifications

    62/241

    InvoiceTypeRange Start and end value of an invoice type range.

    6.6.2.2InvoiceManagerService

    The InvoiceManagerServicewill be an abstract base class. It will contain business logic thatis common for all types of invoices.

    Method Description

    GetInvoiceDataByBene Provides historical invoices for a list of beneficiaries.

    Parameters Type Description

    BeneficiariesId List A list of beneficiary Ids whosehistorical invoices are needed.

    LatestDate DateTime The end date for historicalinvoices date range (oftencapitation date).

    MonthsInHistory Integer Count of historical months forwhich the data is needed.

    Range InvoiceTypeRange A range invoice types thatshould be extracted.

    Output DescriptionInvoiceInfoList A list of historical invoices.

    Method Description

    GetExpectedInvoices Provides a list of expected invoices based on providedeligibility information of a beneficiary and already loadedapplicable contract information.

    Parameters Type Description

    CapitationDate DateTime Capitation date.

    820 Phase 2 Design Specif icat ions

    HistoricalCapitationData InvoiceInfoList List of historical capitation data,it will be required for

  • 8/2/2019 2.04 820 Design Specifications

    63/241

    it will be required forsupplemental invoices.

    Output Description

    InvoiceInfoList A list of expected invoices.

    Method Description

    CalculateNewInvoices Using provided lists of historical and expected invoices,provides a list of actual invoices that should to be saved

    in the database.Parameters Type Description

    HistoricalInvoices InvoiceInfoList A list of historical invoices.

    ExpectedInvoices InvoiceInfoList A list of expected invoices.

    Output Description

    InvoiceInfoList A list of actual invoices that should be saved.

    Method Description

    LoadApplicableContracts This method will be a protected abstract method; henceevery derived class should provide its implementation.

    Parameters Type Description

    CapitationDate DateTime Capitation date.

    Output Description

    None However the method populates applicable contract datain ContractListdata member.

    Method Description

    SaveInvoices This method will be a public virtual method. It will savethe provided data (as input parameter) intb_invoice_detail and tb_invoice tables. ApplyAdjustment

    820 Phase 2 Design Specif icat ions

    InvoicesToBeSaved InvoiceInfoList List of InvoiceInfo records thatneeds to be saved.

  • 8/2/2019 2.04 820 Design Specifications

    64/241

    needs to be saved.

    CapitationDate DateTime Capitation date.

    Output Description

    None However the method will throw exceptions and the calleris expected to handle it.

    Method Description

    UpdateInvoiceStatus This method will be a public method; It will save Pendingtb_invoice_status records for invoices of a specificcapitation date and invoice type range.

    Parameters Type Description

    CapitationDate DateTime Capitation date.

    range InvoiceTypeRange Type of invoices whose statusneeds to be saved.

    Output Description

    None However the method will throw exceptions and the calleris expected to handle it.

    Method Description

    ApplyAdjustments This method will perform Adjustment on every invoice thatis getting saved.

    Parameters Type Description

    InvoiceInfoRecord InvoiceInfo An invoice detail data that needsto be saved.

    Output Description

    None However the method will throw exceptions and the calleris expected to handle it.

    820 Phase 2 Design Specif icat ions

    CapitationDate DateTime Capitation date.

  • 8/2/2019 2.04 820 Design Specifications

    65/241

    Output DescriptionNone However the method will throw exceptions

    and the caller is expected to handle it.

    Method Description

    RecalculateInvoice This method will be a public method; It will save Pendingtb_invoice_status records for invoices of a specificcapitation date and invoice type range.

    Parameters Type Description

    InvoiceId integer Invoice that needs to berecalculated..

    Output Description

    None However the method will throw exceptions and the calleris expected to handle it.

    6.6.2.3CapitationInvoice

    The CapitationInvoicewill be a class used by capitation process to generate capitationinvoices. It must be derived from InvoiceManagerServiceand IInvoiceManagement. Most ofthe business logic required for generation of capitation invoice will exist inInvoiceMethodServicebase class. Any logic specific to capitation invoices should be

    implemented in this class.

    Method Description

    LoadApplicableContracts Override this inherited method to extract contracts thatare applicable for capitation invoices.

    Parameters Type Description

    CapitationDate DateTime Capitation date.

    Output Description

    None However the method populates applicable contract datain ContractListdata member.

    820 Phase 2 Design Specif icat ions

    GetExpectedInvoices Override this method to identify expected capitationinvoices. The expected capitation invoices can be

  • 8/2/2019 2.04 820 Design Specifications

    66/241

    identified by locating applicable contract for a beneficiary.No historical invoice information will be needed here.

    Parameters Type Description

    CapitationDate DateTime Capitation date.

    EligibilityInfo BeneEligibilityInfo Provides a beneficiaryseligibility information includingthe service month for which the

    expected invoices will beidentified.

    HistoricalCapitationData InvoiceInfoList Ignore this parameter.

    Output Description

    InvoiceInfoList A list of expected invoices.

    Method Description

    ApplyAdjustments This method will apply adjustments that are required forcapitation invoices. It includes GM Dental Withhold,Advance Payment, and Recoupment Balance. Note thatthe adjustments are applicable to only capitation invoices.Any applicable adjustment should be applied on therelated invoice.

    Parameters Type Description

    CapitationDate DateTime Capitation date.

    Invoices InvoiceInfoList List of invoices that should besaved in the database.

    Output Description

    InvoiceInfoList. List of adjusted invoices that should be saved in thedatabase.

    820 Phase 2 Design Specif icat ions

    CalculateNewInvoices Override this method only to apply the adjustment oncapitation invoices. The methods should call basei l i f h h d d f h ll

  • 8/2/2019 2.04 820 Design Specifications

    67/241

    implementation of the method and output of the callshould be sent as parameter to ApplyAdjustment method.

    The output of the ApplyAdjustment should be returned tothe caller.

    Parameters Type Description

    HistoricalInvoices InvoiceInfoList A list of historical invoices.

    ExpectedInvoices InvoiceInfoList A list of expected invoices.

    Output Description

    InvoiceInfoList A list of actual adjusted invoices that should be saved.

    6.6.2.4SupplementalInvoice

    The SupplementalInvoicewill be an abstract base class for all supplemental and adjustmentinvoices. It will be derived from InvoiceManagerService, so that all common business logic ofinvoice generation can be utilized. Every class derived from SupplementalInvoiceshould alsoinherit IInvoiceManagement.

    Method Description

    LoadApplicableBeneficiary Provides supplemental eligibility information of a list ofbeneficiaries for a date range.

    Parameters Type Description

    StartServiceDate DateTime Start date of date range.

    EndServiceDate DateTime End date of date range.

    BeneficiaryIds List A list of beneficiary ids whosesupplemental eligibility isrequired.

    Output Description

    820 Phase 2 Design Specif icat ions

    GetAdjustedRate This method will be a protected abstract method. Everyderived class should provide its implementation. Theim l m t ti h ld id dj t d t f th

  • 8/2/2019 2.04 820 Design Specifications

    68/241

    implementation should provide adjusted rate for theapplicable supplemental eligibility of a beneficiary.

    Parameters Type Description

    SupplementalRate Decimal Effective supplemental rate.

    CapitaionPaid Decimal Capitation amount that was paidto the beneficiary.

    Output Description

    adjustedRate Adjusted Rate that should be saved in the database.

    Method Description

    GetSupplementalAidType This method will be a protected abstract method. Everyderived class should provide its implementation. Theimplementation should provide type of supported

    supplemental eligibility.Parameters Type Description

    none

    Output Description

    supplementalType Type of supported supplemental eligibility.

    Method Description

    LoadApplicableContracts Override this inherited method to extract contracts thatare applicable for supplemental invoices. Sincesupplemental eligibility has its own applicable contractdata, use GetSupplementalAidTypemethod in thiscommon implementation to identify type of supplementaleligibility whose contract data needs to be loaded.

    Parameters Type Description

    CapitationDate DateTime Capitation date.

    820 Phase 2 Design Specif icat ions

    GetInvoiceTypeRange Define this method as abstract, so that every non-abstractderived class must provide its implementation.

  • 8/2/2019 2.04 820 Design Specifications

    69/241

    Parameters Type Description

    None

    Output Description

    InvoiceTypeRange Returns range of the applicable invoice types.

    Method Description

    GetExpectedInvoices Override this method to identify expected supplementalinvoices. The expected supplemental invoices can beidentified by locating applicable contract for a beneficiaryand the related capitation eligibility.

    Parameters Type Description

    CapitationDate DateTime Capitation date.

    EligibilityInfo BeneEligibilityInfo Provides a beneficiaryseligibility information includingthe service month for which theexpected invoices will beidentified.

    HistoricalCapitationData InvoiceInfoList List of historical capitation data.

    Output Description

    InvoiceInfoList A list of expected invoices.

    6.6.2.5AidsInvoice

    The AidsInvoicewill be a class used by processes to generate invoices for Aids. It must bederived from SupplemetalInvoiceand IInvoiceManagement. Most of the business logicrequired for generation of this invoice will exist in InvoiceMethodServiceandSupplementalInvoicebase classes. Any logic specific to aids invoices should be implementedin this class.

    820 Phase 2 Design Specif icat ions

    SupplementalRate Decimal Effective supplemental rate.

  • 8/2/2019 2.04 820 Design Specifications

    70/241

    CapitaionPaid Decimal Capitation amount that was paidto the beneficiary.

    Output Description

    adjustedRate Adjusted Rate that should be saved in the database.

    Method Description

    GetSupplementalAidType Provide specific implementation for this protected abstractmethod.

    Parameters Type Description

    none

    Output Description

    supplementalType Type of supported supplemental eligibility.

    Method Description

    GetInvoiceTypeRange Implement this interface method.

    Parameters Type Description

    None

    Output Description

    InvoiceTypeRange Returns range of the applicable invoice types.

    6.6.2.6AgnewsInvoice

    The AgnewsInvoicewill be a class used by processes to generate invoices for Agnews. Itmust be derived from SupplemetalInvoiceand IInvoiceManagement. Most of the businesslogic required for generation of this invoice will exist in InvoiceMethodServiceandSupplementalInvoice base classes Any logic specific to Agnews invoices should be

    820 Phase 2 Design Specif icat ions

    Parameters Type Description

    SupplementalRate Decimal Effective supplemental rate.

  • 8/2/2019 2.04 820 Design Specifications

    71/241

    CapitaionPaid Decimal Capitation amount that was paidto the beneficiary.

    Output Description

    adjustedRate Adjusted Rate that should be saved in the database.

    Method Description

    GetSupplementalAidType Provide specific implementation for this protected abstractmethod.

    Parameters Type Description

    none

    Output Description

    supplementalType Type of supported supplemental eligibility.

    Method Description

    GetInvoiceTypeRange Implement this interface method.

    Parameters Type Description

    None

    Output Description

    InvoiceTypeRange Returns range of the applicable invoice types.

    6.6.2.7MaternityInvoice

    The MaternityInvoicewill be a class used by processes to generate invoices for Maternity. Itmust be derived from SupplemetalInvoiceand IInvoiceManagement. Most of the businesslogic required for generation of this invoice will exist in InvoiceMethodServiceand

    820 Phase 2 Design Specif icat ions

    Parameters Type Description

    SupplementalRate Decimal Effective supplemental rate.

  • 8/2/2019 2.04 820 Design Specifications

    72/241

    CapitaionPaid Decimal Capitation amount that was paidto the beneficiary.

    Output Description

    adjustedRate Adjusted Rate that should be saved in the database.

    Method Description

    GetSupplementalAidType Provide specific implementation for this protected abstractmethod.

    Parameters Type Description

    None

    Output Description

    supplementalType Type of supported supplemental eligibility.

    Method Description

    GetInvoiceTypeRange Implement this interface method.

    Parameters Type Description

    None

    Output Description

    InvoiceTypeRange Returns range of the applicable invoice types.

    6.6.2.8CraigBontaInvoice

    The CraigBontaInvoicewill be a class used by processes to generate invoices forCraigBonta. It must be derived from SupplemetalInvoiceand IInvoiceManagement. Most ofthe business logic required for generation of this invoice will exist in InvoiceMethodService

    820 Phase 2 Design Specif icat ions

    LoadApplicableBeneficiary Override implementation of this virtual method. Thisimplementation should provide Craig Vs. Bonta eligibilityinformation of a list of beneficiaries for a date range.

  • 8/2/2019 2.04 820 Design Specifications

    73/241

    Parameters Type DescriptionStartServiceDate DateTime Start date of date range.

    EndServiceDate DateTime End date of date range.

    BeneficiaryIds List A list of beneficiary ids whose

    supplemental eligibility isrequired.

    Output Description

    SupplementalInfoList A list that contains supplemental eligibility information ofall beneficiaries whose id was provided as inputparameter.

    Method Description

    GetAdjustedRate Provide specific implementation for this protected abstractmethod.

    Parameters Type Description

    SupplementalRate Decimal Effective supplemental rate.

    CapitaionPaid Decimal Capitation amount that was paidto the beneficiary.

    Output Description

    adjustedRate Adjusted Rate that should be saved in the database.

    Method Description

    GetSupplementalAidType Provide specific implementation for this protected abstractmethod.

    Parameters Type Description

    None

    820 Phase 2 Design Specif icat ions

    Method Description

    GetInvoiceTypeRange Implement this interface method.

  • 8/2/2019 2.04 820 Design Specifications

    74/241

    Parameters Type Description

    None

    Output Description

    InvoiceTypeRange Returns range of the applicable invoice types.

    6.6.2.9GmcDentalReleaseInvoice

    The GmcDentalReleaseInvoicewill be a class used by processes to generate invoices forGMC Detnal Release. It must be derived from SupplemetalInvoiceand IInvoiceManagement.However this invoice is different from all other supplemental invoices, the following methodsshould be overridden to provide the specific implementation.

    Method Description

    LoadApplicableBeneficiary Override implementation of this virtual method. Thisimplementation should provide GMC Dental Releaseeligibility information of a list of beneficiaries for a daterange.

    Parameters Type Description

    StartServiceDate DateTime Start date of date range.

    EndServiceDate DateTime End date of date range.

    BeneficiaryIds List A list of beneficiary ids whosesupplemental eligibility isrequired.

    Output Description

    SupplementalInfoList A list that contains supplemental eligibility information ofall beneficiaries whose id was provided as inputparameter.

    820 Phase 2 Design Specif icat ions

    SupplementalRate Decimal Effective supplemental rate.

  • 8/2/2019 2.04 820 Design Specifications

    75/241

    CapitaionPaid Decimal Capitation amount that was paidto the beneficiary.

    Output Description

    adjustedRate Adjusted Rate that should be saved in the database.

    Method Description

    GetSupplementalAidType Provide specific implementation for this protected abstractmethod.

    Parameters Type Description

    None

    Output Description

    supplementalType Type of supported supplemental eligibility.

    Method Description

    LoadAdj Load Adjustment data specific to GMC Dental Release.

    Parameters Type Description

    None

    Output Description

    none However populate the extracted data in Adjustmentdatamember.

    Method Description

    GetExpectedInvoices Override this virtual method to identify expected invoicesfor GMC Dental Release.

    Parameters Type Description

    CapitationDate DateTime Capitation date.

    820 Phase 2 Design Specif icat ions

    EligibilityInfo BeneEligibilityInfo Provides a beneficiaryseligibility information includingthe service month for which theexpected invoices will be

  • 8/2/2019 2.04 820 Design Specifications

    76/241

    expected invoices will be

    identified.

    HistoricalCapitationData InvoiceInfoList List of historical capitation data,it will be required forsupplemental invoices.

    Output Description

    InvoiceInfoList A list of expected invoices.

    Method Description

    CalculateNewInvoices Override this virtual method to identify actual invoices forGMC Dental Release.

    Parameters Type Description

    HistoricalInvoices InvoiceInfoList A list of historical invoices.

    ExpectedInvoices InvoiceInfoList A list of expected invoices.

    Output Description

    InvoiceInfoList A list of actual invoices that should be saved.

    Method Description

    GetInvoiceTypeRange Implement this interface method.

    Parameters Type Description

    None

    Output Description

    InvoiceTypeRange Returns range of the applicable invoice types.

    820 Phase 2 Design Specif icat ions

    Method Description

    GetAdjustedRate Provide specific implementation for this protected abstractmethod.

  • 8/2/2019 2.04 820 Design Specifications

    77/241

    Parameters Type Description

    SupplementalRate Decimal Effective supplemental rate.

    CapitaionPaid Decimal Capitation amount that was paidto the beneficiary.

    Output Description

    adjustedRate Adjusted Rate that should be saved in the database.

    Method Description

    GetSupplementalAidType Provide specific implementation for this protected abstractmethod.

    Parameters Type Description

    None

    Output Description

    supplementalType Type of supported supplemental eligibility.

    Method Description

    LoadAdj Load Adjustment data specific to Savings SharingDisbursement.

    Parameters Type Description

    None

    Output Description

    none However populate the extracted data in Adjustmentdatamember.

    820 Phase 2 Design Specif icat ions

    HistoricalInvoices InvoiceInfoList No historical invoices will beneeded to identify actualinvoices that need to be saved.

  • 8/2/2019 2.04 820 Design Specifications

    78/241

    ExpectedInvoices InvoiceInfoList A list of expected invoices.

    Output Description

    InvoiceInfoList A list of actual invoices that should be saved.

    Method Description

    GetInvoiceTypeRange Implement this interface method.

    Parameters Type Description

    None

    Output Description

    InvoiceTypeRange Returns range of the applicable invoice types.

    6.6.2.11 AdvancePaymentInvoice

    The AdvancePaymentInvoicewill be a class used by processes to generate invoices forAdvance Payments. It must be derived from SupplemetalInvoiceand IInvoiceManagement.However this invoice is different from all other supplemental invoices, the following methodsshould be overridden to provide the specific implementation.

    Method Description

    GetAdjustedRate Provide specific implementation for this protected abstractmethod.

    Parameters Type Description

    SupplementalRate Decimal Effective supplemental rate.

    CapitaionPaid Decimal Capitation amount that was paidto the beneficiary.

    Output Description

    820 Phase 2 Design Specif icat ions

    GetSupplementalAidType Provide specific implementation for this protected abstractmethod.

    Parameters Type Description

  • 8/2/2019 2.04 820 Design Specifications

    79/241

    None

    Output Description

    supplementalType Type of supported supplemental eligibility.

    Method Description

    LoadAdj Load Adjustment data specific to Advance Payments.

    Parameters Type Description

    None

    Output Description

    none However populate the extracted data in Adjustmentdatamember.

    Method Description

    CalculateNewInvoices Override this virtual method to identify actual invoices forAdvance Payments.

    Parameters Type Description

    HistoricalInvoices InvoiceInfoList No historical invoices areneeded to identify the actualinvoices that need to be saved.

    ExpectedInvoices InvoiceInfoList A list of expected invoices.

    Output Description

    InvoiceInfoList A list of actual invoices that should be saved.

    Method Description

    GetInvoiceTypeRange Implement this interface method.

    820 Phase 2 Design Specif icat ions

    InvoiceTypeRange Returns range of the applicable invoice types.

  • 8/2/2019 2.04 820 Design Specifications

    80/241

    6.7 Capit at ionMgmtThe CapitationMgmtcomponent will handle import of MMCD data into the 820 database. It willcompute every eligible beneficiarys current as well prior months capitation. Also, it willgenerate data for capitation invoices.

    6.7.1UseCase 1.2 Calculat e Capi t at ionRequirement SpecificationThe Calculate Capitation process begins with the receipt and processing of the BeneficiaryEnrollment files, where the Managed Care Health Care Plans (HCPs) and their enrolledbeneficiary data for the current month plus 12 prior months is supplied. The HCP andbeneficiary data is captured and used to calculate the capitation. This is where the Systemcalculates the current months enrollment data, and then compares the previous twelve monthsenrollment on the current file to the previous twelve months in history. The outcome is capturingand calculating the net eligibles per HCP for use in the next process of generating ManagedCare invoices.

    Process Model

    820Phase2System

    820 Phase 2 Design Specif icat ions

    6.7.2Class Diagram

    CapitationProcessor

  • 8/2/2019 2.04 820 Design Specifications

    81/241

    +ExecuteProcess() : bool-LoadStagedRecords()-ValidateStagedRecord() : bool-IdentifyNewInvoices()-SaveData()

    -historicalInvoices : InvoiceInfoList-ExpectedInvoices : InvoiceInfoList-InvoicesToBeSaved : InvoiceInfoList

    +ClientIndexNumber : string+MedsRenewalDate : string+LastName : string+FirstName : string+HCP : string

    +AidCode : string+Status : string+PaymentType : string

    StagingBeneficiary

    +FiscalYear : short+InvoiceTypeId : EnumInvoiceTypes+ContractPlanCode : int+Hcpid : short+AidCodeid : short+PaymentType : EnumPaymentType+Amount : decimal+Rate : decimal+ServiceDate : DateTime

    struct

    InvoiceInfo

    InvoiceInfoList

    *

    1

    datatypeEnumInvoiceTypes

    datatypeEnumPaymentType

    6.7.2.1CapitationProcessor

    The CapitationProcessorclass will be a sealed class and it will be responsible for theexecution of the capitation process. Before executing the process, the caller should ensurethat only latest MMCD enrollment data is available in TB_STAGING_BENEFICIARY and

    TB_STAGING_MONTHLY_INFO tables. The class would not contain any logic to ensurecompleteness or validity of the enrollment data.

    Status of the process will be logged-in an XML file for reporting purposes.

    820 Phase 2 Design Specif icat ions

    ExecuteProcess This method will execute the entire capitation processthat includes saving of MMCD enrollment data inCAPMAN database, calculation of capitation amount andsaving of invoice data.

  • 8/2/2019 2.04 820 Design Specifications

    82/241

    Since the caller of this method does not have anyinformation about the capitation date for which theprocess is being executed, the class will assumeMedsRenewalDate of the very first enrollment record asthe capitation date. Using the capitation date, start andend service date will be identified (13 month period).

    Once capitation and service dates are identified, theprocess will read MMCD enrollment data. Using theenrollment data, expected invoices will be identified bycalling GetExpectedInvoicesmethod of CapitationInvoiceclass. The returned expected invoices will be stored inexpectedInvoices data member. The expected invoiceswill be compared against the historical invoices to find theinvoices that should be saved in the database.

    Parameters Type Description

    None

    Output Description

    Bool True if the process completes successfully otherwisefalse.

    Method Description

    LoadStagedRecords This private method will get MMCD enrollment data fromstaging database tables. Paging should be used to readthe staged data.

    Parameters Type Description

    LastReadCin String Last read client identificationnumber. This will help to

    implement paginated reading ofthe staged data.

    Output Description

    List A list of staged enrollment data.

    820 Phase 2 Design Specif icat ions

    ValidateStagedRecord This private method will perform validation of individualstaged record. The method will be called for each recordextracted by LoadStagedRecordsmethod.

  • 8/2/2019 2.04 820 Design Specifications

    83/241

    A few of the critical validations that the method willperform:

    1. MedsRenewalDate of the record should be same asthe capitation date identified at the start of theprocess.

    2. Client Index Number should not be null or empty andit must be exactly 9 characters long.

    3. First Name and Last Name should not be null.

    4. Hcp code and aid code must exist in CAPMANdatabase.

    Parameters Type Description

    stagedRec StagingBeneficiary The staged record that shouldbe validated.

    Output Description

    bool True if valid otherwise false.

    Method Description

    IdentifyNewInvoices This private method will load historical invoices inhistoricalInvoices data member. It will passhistoricalInvoices and expectedInvoices as parameters toCalculateNewInvoicesmethod of CapitationInvoiceclassto identify the actual invoices. The returned values will be

    saved in invoiceToBeSaved.

    Parameters Type Description

    None

    Output Description

    none

    Method Description

    SaveData This private method should call saveInvoices method ofC it ti I i bj t It ill i i i

    820 Phase 2 Design Specif icat ions

    none

    Output Description

  • 8/2/2019 2.04 820 Design Specifications

    84/241

    p p

    None However an exception will be thrown if any error occursduring save and ExecuteProcesswill catch it.

    820 Phase 2 Design Specif icat ions

    6.7.3Sequence Diagram Process Capitat ion

  • 8/2/2019 2.04 820 Design Specifications

    85/241

    ProcessCapitation CapitationProcessor

    Receive MMCD File

    Log MMCD File Receipt

    Persisit MMCD to Staging

    ExecuteProcess

    SQLProcedures

    LoadStagedRecords

    InvoiceManager

    List

    LoadInvoiceDataByBene

    LoadInvoiceInfoList

    IList

    InvoiceInfoList

    CalculateNewInvoices

    SaveData

    UpdateInvoiceStatus

    LogInformation

    Log Invoice Processing Results

    CapitationReporter

    820 Phase 2 Design Specif icat ions

    3. ProcessCapitation objectpersists the MMCD file into staging tables in Persist MMCDto Staging

    4. ProcessCapitationcalls CapitationProcessorwith function ExecuteProcess to startthe calculation process

  • 8/2/2019 2.04 820 Design Specifications

    86/241

    5. CapitationProcessorcalls SQLProcedureswith function LoadStageRecords to loadthe Beneficiary records from the staging tables

    6. SQLProceduresreturns a list of StagingBeneficiaryobjects loaded from the stagingtables

    7. CapitationProcessorcalls InvoiceManagerwith function LoadInvoiceDataByBene toget the historical beneficiary records

    8. InvoiceManagercalls SQLProcedureswith function LoadInvoiceInfoList to loadhistorical beneficiary records

    9. SQLProceduresreturns a list of historical beneficiary records

    10. InvoiceManagerreturns a list of historical beneficiary records

    11. CapitationProcessorcalls InvoiceManagerwith function CalculateNewInvoices tostart the calculation using historical and current beneficiary records

    12. CapitationProcessorsaves the calculated beneficiary records with function SaveData

    13. CapitationProcessorupdates the invoice status to Pending with functionUpdateInvoiceStatus

    14. CapitationProcessorlogs the processing information with function c