The kindergarten information site has specific requirements, same as any other project. Normally the requirements are specified in some requirement document or RFP. Unfortunately, for this kind of project I have to make the requirements and analyze the consequences.
The requirements can be divided in 3 categories:
- Functionality requirements – what is the site required to do.
- Non functional requirements, also known and quality attributes – how well then site is required to be.
- Security functionality – the security model and information management within the site.
Since no end users are available, the requirements are specified here:
- functionality requirements:
- the website should allow presenting information regarding activities of each child, joint and separated.
- Information is one of several categories and includes comments.
- The information should be entered in a table, as easily as possible
- non functional requirements:
- support up to 20 parents and children
- support any browser and operating system
- support customization of the website css and users
- can be deployed in secure environment
- suitable for hosting
- fast development time
- security requirements
- segmentation of information between parents and staff
- support of authentication and anti spoofing
- use safe password storage mechanism
These are some really basic requirements allowing for analysis and initial decisions to be taken.
Operating system, language and database is a no brainer, as I support Linux and open source, so its LAMP: Linux, Apache, Mysql and PHP.
Regarding the 4 questions for a basic project:
What: web site for information sharing between kindergarten and parents:
How: develop a website software using PHP in LAMP configuration.
How much: one site, supporting up to 20 children.
When: Start now and actual use by end of August.
As you can see, even with very sketchy requirements, some basic design and architectural decisions can be taken.
If you read this far, you should follow me on twitter here.