SlideShare ist ein Scribd-Unternehmen logo
1 von 24
Downloaden Sie, um offline zu lesen
Namma Service
Cash Tracking System
Discussion on requirements, issues with data sources, technical
design for a flexible data holding framework, and work-in-progress
plans for a reconciliation engine.
Wednesday, January 31, 2007
Kiran Jonnalagadda <kiran.j@comat.com>

Requirements

Channelling Data

Blue Sky Plan

What’s wanted, what’s needed

Dealing with available information

Dreaming up what may be…
Requirements
Cash Tracking
Tra
n

sa

RDS/Bhoomi Records (SDC)
Telecentres

Cash Flow
Diagram

cti

on

Up
d

TC
Bank
Branches

ate

(D

ail

y)

Comat Records

TC
TC

TC
2pm next day

Paper PR
Records

BB

BB

TC
TC

TC

PR
BB

BB

TC
TC

TC

PR
BB

BB

Bank

Auditor

Back Office

Totals
Amount Collected

Via
T

onthly)

ce (m
Maintenan

IDTC (Daily)

Penalties
Incurred

)

in 2!
With since
days action
s
tran

(Monthly

3i Bank Account

Central
Bank
Accounts

IDTC
Recd.

Invoice

Refer to the printed copy

DM

TA Share

Area/District
Manager

GoK Share

C

Net MT

C min
us IDT
C

(Month

ly)

Legend:
Transaction Flow
Primary Information Flow
Reconciliation Information Flow
Cash Flow

Enhancemen
t

TC

Telecentre (physical structure)

TC

Records of telecentre (information structure)

(Quarterly)

GoK Bank
Account
Bank
Guarantee
Performance
Bank Guarantee

GoK

3%
t
(M o C
on MC
thl
y)
CMC
Account
Requirements
Analysis Using
User Stories

Actors

Activities

Defining system
requirements via
actors and their
activities, expressed
as “stories”

Stories
Available Data
Current Data Collection Processes
Transaction Reports
installed at the State Data
Centre provide a running
stream of transactions, but are
unreliable: if a certificate fails
to print, it is still recorded as a
successful transaction.
At least we’re assured they
didn’t miss anything.
Type of data:
individual transactions.
Current Data Collection Processes
Operators use the Intranet to
file daily reports.
Details are limited to what we
can expect to receive with a
reasonable level of accuracy.
Operators may not recall the
number of successful
transactions on a busy day,
for example, but can count
the cash at hand or the
number of wasted sheets.
Type of data:
daily totals and errors.

{
Current Data Collection Processes
The IDTC Transfer Grid, part
of the existing Transaction
Reports, records our transfer
to GoK and GoK’s transfer
back to us, with GoK’s Bank
validating the claimed figures.
What we need is similar
cooperation from our banks at
the individual branch level.
Any errors in transaction data
are propagated here.
Type of data:
daily total for per region.
Current Data Collection Processes
Our operations staff call
operators and area
managers every day to get an
update. While this gives us a
better sense of ground-level
activity than any automated
system, it is a laborious
process.
Any machine parseable data
currently being collected by
this process should be
replaced by software.
Type of data:
non-machine parseable
detail on operations.
Making Sense of It All
Putting Data on Rails
Double Entry Accounting
Ledger
RTC Service

Transaction
Split

(Income)

(Rs -15)

Transaction
Record
(Sum of Splits: Zero)

Ledger
Cash Collection

Transaction
Split

(Current Asset)

(Rs +15)

Well Defined

Transaction
From Data Streams
Split

To Transaction
Be Calculated
Record
Sample Ledger
Missing Data Streams
Ledger
RTC Service

Transaction
Split

(Income)

(Rs -15)

Transaction
Record
(Sum of Splits: Zero)

Ledger
Cash Collection
Imbalance

Transaction
Split

(To (Current Asset)
maintain integrity)

(Rs +15)

There is no data stream for the second split, so that must be
calculated and marked as such, for later reconciliation
Creating Balancing Splits
Ledger
RDS Services
(Reliable)

Ledger
RTC Service
(Unreliable)

n
tio

(Income)
Tran
s

c
sa
n
Tra

ile

acti

ons

Re

co

nc

Ledger
Cash
Collection

Operator’s
Stationery Error
Report Re

(Current Asset)

con

cile

Non-cash inventory ledger!

s

(Income)

Ledger
Wasted
Stationery
(Monthly Collections)

Re

con
cile

Operator’s
Collection
Report
Well Defined Data Types
Ledger

Ledger Group
Group
Membership

Ledger/Group
Value/Count
Total
Absolute or Period Totals

Reconciliation Set

Transaction

Transaction
Split

Reconciliation
Split
+ Flags

There are more, but these are the most critical data types
Blue Sky Plan
The Reconciliation Engine
Transactions and Deposits
Transactions

Rs 8,500

Deposits

Rs 6,375

Rs 4,250

Rs 2,125

Rs 0

1

2

3

4

5

6

7

8

9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
3-Day Moving Average
Transactions

Rs 4,000

Deposits

Rs 3,000

Rs 2,000

Rs 1,000

Rs 0

1

2

3

4

5

6

7

8

9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Security
Careful with the Details
Typical Security Model
Securing the Perimeter

The User Interface is the Perimeter
Once inside the Perimeter,
there’s no security. A single insecure entry
point compromises the entire system
Recommended Model
Security at the Core
User
& Machine Interface
Extended
API
Core
API
Core
Data
Recommended Model
Independent Modules Manage Their Own Security
Core
API

+C
Web Services

ache

Core
Data
Reconciliation
Engine

User Interface
Security
Framework

Users

Roles

Security is defined in
terms of Users, Roles,
Permissions and
Actions. Users have
Roles in specific
Contexts and Roles
have Permissions to
perform Actions.

Permissions
Contexts are
Ledgers and
Ledger Groups

Actions are
Pieces of
Code

Users are assigned roles in
particular contexts, such as
kiosk operators acquiring the
“Operator” role only in their
kiosk’s ledgers.

Each code function requires a
specific permission to be
used. Permissions are given
to roles, which in turn are
given to users.

Weitere ähnliche Inhalte

Ähnlich wie Namma service cash tracking system (January 2007)

IRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank Website
IRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank WebsiteIRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank Website
IRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank WebsiteIRJET Journal
 
IRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank Website
IRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank WebsiteIRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank Website
IRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank WebsiteIRJET Journal
 
Lead Time System (LTS) Detail Presentation
Lead Time System (LTS) Detail PresentationLead Time System (LTS) Detail Presentation
Lead Time System (LTS) Detail Presentationdynamicp
 
Introduction to Transaction Processing Chapter No. 2
Introduction to Transaction Processing   Chapter No. 2Introduction to Transaction Processing   Chapter No. 2
Introduction to Transaction Processing Chapter No. 2Qamar Farooq
 
Resume - CA Ankita Mathur
Resume - CA Ankita MathurResume - CA Ankita Mathur
Resume - CA Ankita MathurAnkita Mathur
 
Resume___Ajay_Prabhakar.
Resume___Ajay_Prabhakar.Resume___Ajay_Prabhakar.
Resume___Ajay_Prabhakar.Ajay Prabhakar
 
CRis Mac Solution for MIS-ADF
CRis Mac Solution for MIS-ADFCRis Mac Solution for MIS-ADF
CRis Mac Solution for MIS-ADFD2K Technologies
 
New Charts Architectures (2)
New Charts Architectures (2)New Charts Architectures (2)
New Charts Architectures (2)guestf73e68
 
IT Strategic Planning Arlington's Approach
IT Strategic Planning Arlington's ApproachIT Strategic Planning Arlington's Approach
IT Strategic Planning Arlington's ApproachHayley Oleksiak
 
Winter Simulation Conference 2021 - Process Wind Tunnel Talk
Winter Simulation Conference 2021 - Process Wind Tunnel TalkWinter Simulation Conference 2021 - Process Wind Tunnel Talk
Winter Simulation Conference 2021 - Process Wind Tunnel TalkSudhendu Rai
 
AI-Powered Streaming Analytics for Real-Time Customer Experience
AI-Powered Streaming Analytics for Real-Time Customer ExperienceAI-Powered Streaming Analytics for Real-Time Customer Experience
AI-Powered Streaming Analytics for Real-Time Customer ExperienceDatabricks
 

Ähnlich wie Namma service cash tracking system (January 2007) (20)

IRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank Website
IRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank WebsiteIRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank Website
IRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank Website
 
IRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank Website
IRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank WebsiteIRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank Website
IRJET- Web Scraping Techniques to Collect Bank Offer Data from Bank Website
 
PPT.pptx
PPT.pptxPPT.pptx
PPT.pptx
 
Lead Time System (LTS) Detail Presentation
Lead Time System (LTS) Detail PresentationLead Time System (LTS) Detail Presentation
Lead Time System (LTS) Detail Presentation
 
Resume anand new
Resume anand newResume anand new
Resume anand new
 
James hall ch 2
James hall ch 2James hall ch 2
James hall ch 2
 
ais6e-140422104321-phpapp02.pdf
ais6e-140422104321-phpapp02.pdfais6e-140422104321-phpapp02.pdf
ais6e-140422104321-phpapp02.pdf
 
Introduction to Transaction Processing Chapter No. 2
Introduction to Transaction Processing   Chapter No. 2Introduction to Transaction Processing   Chapter No. 2
Introduction to Transaction Processing Chapter No. 2
 
Resume - CA Ankita Mathur
Resume - CA Ankita MathurResume - CA Ankita Mathur
Resume - CA Ankita Mathur
 
Resume___Ajay_Prabhakar.
Resume___Ajay_Prabhakar.Resume___Ajay_Prabhakar.
Resume___Ajay_Prabhakar.
 
Real Time Gross Settlement
Real Time Gross SettlementReal Time Gross Settlement
Real Time Gross Settlement
 
Telecom Solutions
Telecom SolutionsTelecom Solutions
Telecom Solutions
 
Sap content
Sap contentSap content
Sap content
 
CRis Mac Solution for MIS-ADF
CRis Mac Solution for MIS-ADFCRis Mac Solution for MIS-ADF
CRis Mac Solution for MIS-ADF
 
New Charts Architectures (2)
New Charts Architectures (2)New Charts Architectures (2)
New Charts Architectures (2)
 
NeGD report
NeGD reportNeGD report
NeGD report
 
IT Strategic Planning Arlington's Approach
IT Strategic Planning Arlington's ApproachIT Strategic Planning Arlington's Approach
IT Strategic Planning Arlington's Approach
 
IT Strategic Planning Arlington's Approach
IT Strategic Planning Arlington's ApproachIT Strategic Planning Arlington's Approach
IT Strategic Planning Arlington's Approach
 
Winter Simulation Conference 2021 - Process Wind Tunnel Talk
Winter Simulation Conference 2021 - Process Wind Tunnel TalkWinter Simulation Conference 2021 - Process Wind Tunnel Talk
Winter Simulation Conference 2021 - Process Wind Tunnel Talk
 
AI-Powered Streaming Analytics for Real-Time Customer Experience
AI-Powered Streaming Analytics for Real-Time Customer ExperienceAI-Powered Streaming Analytics for Real-Time Customer Experience
AI-Powered Streaming Analytics for Real-Time Customer Experience
 

Mehr von Kiran Jonnalagadda

AirJaldi photo rout (April 2008)
AirJaldi photo rout (April 2008)AirJaldi photo rout (April 2008)
AirJaldi photo rout (April 2008)Kiran Jonnalagadda
 
The medium without the message (April 2008)
The medium without the message (April 2008)The medium without the message (April 2008)
The medium without the message (April 2008)Kiran Jonnalagadda
 
Python and Zope: An introduction (May 2004)
Python and Zope: An introduction (May 2004)Python and Zope: An introduction (May 2004)
Python and Zope: An introduction (May 2004)Kiran Jonnalagadda
 
Human database relations (March 2004)
Human database relations (March 2004)Human database relations (March 2004)
Human database relations (March 2004)Kiran Jonnalagadda
 
The technology of the Human Protein Reference Database (draft, 2003)
The technology of the Human Protein Reference Database (draft, 2003)The technology of the Human Protein Reference Database (draft, 2003)
The technology of the Human Protein Reference Database (draft, 2003)Kiran Jonnalagadda
 
Introduction to Plone (November 2003)
Introduction to Plone (November 2003)Introduction to Plone (November 2003)
Introduction to Plone (November 2003)Kiran Jonnalagadda
 
ZODB, the Zope Object Database (May 2003)
ZODB, the Zope Object Database (May 2003)ZODB, the Zope Object Database (May 2003)
ZODB, the Zope Object Database (May 2003)Kiran Jonnalagadda
 
Some dope on Zope (Jan 2002, Bangalore LUG)
Some dope on Zope (Jan 2002, Bangalore LUG)Some dope on Zope (Jan 2002, Bangalore LUG)
Some dope on Zope (Jan 2002, Bangalore LUG)Kiran Jonnalagadda
 
e-Governance in Karnataka: An introduction
e-Governance in Karnataka: An introductione-Governance in Karnataka: An introduction
e-Governance in Karnataka: An introductionKiran Jonnalagadda
 

Mehr von Kiran Jonnalagadda (13)

AirJaldi photo rout (April 2008)
AirJaldi photo rout (April 2008)AirJaldi photo rout (April 2008)
AirJaldi photo rout (April 2008)
 
The medium without the message (April 2008)
The medium without the message (April 2008)The medium without the message (April 2008)
The medium without the message (April 2008)
 
Python and Zope: An introduction (May 2004)
Python and Zope: An introduction (May 2004)Python and Zope: An introduction (May 2004)
Python and Zope: An introduction (May 2004)
 
Human database relations (March 2004)
Human database relations (March 2004)Human database relations (March 2004)
Human database relations (March 2004)
 
The technology of the Human Protein Reference Database (draft, 2003)
The technology of the Human Protein Reference Database (draft, 2003)The technology of the Human Protein Reference Database (draft, 2003)
The technology of the Human Protein Reference Database (draft, 2003)
 
Introduction to Plone (November 2003)
Introduction to Plone (November 2003)Introduction to Plone (November 2003)
Introduction to Plone (November 2003)
 
ZODB, the Zope Object Database (May 2003)
ZODB, the Zope Object Database (May 2003)ZODB, the Zope Object Database (May 2003)
ZODB, the Zope Object Database (May 2003)
 
XML-RPC and SOAP (April 2003)
XML-RPC and SOAP (April 2003)XML-RPC and SOAP (April 2003)
XML-RPC and SOAP (April 2003)
 
Some dope on Zope (Jan 2002, Bangalore LUG)
Some dope on Zope (Jan 2002, Bangalore LUG)Some dope on Zope (Jan 2002, Bangalore LUG)
Some dope on Zope (Jan 2002, Bangalore LUG)
 
User Management with LastUser
User Management with LastUserUser Management with LastUser
User Management with LastUser
 
Sustainability and bit-rot
Sustainability and bit-rotSustainability and bit-rot
Sustainability and bit-rot
 
e-Governance in Karnataka: An introduction
e-Governance in Karnataka: An introductione-Governance in Karnataka: An introduction
e-Governance in Karnataka: An introduction
 
Cyberpunk Sci-Fi
Cyberpunk Sci-FiCyberpunk Sci-Fi
Cyberpunk Sci-Fi
 

Kürzlich hochgeladen

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 

Kürzlich hochgeladen (20)

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 

Namma service cash tracking system (January 2007)

  • 1. Namma Service Cash Tracking System Discussion on requirements, issues with data sources, technical design for a flexible data holding framework, and work-in-progress plans for a reconciliation engine. Wednesday, January 31, 2007 Kiran Jonnalagadda <kiran.j@comat.com> Requirements Channelling Data Blue Sky Plan What’s wanted, what’s needed Dealing with available information Dreaming up what may be…
  • 3. Cash Tracking Tra n sa RDS/Bhoomi Records (SDC) Telecentres Cash Flow Diagram cti on Up d TC Bank Branches ate (D ail y) Comat Records TC TC TC 2pm next day Paper PR Records BB BB TC TC TC PR BB BB TC TC TC PR BB BB Bank Auditor Back Office Totals Amount Collected Via T onthly) ce (m Maintenan IDTC (Daily) Penalties Incurred ) in 2! With since days action s tran (Monthly 3i Bank Account Central Bank Accounts IDTC Recd. Invoice Refer to the printed copy DM TA Share Area/District Manager GoK Share C Net MT C min us IDT C (Month ly) Legend: Transaction Flow Primary Information Flow Reconciliation Information Flow Cash Flow Enhancemen t TC Telecentre (physical structure) TC Records of telecentre (information structure) (Quarterly) GoK Bank Account Bank Guarantee Performance Bank Guarantee GoK 3% t (M o C on MC thl y) CMC Account
  • 4. Requirements Analysis Using User Stories Actors Activities Defining system requirements via actors and their activities, expressed as “stories” Stories
  • 6. Current Data Collection Processes Transaction Reports installed at the State Data Centre provide a running stream of transactions, but are unreliable: if a certificate fails to print, it is still recorded as a successful transaction. At least we’re assured they didn’t miss anything. Type of data: individual transactions.
  • 7. Current Data Collection Processes Operators use the Intranet to file daily reports. Details are limited to what we can expect to receive with a reasonable level of accuracy. Operators may not recall the number of successful transactions on a busy day, for example, but can count the cash at hand or the number of wasted sheets. Type of data: daily totals and errors. {
  • 8. Current Data Collection Processes The IDTC Transfer Grid, part of the existing Transaction Reports, records our transfer to GoK and GoK’s transfer back to us, with GoK’s Bank validating the claimed figures. What we need is similar cooperation from our banks at the individual branch level. Any errors in transaction data are propagated here. Type of data: daily total for per region.
  • 9. Current Data Collection Processes Our operations staff call operators and area managers every day to get an update. While this gives us a better sense of ground-level activity than any automated system, it is a laborious process. Any machine parseable data currently being collected by this process should be replaced by software. Type of data: non-machine parseable detail on operations.
  • 10. Making Sense of It All Putting Data on Rails
  • 11. Double Entry Accounting Ledger RTC Service Transaction Split (Income) (Rs -15) Transaction Record (Sum of Splits: Zero) Ledger Cash Collection Transaction Split (Current Asset) (Rs +15) Well Defined Transaction From Data Streams Split To Transaction Be Calculated Record
  • 13. Missing Data Streams Ledger RTC Service Transaction Split (Income) (Rs -15) Transaction Record (Sum of Splits: Zero) Ledger Cash Collection Imbalance Transaction Split (To (Current Asset) maintain integrity) (Rs +15) There is no data stream for the second split, so that must be calculated and marked as such, for later reconciliation
  • 14. Creating Balancing Splits Ledger RDS Services (Reliable) Ledger RTC Service (Unreliable) n tio (Income) Tran s c sa n Tra ile acti ons Re co nc Ledger Cash Collection Operator’s Stationery Error Report Re (Current Asset) con cile Non-cash inventory ledger! s (Income) Ledger Wasted Stationery (Monthly Collections) Re con cile Operator’s Collection Report
  • 15. Well Defined Data Types Ledger Ledger Group Group Membership Ledger/Group Value/Count Total Absolute or Period Totals Reconciliation Set Transaction Transaction Split Reconciliation Split + Flags There are more, but these are the most critical data types
  • 16. Blue Sky Plan The Reconciliation Engine
  • 17. Transactions and Deposits Transactions Rs 8,500 Deposits Rs 6,375 Rs 4,250 Rs 2,125 Rs 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
  • 18. 3-Day Moving Average Transactions Rs 4,000 Deposits Rs 3,000 Rs 2,000 Rs 1,000 Rs 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
  • 20. Typical Security Model Securing the Perimeter The User Interface is the Perimeter Once inside the Perimeter, there’s no security. A single insecure entry point compromises the entire system
  • 21. Recommended Model Security at the Core User & Machine Interface Extended API Core API Core Data
  • 22. Recommended Model Independent Modules Manage Their Own Security Core API +C Web Services ache Core Data Reconciliation Engine User Interface
  • 23. Security Framework Users Roles Security is defined in terms of Users, Roles, Permissions and Actions. Users have Roles in specific Contexts and Roles have Permissions to perform Actions. Permissions
  • 24. Contexts are Ledgers and Ledger Groups Actions are Pieces of Code Users are assigned roles in particular contexts, such as kiosk operators acquiring the “Operator” role only in their kiosk’s ledgers. Each code function requires a specific permission to be used. Permissions are given to roles, which in turn are given to users.