Overview
This document is an attempt to put together a complete, flexible for the specification of dharma-netcafe designs and development planning. Wherever possible, I have tried to provide guidelines (instead of prescribing requirements) for the contents of various sections and subsections of the document. Some may prefer to require more detailed subsections of a particular section, choosing one or more of the subsection topics from the list of guidelines provided.
There are many open source project out there with the same goals with this project. The differences are placed on the way this project is taken, from initial development and planning until this software ready to use worldwide.
Having observed and gleaned information from many sources, I finally found the leak and weaknesses of the same aim project which will on this project.
It is my desire that a completed software design specification meet the following criteria:
- It should be able to adequately serve as training material for new project members, imparting to them enough information and understanding about the project implementation, so that they are able to understand what is being said in design meetings, and won't feel as if they are drowning when they are first asked to create or modify source code.
- It should serve as "objective evidence" that the designers and/or implementors are following through on their commitment to implement the functionality described in the requirements specification.
- It needs to be as detailed as possible, while at the same time not imposing too much of a burden on the designers and/or implementors that it becomes overly difficult to create or maintain.
Some approaches to outcome those aims above are related to software compatibility, user friendly and well documented.
back to top
Architecture
Major Elements
Client/Server is a scalable architecture, whereby each computer or process on the network is either a client or a server. Server software generally, but not always, runs on powerful computers dedicated for exclusive use to running the business application. Client software on the other hand generally runs on common PCs or workstations. Clients get all or most of their information and rely on the application server for things such as configuration files, stock quotes, business application programs, or to offload compute-intensive application tasks back to the server in order to keep the client computer (and client computer user) free to perform other tasks.
Properties of a server:
- Passive (Slave)
- Waiting for requests
- On requests serves them and send a reply
Properties of a client:
- Active (Master)
- Sending requests
- Waits until reply arrives
Functional/logic view
Physical/deployment view
back to top
Features Provided
Linux/Win32/MacOS Compatible
You can use this software on any operating system.
Linux/Win32/MacOS depending on which os option you will build
Unlimited Clients
All client computers are managed from Server. Price, options, employees, point of sale and unlimited clients can be setup.
Point of Sale Management
Sell drinks, food/snacks, hardware and charge other services (or add items to the customer's bill).
Reports & Statistics
You can check out total earnings and charged items for a specified time period, computer, employee or type of service.
Membership
Prepaid regular customers login with username and password. There are many options to setup including configurable price per hour, accessing options, unlimited usage etc.