Well, the solution needs to support multi-tenant as-a-service (in the cloud), as well as on-site (hosted), single tenant deployment.
The catalog of items is expected to be between 10 and 10000 items per tenant.
Conceivably, there could be hundreds or thousands of users in the aaS offering, each with 10-10000 items listed. Items will be tracked, bought (leased), returned, supported, reported, etc.
Current planned subsystems are personnel management (owner, manager, employee management), catalog management, maintenance (service tickets), financial, marketing (pricing and advertising specials).
My thought is the more common scenario will be install-per-client and not the aaS offering - but my client wants to support both.
The plan is to implement personnel management and catalog management first as these are core, then the maintenance, marketing, and finally financial management (all either COTS or custom depending on features and licensing).
My client has a budget and I am architecting for the purpose of giving them estimates on each piece - and whether they should buy vs build.
Build is going to be the only way to deliver some of their requirements - so they need cost estimates for go/no-go.
The system needs to be extensible out-of-the-box, as well as support reports/audits that only ESing can provide.
Laws dictate that most aspects of the system (ownership, unit description, price, etc) be tracked and capable of being reported on point-in-time scenarios. it has to be provable that “On 5/28/2013, this unit looked like XYZ and was owned/operated by ABC and leased by 123 for the price of $$$”. Plus, the types of reports are very much in-flux. Classing Event Sourcing requirement it seems to me.
Thanks,
Will