🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.eiffel
Article #1647

The RA class library for accounting arithmetic -- corrected

#1647
From: Colin James III (The Rt Rev'd)
Date: Thu, 29 Jun 1995 00:00
184 lines
6028 bytes
Description and Request for Comment of the 
"RA class library for accounting arithmetic"
--------------------------------------------

1.  This is the initial, short description of the RA class library for

accounting arithmetic of reusable software components.

1.1.  It is designed using the methodology of Business Object Notation

(BON) and implemented in the computer programming language of Eiffel.


1.2.  This is also a request for comment (RFC).  Readers may submit 
remarks and suggestions to cjames@cec-services.com.


2.1.  The reference for the BON method above is:  Kim Walden and Jean-
Marc Nerson, "Seamless object-oriented software architecture :
analysis 
and design of reliable systems", 1995, Prentice Hall UK, ISBN:  0-13-
031303-3.

2.2.  The reference for the Eiffel programming language above is:  
Bertrand Meyer, "Object success : a manager's guide to object 
orientation, its impact on the corporation and its use for
reengineering 
the software process", 1995, Prentice Hall UK, ISBN: 0-13-192833-3.

2.3.  Both texts may be obtained through Interactive Software 
Engineering Inc. (ISE) of Goleta, CA, telephone 805.685.1006.


3.  The name of the library system is "Report Accounts [RA]".  The 
acronym coincides with the name of the pre-Ptolemaic Egyptian sun god
Ra 
because the initial analysis and design was completed in Cairo, Egypt 
from June 18/28, 1995.


4.  The names of the 4-class library clusters are as follows:

4.1.  Ledgers

4.2.  Accounts

4.3.  Transactions

4.4.  Reports


5.  The tentative names of some of the features of the algorithms for 
accounting arithmetic are as follows:

5.1.  entry_type
5.1.1.  increase
5.1.2.  decrease

5.2.  account_part
5.2.1.  credit
5.2.2.  debit

5.3.  account_type
5.3.1.  asset
5.3.2.  liability

5.4.  audit_mode
5.4.1.  post
5.4.2.  unpost


6.  The tentative names of the incomplete list of features for 
accounting reports are as follows:

6.1.  general_ledger_reports

6.2.  financial_reports
6.2.1.  balance_sheet
6.2.2.  income_statement

6.3.  accounts_reports
6.3.1.  receivable
6.3.2.  payable

6.4.  payroll_reports   

6.5.  depreciation_reports
6.5.1.  straight_line
6.5.2.  declining_balance
6.5.3.  sum_digits_years
6.5.4.  units_production

6.5.  invoice_reports


7.  The structure of the respective files is as follows:

7.1.  All transactions, sequential in time [SIT]

7.2.  All entry_comments of transactions, SIT
7.2.1.  Index on one field/column pointing to records

7.3.  All account file names, SIT
7.3.1.  Index on one field/column pointing to records

7.4.  All CPU names, SIT
7.4.1.  Index on one field/column pointing to records

7.5.  All transactions, SIT, for each respective account name above in
item 7.3.

7.6.  Hence there are 4-main files, 3-index files, and N-account
files.  
The file structure is bounded by the number of accounts. 


8.  The transaction file record currently contains the following 
information with field/column name (related object names) and basic
data 
type with required bit-widths for a specified range:

8.1.  sequence_number  (transaction_number)   INTEGER  48-bit

8.2.  time_stamp       (julian_date)          REAL     64-bit

8.3.  cpu-stamp        (multiple_cpu, 
                        parallel_cpu, and 
                        distributed_cpu)      INTEGER  40-bit

8.4.  file_number      (file_name)            INTEGER  32-bit

8.5.  audit_mode       (post, unpost)         BOOLEAN   1-bit

8.6.  account_type     (asset, liability)     BOOLEAN   1-bit

8.7.  account_part     (credit, debit)        BOOLEAN   1-bit

8.8.  entry_type       (increase, decrease)   BOOLEAN   1-bit

8.9.  entry_amount     (transaction_amount)   REAL     64-bit

8.10.  entry_detail    (entry_comment)        BOOLEAN   1-bit

8.11.  bit_switches    (reserved_bits)        BOOLEAN   3-bit

8.12.  The total size of the transaction record is 256-bits or 32
bytes.


9.  The library is being designed to comply with the requirement of 
generally accepted accounting principles (GAAP).

9.1.  This includes a completely reversible and invertible audit trail

where no transaction record can be changed.

9.2.  Line entries in accounts may be changed by first reversing the 
respective transaction, then processing a subsequent transaction.  


10.  All transacting, indexing, posting, and reporting are performed
in 
real-time.

10.1.  There is no batch processing in the library.

10.2.  The index files make use of the Binary Sort Access Method
(BSAM) 
which in July, 1995 should be trademark pending and patent pending.


11.  Thank you for this opportunity to disclose some of our recent
work.


12.  Colin James III, CEC Services, 2080 Kipling St, Lakewood, CO  
80215-1502, 303.231.9437, Facs 303.231.9438, cjames@cec-services.com.


~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Colin James III, Principal Scientist    cjames@cec-services.com
CEC Services, 2080 Kipling St, Lakewood, CO  80215-1502   U S A
Voice: 303.231.9437;  Facs: .231.9438;  ISDN: .462.1107 & .1448
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Technical Details
Message-ID: <3svchk$eq3@natasha.rmii.com>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: 1050bd,b1518d6b9a07922e,start
X-Google-Attributes: gid1050bd,public
X-Google-Thread: fac41,b1518d6b9a07922e,start
X-Google-Attributes: gidfac41,public
X-Google-Thread: fbe20,b1518d6b9a07922e,start
X-Google-Attributes: gidfbe20,public
X-Google-Thread: 1108a1,b1518d6b9a07922e,start
X-Google-Attributes: gid1108a1,public
From: cjames@cec-services.com (Colin James III (The Rt Rev'd))
Subject: The RA class library for accounting arithmetic -- corrected
Date: 1995/06/29
Message-ID: <3svchk$eq3@natasha.rmii.com>
X-Deja-AN: 105267027
organization: Rocky Mountain Internet Inc.
newsgroups: comp.lang.eiffel,comp.os.ms-windows.apps.financial,biz.comp.accounting,comp.object