Deletions are marked like this. | Additions are marked like this. |
Line 92: | Line 92: |
1. Complete Six-payments interface - '''DS''' 1. Implement manual payments. For handling systems given away & systems paid by invoice 1. Implement non-CHF currencies. Currently everything hard-coded to CHF 1. Implement VAT handling. Policy is that one price charged and we pay the VAT for CH customers 1. Implement receipt generation 1. Implement allowing other users to pay for a system 1. Consider implementing a payment system ''test mode'' for Cucumber testing |
== MAPS Features == 1. VAT Handling 1. Invoice/Receipt generation 1. User emails 1. New purchase 1. Upgrade 1. Expired purchase 1. New payment 1. 3rd Party purchases, i.e. purchase by other than system owner 1. Manual payments 1. Alternate currencies 1. Recurring Payments 1. Payments admin screen to detect expired purchases, set status and send reminder emails. 1. Limit reporting and checking == Technical == 1. Review TODO's in code. 1. Merge back to main branch 1. Add Alan's notification mechanism for; 1. Successful payments 1. First time purchases 1. Failed payments 1. upgrades 1. Delayed_job logging 1. Testing Payments 1. How to do 1. Test cases and coverage 1. Testing coverage tool 1. Admin tool 1. Payments processing admin screens, i.e. verification and ''paycomplete'' on SIX_PAYMENTS admin screens. 1. Document messaging/call tree for payments; 1. New purchase 1. Renewal/extension 1. New purchase 1. Upgrades 1. Successful purchase bug 1. Multiple payments handling; 1. During provisioning 1. After provisioning 1. Before after upgrade 1. Remove purchase.start_date? < redundant 1. Purpose of is_valid on purchase <- redundant? 1. Change purchase_date to be the last payment date? 1. Replace link_to with button_to for buttons. 1. Dry out purchase views and purchase controller. 1. Remove static_pages for works_pricing and works_pricing_options. Move works_pricing_options to works_products controller. 1. Set status on expired purchases to ''EXPIRED'' 1. Using delayed_job? or admin screen? 1. Extend with multiple duration options. 1. Review Payment reference usage? 1. Remove is_in_maintenance on product_instance. 1. Review auth rules for purchases payments etc. == MAPS Other == 1. Report expired purchases (screen or email report) 1. Complete provisioning delayed job 1. Add admin page to view delayed_job table? <- use rails_admin gem. == MAPS non-Payment System Items == |
Line 105: | Line 161: |
Line 112: | Line 169: |
|| [[#User Management|User Management]] || AH/TN || '''open''' || '''open''' || Ready for AH/TN specification || || [[#User Permissions|User Permissions]] || AH/TN || '''open''' || '''open''' || Spec. from JK done || |
|| [[#User Management|User Management]] || done || started '''TN''' || '''open''' || Ready for AH/TN specification || || [[#User Permissions|User Permissions]] || done || started '''TN''' || '''open''' || Spec. from JK done || |
Line 120: | Line 177: |
=== Lower Priority Items === | === V2 Lower Priority Items === |
Line 130: | Line 187: |
1. Awaiting final review |
|
Line 133: | Line 192: |
1. Final check of JK review notes to make sure everythign is complete - '''TN''' | 1. Final check of JK review notes to make sure everything is complete - '''TN''' |
Line 137: | Line 196: |
1. Ability to manage external users. E.g. transmittal recipients 1. External users will not be registered in MAPS 1. All users with logins will be registered in MAPS 1. Ability to enable/disable internal & external users 1. Ability to put users into ''org chart'' to allow delegation user management |
1. See V2UserManagement for details |
Line 145: | Line 200: |
1. See [[V2UserManagement#Permission_Levels|V2UserManagement Permission Levels]] for details |
|
Line 147: | Line 205: |
1. This is the ability to have a category field in objects (docs, revs, tasks, users, etc.) which determines set of classification fields associated with an object 1. E.g. docs with category ''Correspondence'' could have classifications ''sender'', ''receiver'', ''contract'' 1. Docs with category ''Drawing'' could have classifications ''discipline'', ''work type'' 1. Essentially this will be implemented with a many-to-many link table between classification_classes and the object's classificataion class |
|
Line 149: | Line 212: |
1. TN has implemented transmittal new/update using ''nested form'' 1. This will allow a cancel when updating classifictation fields 1. The task is to re-factor the new/update to also use ''nested form'' screens for the following trnsactions: 1. Document/Revision 1. Tasks 1. Users 1. Other? |
|
Line 151: | Line 222: |
1. This is the ability to create a transmittal, based on project receiving a transmittal 1. The transmittal cover letter and accompanying documents would be registered as documents/revisions in the system 1. A transmittal would be created with the cover letter and documents, and simply marked as ''received'' (with a date) 1. '''Issues''' 1. Is special handling for the transmittal's cover letter needed 1. Should it be possible to record both the transmittal date (the sender's date) and the actual date of receipt by the project? 1. Ideally we could handle this later when we implement workflows |
|
Line 156: | Line 236: |
|
|
Line 159: | Line 237: |
== Main Issues == 1. The Amazer server used to host the SoftXS Web Site and the Hydro Demo has problems: 1. Performance varies between acceptably fast and unbearably slow 1. When more than one person accesses the web site and/or the demo at the same time there are frequent ''Phusion Passenger'' errors, probably caused by running out of memory 1. We should therefore: 1. How the web site and demo system on our own, more powerful server 1. Learn more about the performance characteristic of Amazon EC2 servers 1. Perhaps purchase a t1.micro server for a short time and see if paid for server are better |
V2 ToDo List
Introduction
Immediate Goals
Complete final V2 MVA features & configuration
Get V2 into the hands of reviewers
Deliver V2 to first paying customer
Planning
AH/JK - agree JK tasks/priorities & update JK Work Schedule wiki page - highest priority
JK - update V2UsabilityReview wiki page - high priority
Review & update V2LaunchPlan - lower priority
Working Sessions 4-18 November 2013
Define V2 release Road Map - AH/JK by phone, based on notes to be supplied by JK (AH/JK 2013-11-05, Tue at 11:30).
Usability review - AH/JK working separately
Develop Demo scenarios & write end-user documentation - AH/JK
Design User roles & Project Structures - Schedule AH/JK working session (mid/late this week?)
Design of Incoming Transmittals, potentially required for first customer
Sales & Marketing
General
- Follow-up on Tokyu offer
- Prepare offer for Aegir for Sisimiut archive system
- Review V2 pricing in light of Hydro-2013 survey results
- When the MAPS payment processing is implemented and tested:
- Sign-up for Six payments:
Write up online purchase terms & conditions (AGB)
Review finances & ensure funding to mid-2014
Web Site
Review web pages for spelling & grammatical mistakes & make corrections - AH
Install new Features web page text - AH
PM Handbook - JK
- PM Handbook to be composed of three parts:
Project Management - General, not V2 specific
User's Guide to Works Organiser
Configuration Handbook - including a Configuration Checklist
- Complete PM outline
- Identify initial chapters to write
- Start writing chapters
Will there be Quickstart Guide as part of the PM Handbook? - priority?
- PM Handbook to be composed of three parts:
Look into Google (or other) web analytics - JK
Demo Systems
Define Scoping Statement for each proposed demo system - JK
- Make prioritized list of demo systems to produce. Proposed list:
Engineering Team Collaboration
Proposal Preparation
Metro system
Drawing Manager
Meeting Manager
Site Investigations
- Make list of important transactions to demonstrate
- Demo system implementation:
Update (minimum required) demo configuration & configure demo accordingly
- Create demo data
- Write up user instructions/documentation
- Make prioritized list of demo systems to produce. Proposed list:
Final updates to Hydro demo - JK
- Final tuning of WBS
Complete minimum recommended configuration
More documentation for Hydro demo - JK
- Define what documentation is needed
Implement Engineering Collaboration demo - JK
Implement Proposal Preparation demo - JK
V2 System Trials
Emails to trial system reviewers - AH
- Robert Bartlett
- Aegir Johannsson
- Harald Schmitt
- Anthony Sullivan
Consider getting reviewers to assist creating example configurations - AH/JK
MAPS
MAPS Features
- VAT Handling
- Invoice/Receipt generation
- User emails
- New purchase
- Upgrade
- Expired purchase
- New payment
- 3rd Party purchases, i.e. purchase by other than system owner
- Manual payments
- Alternate currencies
- Recurring Payments
- Payments admin screen to detect expired purchases, set status and send reminder emails.
- Limit reporting and checking
Technical
- Review TODO's in code.
- Merge back to main branch
- Add Alan's notification mechanism for;
- Successful payments
- First time purchases
- Failed payments
- upgrades
- Delayed_job logging
- Testing Payments
- How to do
- Test cases and coverage
- Testing coverage tool
- Admin tool
Payments processing admin screens, i.e. verification and paycomplete on SIX_PAYMENTS admin screens.
- Document messaging/call tree for payments;
- New purchase
- Renewal/extension
- New purchase
- Upgrades
- Successful purchase bug
- Multiple payments handling;
- During provisioning
- After provisioning
- Before after upgrade
Remove purchase.start_date? < redundant
Purpose of is_valid on purchase <- redundant?
- Change purchase_date to be the last payment date?
- Replace link_to with button_to for buttons.
- Dry out purchase views and purchase controller.
- Remove static_pages for works_pricing and works_pricing_options. Move works_pricing_options to works_products controller.
Set status on expired purchases to EXPIRED
- Using delayed_job? or admin screen?
- Extend with multiple duration options.
- Review Payment reference usage?
- Remove is_in_maintenance on product_instance.
- Review auth rules for purchases payments etc.
MAPS Other
- Report expired purchases (screen or email report)
- Complete provisioning delayed job
Add admin page to view delayed_job table? <- use rails_admin gem.
MAPS non-Payment System Items
- Review user management to check if any updates are required
Implement skeleton for V2 deployment daemon - AH
Complete implementation of Questionnaire module - AH
Implement display of audit trail - AH
- Investigate Google analytics?
V2
V2 To Do - Summary
Description
Spec.
Coding
Review
Notes
done
done
JK
Ready for final review
done
done
TN
Review by TN to see if anything else needs work
done
started TN
open
Ready for AH/TN specification
done
started TN
open
Spec. from JK done
AH/TN
open
open
Concept defined
AH
open
open
Concept defined
done
open
open
AH/TN
open
open
done
open
JK
Check all necessary transactions are present and there are no locking issues
V2 Lower Priority Items
Write Workflow & User Role working paper in preparation for working session - JK
- Write up requirements for Pöyry Uma Oya system (first V2 customer)
Review to check if all back links & cancel buttons have been removed - AH/TN
Implement display of audit trail (mainly for transmittal downloads) - TN
Transmittals
- Awaiting final review
File Handling
Final review of multi-file uploads - JK
Final check of JK review notes to make sure everything is complete - TN
User Management
See V2UserManagement for details
User Permissions
See V2UserManagement Permission Levels for details
Classifications by Category
- This is the ability to have a category field in objects (docs, revs, tasks, users, etc.) which determines set of classification fields associated with an object
E.g. docs with category Correspondence could have classifications sender, receiver, contract
Docs with category Drawing could have classifications discipline, work type
- Essentially this will be implemented with a many-to-many link table between classification_classes and the object's classificataion class
Nested Form Rework
TN has implemented transmittal new/update using nested form
- This will allow a cancel when updating classifictation fields
The task is to re-factor the new/update to also use nested form screens for the following trnsactions:
- Document/Revision
- Tasks
- Users
- Other?
Incoming Transmittals
- This is the ability to create a transmittal, based on project receiving a transmittal
- The transmittal cover letter and accompanying documents would be registered as documents/revisions in the system
A transmittal would be created with the cover letter and documents, and simply marked as received (with a date)
Issues
- Is special handling for the transmittal's cover letter needed
- Should it be possible to record both the transmittal date (the sender's date) and the actual date of receipt by the project?
- Ideally we could handle this later when we implement workflows
Delete Transactions
Review if all necessary 'delete' transactions are completed - AH/TN
Infrastructure
Main Issues
- The Amazer server used to host the SoftXS Web Site and the Hydro Demo has problems:
- Performance varies between acceptably fast and unbearably slow
When more than one person accesses the web site and/or the demo at the same time there are frequent Phusion Passenger errors, probably caused by running out of memory
- We should therefore:
- How the web site and demo system on our own, more powerful server
- Learn more about the performance characteristic of Amazon EC2 servers
- Perhaps purchase a t1.micro server for a short time and see if paid for server are better
Server Setup
Setup 8-core Intel rack-mount server to replace existing zg-3 server - AH
Memory upgrade: Determine what SIMMs to buy & order 32 GB memory (approx. 400 CHF)
Install Ubuntu 12.04.3 LTS Server
- Setup 2 x 4TB mirrored disks
Install VirtualBox & Vagrant
- Setup basic VMs
rinetd port forwarder
- Gateway VM
- Web server VM for zg-3.softxs.ch
- Setup packet filter?
Setup VM suitable for hosting DrawMGT
Install rackmount server in Datawire data center in Cham - AH
Bring back existing zg-3server, which has 8-cores & 12 GB main memory
Migrate all existing services from zg-1 server onto VMs on zg-3 server - AH/TN
Setup old zg-3 server just like new one, for replacing current zg-1 server - AH
Buy AWS EC2 micro image for a year & see if performance is significantly better than free tier - AH
Complete implementation of Puppet-managed DNS for DMZ - AH
Monitoring prototype - AH
Deployment & Operations
Setup automated backups of for documents & database www.softxs.ch - AH
Setup automated database reset for demo.softxs.ch/hydro - AH
Setup email on az-1.softxs.ch server - AH
Test VM-based V2 deployment on Ubuntu-based hosts - AH
Currently implemented for VMs on FreeBSD
Implement additional deployment tasks: - AH
- Event daemon cronjobs
- Backup jobs
- Log rotation jobs