Changeset - 256bd6bfcc02
[Not reviewed]
0 1 0
Brett Smith (brett) - 7 years ago 2016-08-31 15:45:10
Better explain the functionality line between first and later releases.
1 file changed with 7 insertions and 4 deletions:
0 comments (0 inline, 0 general)
Show inline comments
@@ -116,52 +116,55 @@ built.
* CiviCRM integration: Many NPOs are already using CiviCRM.  CiviCRM
  integration would provide a familiar interface to users, and simplify
  system administration for the organization.  It may be possible to build
  the system as a CiviCRM extension.  If so, we would get this feature for
* Usable without JavaScript: For consistent mission advocacy, it's important
  that some organizations not require requestor to use JavaScript.  (e.g., Tor
  browsers typically have JavaScript disabled because it can undermine Tor's
  anonymity guarantees.)  It should be possible to submit payment
  requests without JavaScript.  The interface can be enhanced when JavaScript
  is available.
  Whether or not we do this in the first release probably depends on what
  framework we decide to build on.  If the framework itself requires
  JavaScript out of the box, it may make sense to have the first release go
  with the flow, then work to add JavaScript-free functionality in a later
  In any case, Javascript used will respect software freedom of users and, *if
  possible*, will adhere to LibreJS protocols.

## Requirements for later releases

These are features that we would ultimately like the system to have, but we
know aren't possible for the first version given time allotted for its
development.  It's good to keep them in mind when architecting, but also to
know that they've been considered and aren't immediately possible.
These are features that we would ultimately like the system to have.  We
would also like to release a first version as early as possible, to start
getting feedback from users and generating more development interest.  It's
good to keep these in mind when architecting—in particular, we may choose an
existing system to use, or framework to build on, based on its ability to
support these features.  However, they needn't be a focus of development
effort for the first release.

* Allow optional questions: With this, question conditions probably need to
be extended to address the case of "other question isn't answered"

* Additional exporters:
  * Export to SQLedger
  * [Certainly many more, feel free to add them here]

* Richer lifecycle management
  * Support requests for pre-approval, probably with two states
    "Pre-Approval In Progress" and "Pre-Approval Submitted."  In the
    Pre-Approval state, the requestor is submitting not receipts or
    invoices, but documents regarding potential expenses that have not yet
    been incurred, but for which organization policies require preapproval
    by organizational management ahead of time.  The appropriate management
    representatives are duly notified by the system of pending Pre-Approval
    requests, and their approval moves the request into the In Progress
    state.  Their rejection moves the request to the Rejected sate.

  * A leader may need to approve a request before
    it's added to the books, like an employee's manager or a program director

* Various currency improvements:
   * Automatic currency conversion for validation (e.g., validate that an amount
0 comments (0 inline, 0 general)