Drupal Application Development Quote
In order to provide you with an accurate quote we will need the things listed below. If something is not clear, see the explanations below.
Required documentation
- Project Goals (required)
- Use Cases (ideally in the UML)
- A couple of scenarios (one instance of a use case)
- Non-functional Requirements
- Interactions with third-party applications and systems (like Web Services, external databases, XML RPC, etc).
Recommended documentation
- Class Diagrams with relationships and multiplicity
- Wireframes (required if the quote should contain theming)
- Site Navigation
If you cannot provide the required documentation we will not be able to provide you with a quote. We can create the documentation with you for an extra charge (£100/hour).
Please be aware that requests like "I want a site like MySpace" will not be treated seriously, and extracting documentation from an existing web page will incur an extra charge.
Explanations
1. Project Goals
Example:
"Allow users to buy our existing products on-line and pay via credit card"
2. Use Cases
Describes functionality abstracted from any implementation.
3. Scenarios
Example:
Preconditions
- User has an "invoice issuer" role and is active
- User is logged in
Actions
- User clicks on "New Invoice" button
- User clicks on "New Client" button
- User provides the following information: Company Name "Foo company inc.", Address: "13 Nowhere street, SE3 9SW London, United Kingdom"
- User submits the client form
- Issue date is automatically filled in with the current date
- User selects their company from a dropdown menu "Our Company Limited"
- User clicks on "Add item" button
- User adds following item: Name "Foo item", Quantity: 5, Unit: "litres", Unit prices: £100
- User selects payment terms "pay by cash"
- User submits the invoice
- User clicks on "print the invoice" and prints it
Post conditions
The invoice has been successfully created.
4. Non-functional requirements
- Average and maximum page load time
- Minimum throughput (pages per minute)
- Maximum number of users
- Predicted page views per second
5. Interactions with third-party applications and systems (like Web Services, external databases, XML RPC, etc)
If your application is going to retrieve data from or send data to another system, we should know this in advance.
Some common examples:
- credit card payment
- SMS voting
- integration with current system