If you are considering a custom database software or web development project there are many factors that you must consider over and above the software design to avoid cost overruns and ensure a successful project. This comprehensive post discusses many of these factors.
Database Design
Provide the developers as many hard-copy or electronic doc and spreadsheet examples of the data that will be in the system. This information will be inventoried and added to the relational database design. An important concept to keep in mind is that of a data-driven software design. This means that an administrator can log into the system and add capabilities. An example is a system that has home phone and work phone capabilities. An admin can log into the system and add mobile phone, fax #, email address, and any other point of contact needed – with no costs for software development.
Security Logins
How many different groups will need to access the system? Once these groups are defined users will be added to the groups. Here are typical security groups and capabilities for a custom database software system:
• Data Entry – can only add data
• Manager – can add, edit, approve
• Senior Business Manager – can add, edit, approve and view all reports
• Administrator – can do all of the above and can change system configuration
Main Software Features
Functional Features
This is your punch list of features. This is usually the reason for the custom software project. Be as clear as possible, and describe the business reason for the important features to give the developer insight into its design features.
Important Website Pages
If the application will be online then make sure to include the content for all pages that will be needed to support the business and application. Some examples are:
• Home page –
• Contact Us
• About Us
• Sitemap – Visitor and XML Formats (for search engines)
• Support
Professional Copywriting
Since your website is an important branding aspect of your company you should seriously consider having a professional copywriter write the website content. Avoid brochure ware and make sure it is benefit-oriented. The more you provide quality information beneficial to your site visitors the more they’ll visit your website. Think in terms of solving their problems.
Reports
Ideally you’ll provide hardcopy examples of each report you need out of the system. At a minimum you need to describe each report and all of the data in them. If not done correctly this can easily be a point of cost overruns, so make sure to be thorough.
Special Requirements
Make sure you describe all special capabilities like:
• External interfaces to applications like Salesforce CRM or Quickbooks accounting
• Imports/Exports
• Drag and drop capabilities
• Special email or notification requirements
• Section 508 accessibility requirements
Prototype
Prototyping the application and demonstrating it to the user community to gather feedback is a critical component to the success of the system. Since the days of Rapid Application Development, prototyping an application before writing the critical code connecting the user interface (UI) to the database improves your chances of a successful project dramatically. You can mock up the UI as well as the reports. Prototyping also increases the chances of complete stakeholder buy-in.
Documentation
Detailed documentation is an often-overlooked part of the system. It is one of the deliverable system assets. Make sure to include costs for comprehensive documentation because it ensures that the system can be maintained. Here are typical types of documentation you’ll need:
• System – tools and versions required to build the system, files required, code structure,
algorithms, naming conventionsE
• Database –database diagrams and printouts of stored procedures, views and trigger code
• User – describes how each user will use the system including how an administrator will
configure it
• Developer – notes on algorithms describing all that is needed to maintain the system
Training
Make sure training hours are allocated, especially if the system is complex and if the system will be used by many people that didn’t participate in its design.
Website Considerations
If the custom database software system will be integrated into your website, or a new website will be designed along with it then make sure you consider the following items for maximum performance. In this case website performance means conversions – which can be sales or leads generated via form completions, phone calls or emails. See more details on the extremely important topics you must consider in website design and development: https://www.21stsoft.com/web-design-firm-web-development-company/.
Use a content management system. Nowadays we use WordPress due to its performance and capability for adding new functionality through the use of free plugins.
Use website analytics. Most hosting companies (we recommend Bluehost.com) provide free logging capabilities. We also use StatCounter.com and Google analytics, both are free. Lastly, before you build your website make sure it contains search engine optimization (SEO) and Internet marketing concepts through the use of:
1. Keyword based, persuasive and benefit oriented content
2. calls to action leading through an conversion funnel to a landing page to a conversion
3. effective landing pages – your best conversion tool
4. fast loading pages
5. error-free XHTML and CSS code
Download our very detailed, free White Paper on search engine optimization: https://www.21stsoft.com/seo-best-practices-guide-checklist-free/
Conclusion
Custom database software projects are notorious for their failures. This doesn’t have to happen to you. If you address all of the items provided in this White Paper then your chances of success will increase dramatically.