Planning
Requirements
Requirements checklist
Definizione del progetto web
Case study
Using Agile to Recover a Project
How to Avoid Project Failure
Project Triangle
Requirements Are Not
Feed The Beast
How they make it
Laws of Computer Programming
Computer Programming Quotes
Bug fixing and reparations
Eight Tips on How to Manage Feature Creep
Avoid Scope Creep in Enterprise Software Implementation
Top 16 Things That absolutely Annoy Programmers
Universal methods of reducing complexity
Requirements checklist  
Requirements checklist
Requirements describe in detail what a software or web system is supposed to do, and they are the first step toward a solution. You decide on the scope of the system before you begin programming or web development.


Requirements checklist
--------------------------------
Requirements Checklist
--------------------------------

The requirements checklist contains a list of questions to ask yourself about your project's requirements. This page doesn't tell you how to do good requirements development, and the list won't tell you how to do one either. Use the list as a sanity check at construction time to determine how solid the ground that you're standing on is where you are on the requirements Richter scale.

Not all of the checklist questions will apply to your project. If you're working on an informal project, you'll find some that you don't even need to think about. You'll find others that you need to think about but don't need to answer formally. If you're working on a large, formal project, however, you may need to consider every one.
----------------------------------------
Specific Functional Requirements
----------------------------------------
Are all the inputs to the system specified, including their source, accuracy, range of values, and frequency?
Are all the outputs from the system specified, including their destination, accuracy, range of values, frequency, and format?
Are all output formats specified for Web pages, reports, and so on?
Are all data interfaces specified?
Are all the external communication interfaces specified, including handshaking, error-checking, and communication protocols?
Are all the tasks the user wants to perform specified?
Is the data used in each task and the data resulting from each task specified?

--------------------------------------------------------
Specific Nonfunctional (Quality) Requirements
--------------------------------------------------------
Is the expected response time, from the user's point of view, specified for all necessary operations?
Are other timing considerations specified, such as processing time, data transfer rate, and system throughput?
Is the level of security specified?
Is the reliability specified, including the consequences of software failure, the vital information that needs to be protected from failure, and the strategy for error detection and recovery?
Are minimum machine memory and free disk space specified?
Is the maintainability of the system specified, including its ability to adapt to changes in specific functionality, changes in the operating environment, and changes in its interfaces with other software?
Is the definition of success included? Of failure?

----------------------------
Requirements Quality
----------------------------
Are the requirements written in the user's language? Do the users think so?
Does each requirement avoid conflicts with other requirements?
Are acceptable trade offs between competing attributes specified for example, between robustness and correctness?
Do the requirements avoid specifying the design?
Are the requirements at a fairly consistent level of detail? Should any requirement be specified in more detail? Should any requirement be specified in less detail?
Are the requirements clear enough to be turned over to an independent group for construction and still be understood? Do the developers think so?
Is each item relevant to the problem and its solution? Can each item be traced to its origin in the problem environment?
Is each requirement testable? Will it be possible for independent testing to determine whether each requirement has been satisfied?
Are all possible changes to the requirements specified, including the likelihood of each change?
Requirements Completeness
Where information isn't available before development begins, are the areas of incompleteness specified?
Are the requirements complete in the sense that if the product satisfies every requirement, it will be acceptable?
Are you comfortable with all the requirements? Have you eliminated requirements that are impossible to implement and included just to appease your customer or your boss?


***************************************************************
Check this website requirements guide before you select your website development company.

0. Make sure you have access and ownership of your hosting account
We want our clients to have control of their asset. Too many times we have seen clients change suppliers because they haven't had control of their site and are annoyed that they are locked in.

1. Ensure you can change content (text and images) on your site
We have had many new clients who have lost control of their website and are being charged exorbitant fees just to make minor changes to their site. We believe you should be able to make text and image based changes to your site.
If you want to edit your website, make sure you have a system that allows you to edit ALL content, sections and pages. Check out what content management system is being used


2. Is a Content Management System Database Driven?
If you want your website to be dynamic, searchable and flexible - you should make sure your Content Management System is database driven. Again this will save you costs in any future development. Unless your website is Dynamic / Database driven you won't be able to serve your website on different devices like the iPhone.

3. Make sure the web system can be easily optimised for search engines
Now this is a tricky one. We have found many web agencies say that they understand search engine optimisation - but the reality is they don't. Often they will develop a site in adobe flash which is not search engine friendly or provide you with a search engine friendly content management system. Your content management system should include features that you can alter your page titles, meta description and keywords. Ideally, you should also be able to adjust all metatags. You should also be able to prevent some pages being indexed in search engines, if you wish so.

4. Ensure you retain ownership of Your Site
Some website developers try and lock you in and own the graphics and logo on your site. They do this by sending agreements that are assumed to be accepted on payment of your invoice. Often this means the graphic designer will lock you in for the logo or graphics that they used on your site. This means that if you ever want to move suppliers, you will charged a fee to release their intellectual property.
Make sure you hold (co)copyright the Code and that it is hosted on your website.


7. Make sure your website is scalable and expandable in future
So you can easily add extra features like eCommerce & mailing list systems that are completely integrated. This again will protect your investment.

8. You can easily Upgrade and maintain the control
With us you have control of your website. We can provide custom web (re)design solutions that you own. This is something you should aim for.