You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 13 Next »


Overall architecture

Server layout


Sequence Diagram

Requirements

  1. Create 'My projects' tab where users can see their past projects that they have run
  2. Crate class 'SingleLocationProject' (in future will have 'MultipleLocationProject')
  3. Minimum information for project (1) title (2) location (lat/lon)
  4. Additional project information includes Vs30 value. If differs too much from snapped location, flag.
  5. In Disagg calculator, allow project location to be selectable


Open / Create a New Project



SeisTech_Open_New_Project

SeisTech_New_Order


Questions





Do we charge for each IM for the same location? (ie. different order for an IM?)

Simplest implementation will be checking the particular combination of data (userID, location, service details ) has a purchase history match. If yes, free of charge. Otherwise, proceed to Order.

Initially we focus on "products" - disaggregation and gm selection. Where user can freely play with various parameters without extra charge once purchased


Bulk order discount? If user wants all IMs? Do we set maximum threshold that gives everything?

Simplest implementation will be setting a maximum threshold for a project and charges $0 once the threshold exceeds.

Academic users can have maximum threshold = 0

Monetisation scheme will be further explored later.


If a user-specified location is snapped to one location that matches an existing project : Should we merge this project to the existing one? (free of charge?)

Simpler to merge to an existing project, but less revenue.

Seems unfair to the end-user client who paid the money, while other end-user clients employing the same consultant getting free-ride.

We charge again. Each project is linked to user-specified location (not snapped one, without detailed info of snapped one omitted).

ER Diagram



Next Steps

  • Reach an agreement on the architecture design
  • Identify modules and separate them
  • Determine input and output interface and document : Follow comment standards
  • Implement DB and basic skeleton






  • No labels