I came across quite a few startups in the IT services sector whose prime business is developing websites either as intranet or public website. After talking to them I felt most of them were re-inventing the wheel for every project. I decided to write an article that explains the list of components that a website can have so that the startups can have these components ready and just integrate it into their new projects. I am writing this as a guideline to develop projects in ASP.NET or ASP.NET MVC. I think developers can find the equivalent features in PHP or Java or Ruby On Rails.
- Membership – Use ASP.NET membership (other open source providers) to design the following modules.
- Login – Use the basic authentication and also implement multi-factor authentication like tracking geo-location of login IP address etc.
- Registration (Include EULA acceptance)
- Password Change
- Manage Users
- Manage Roles
- Manage Permissions
- Data Access Layer
- Identify the ORM that you are planning to use for each database type like SQL Server, MySql and Oracle.
- Audit trail feature to track changes to records in database.
- Logging
- Exception Logging
- Event Logging
- Information Logging
- Caching
- SMTP Module to send out key communications via email.
- Analytics integration (majority of the site are now using Google Analytics)
- SEO module – Screens which help the user to manage the Title, Meta Description and Meta Keywords
- Content Managment System – Allow user to edit HTML contents in some ares of the page.
- Dependency Injection Container – It is better to use DI containers because it will help you to test db changes for backward compatibility with code.
- Unit Tests – For some standard operations.
Good luck with these tips.
Recent Comments