source: DESIGN @ f09f636

client
Last change on this file since f09f636 was c167f76, checked in by Alex Dehnert <adehnert@…>, 15 years ago

Expand DESIGN and README

  • Property mode set to 100644
File size: 1.9 KB
Line 
1Design of Remit
2===============
3
4Remit aims to be a general system for managing MIT student group finances.  The
5name comes from "MIT" and the term "remit": One core piece of functionality is
6generating the documentation required to make SAFO remit money to students.
7
8Core functionality objectives
9-----------------------------
10
11* Self-service reimbursement request submission --- individual members
12  should be able to request reimbursement through a web interface, providing
13  (almost?) all of the data required to generate a voucher
14* Allow multi-stage approval processes --- e.g., a committee chair approves
15  a reimbursement request and then the group treasurer approves the request
16* Integrate with budgeting, for example by notifying the treasurer before
17  approving a request for more money than remains in an account
18* Allow printing of vouchers
19* Support basic reporting
20* Allow import and export in useful formats (e.g., CSV)
21
22Basic financial support (finance_core)
23--------------------------------------
24
25finance_core provides a basic double-entry bookkeeping system.
26
27It includes the following core models:
28* BudgetArea, representing an account
29* BudgetTerm, representing a financial period
30* Transaction, representing a transaction
31* LineItem, representing a line item within a transaction
32
33This module uses the Treebeard project
34(http://docs.tabo.pe/django-treebeard/tip/) to implement a tree of BudgetAreas.
35
36Basic request and voucher workflow (vouchers)
37---------------------------------------------
38
39vouchers provides the core of the request/voucher workflow.
40
41It includes the following core models:
42* ReimbursementRequest, representing a single request
43* Voucher, representing a single generated voucher
44
45This package also currently includes the import_budget script, designed to
46take a budget spreadsheet and committee list like the UA has and automatically
47input it into the system. The script should probably be moved out into a new
48"tools" project or the like.
Note: See TracBrowser for help on using the repository browser.