10 Checklist For Starting A Software Business

I am eager to write something based on my experience in the software business. Hey, it is a good reminder for me in the future as well!

1. Backup Plan

Do you have a software or script to backup both database and raw files regularly?

2. Failure Plan

What do you do when things fall apart? How do you retrieve the backups? What happens if there is a motherboard failure? What is the worst that can happen? What happens if the server is hacked?

3. Monitoring Plan

How do you monitor the cpu, disk usage? If using a software, what service do you need to monitor? How does the software alert you in times of emergency?

4. Upgrade Plan

Are you able to upgrade the existing software and hardware easily? What is the impact if you want to implement new technologies to your existing system?

5. Test Plan

Do you have a test environment? What do you need to do if you want to test new changes to the software or hardware?

6. Security Plan

Where do you store the passwords? Is there a centralised user authentication plan? Do you have different layers of defence if unauthorised user logins into the server? Restricted access to server room? Temperature control?

7. Collaboration Plan

What do you need to do in order of mulitple people to work on the same project concurrently? Do you have a centralised repository system?

8. Human Resource Plan

What happens if your lead developer leaves today? Do you have another person who can cover his/her duties temporarily? Do you have a knowledge sharing portal for other staff to pick up new skills easily? Do you leave enough room for developers to upgrade themselves? Is there a project manager? Is there enough accountability and who does what?

9. Documentation Plan

How long do you keep server logs? Does your software log what the user is doing and tells your enough when things fail? Do you write User Acceptance Testing Document? Is there enough end-user and developers documentation?

10. Budget Plan

Did you try to cost cut too much? Did you set aside enough budget for emergencies, software, hardware upgrades, social and drinks?