I am new to requirements analysis and have a simple questions: Would you include the budget in the requirements, if e. g. the departments budget for running costs is 10k a year.
I disagree, cost should, no MUST be represented in some form.
Projected operating costs have an enormous impacts on a project. Making abstraction of this until the very end (when the product is actually sold) is an enourmous mistake.
Cost may not be a direct requirement but it should still be a driving force when writing these requirements.
I have seen a project completely derailed simply because the cost of configuring the system were never given an iota though space. It`s not that the configurability was not designed, it was, and it did follow all the technical requirements to the letter. Once all delivired they calculated all the costs to present for a bid and they were 5 times higher than anyone else in the bidding contest. Had the configuration costs been integrated in a requirement from the start this would have never happened.
Costs are much more than dollar value stuck on a shrink wrapped box. Software has to be maintained, updated, configured, installed etc. Cost can play a major role in key decisions made throughout the software design and production. Thus they should be known and parametrized as all other constraints affecting design... through requirements.
A functional requirement is one that the product must have to provide the capability needed by the ultimate user.¹
A nonfunctional requirement is a quality or property that the product must have.¹
Both are about the software itself, and not the management. Cost of producing the software has nothing to do in the requirements, since it doesn't describe the software itself and is not inherent to the software product, but to people.
Requirements should also be testable, which makes it impossible to include even maintenance costs. For example, how you would be able to verify, objectively, that the following requirement passes for a current version of software product?
The maintenance cost is inferior to $5 000 per year for the next ten years, the maintenance task being limited to the migration of the product to new hardware, performance monitoring, clearing of old logs and audit records, clearing of personal information about unregistered users and processing of legal requests related to the personal data collected by the product.
¹ Definitions taken from Managing Information Technology Projects: Applying Project Management Strategies to Software, Hardware, and Integration Initiatives by James Taylor, ISBN: 0814408117.
In general, software project requirements do not include pricing.
Pricing is generally included in
project bidding document for the project. Other than that, all the requirements are written to specify what is expected to be done.
Cost typically isn't listed among the functional requirements for software. That's at least partly because either only one copy of the product is needed, or because the marginal cost -- the cost of creating additional copies -- is close to $0 for software. However, per-unit cost can certainly be a requirement for other types of products. If you're designing the software for, say, a remote control, you only need to know what hardware you have to work with. If you're designing the entire device, on the other hand, you need to know how much the client is willing to pay to produce each additional device so that you can choose components that let you meet the functional requirements without losing money.