E-Commerce Website Service
An e-commerce website service updates the content and systems through time. It enhances the user experience by tracking user interactions and proactively enhancing the solutions. Testing environments allow staff to verify content, SEO, marketing tools, system integration, and compliance with the payment card industry before the user sees anything.
Users experience an e-commerce business through the website. So maintaining it is a business priority. Good maintenance is about timely fulfilling business needs, extending system capabilities, and mitigating operational disruptions.
Real-time page updates let the business respond to events as they happen. Example include:
- Disable the buy icons when items go out of stock.
- Adjust prices for flash sales, bulk purchases, and loyalty programs.
- Send the customer updates on changes in order status.
- Detect and block cyber attacks and credit card fraud.
- Recover from disasters such as ransomware and regional internet outages.
A real-time update requires upfront planning and testing before deployment.
Scheduled Content Updates
Scheduled content updates add, edit, and delete content. Motivation for the changes include:
- Expand and split pages with the most traffic.
- Add topics based on insights and SEO analysis.
- Remove or merge pages that degrade the domain's reputation or no longer exist in the catalog.
- Edit content based on feedback and questions.
The update frequency typically is between a day and a month, but it depends on the needs of the business. The updates happen in batch mode to maintain the integrity of the links between pages and the internet.
Broken Link Repair
Automated scanners check all the links. That includes all file types, all SEO metadata, and all outbound links to other websites. It also verifies the HTML response code flags the page correctly. The following chart shows the surprising number of broken internal URLs by file type.
Search Engine Indicies
Each search engine has an index of URL links to the website. Each page designed to land search results is in the index. The non-indexed do not land search results. They include testing websites, landing advertisements, and payment pages. Maintaining the index ensures keeping the pointers accurate and up to date.
Backlinks are inbound connections from 3rd party websites that are important for page ranking. Backlink testing starts by collecting them from weblogs and SEO search tools. The next step involves working with the administrators of the 3rd party sites to address issues.
A redirect is a URL with no content but sends the web browser to another page. Redirects help with usability and when moving URLs. But they should not be a dependency. Websites should remove redirects to accelerate page loading and reduce URL complexity.
The canonical link is the base URL for the page. Adding it to the page ensures search engines ignore URL spatter resulting from campaign trackers, bad backlinks, page removal, and administrative errors. It assures search engines no URL spamming, improving page ranking.
Testing ensures the website meets expectations before the user finds out it does not. It allows staff to set baselines for system monitors and provides a platform to fix issues systematically. There are four classes of the environment with varying capabilities.
The production environment runs the business. The others support testing and training.
A blue/green deployment is a design pattern to mitigate upgrade risks. If the existing deployment is blue, then green gets deployed as the production candidate. Sanity testing ensures it works. If the test fails, green gets removed, fixed, and replaced with a fresh build. If green then becomes unstable, there is a rollback to blue. After green proves stable with a production load, blue gets purged.
User Acceptance Test
User Acceptance Test (UAT) is a production clone. It supports validating compliance to the Payment Card Industry-Data Security Standard (PCI-DSS) because it has the same security settings. It supports load and disaster recovery testing because it has the same hardware capacity and redundancy. The difference with production is the DNS name and a tag on each web page to prevent search engine indexing. That approach minimizes testing gaps.
Development Test is to develop the infrastructure. Modern development practices including DevOps and Agile Project Management require testing security, performance, diaster recovery, and other parts of the design from the start of the project. However, it lacks the redundancy and sizing of production making it more cost effective.
Development Test is to develop the infrastructure. However, it lacks the redundancy and sizing of production, making it more cost-effective. Modern development practices, including DevOps and Agile Project Management, require testing security, performance, disaster recovery, and other parts of the design from the start of the project.
A quality guarantee protects the website investment. The protection covers many scenarios, including:
- Remain in good status with merchant banks so you can continue clearing payments.
- Prevent a crash in page ranking due to technical glitches, especially those not evident from looking at the page.
- Prevent the loss of personal data and the regulatory requirement to notify clients of the leak.
- Avoid business disruptions caused by system outages.
- Get predictable timelines to deliver new features.
System monitoring ensures the user consistently receives the intended experience. It is a subset of testing that happens in production. Standard monitoring practices include:
- Pinging the application to ensure it responds correctly.
- Pages render correctly in the web browser of each user.
- Page load measured from the web browser meets the requirement.
- System parameters remain within specification. Typically that means sufficient CPU, disk space, memory, bandwidth, etc.
- The system is free of suspicious activity.
- System logs are relatively free of errors and warnings.
Cybersecurity makes it difficult for an attacker to gain system access. Best practices for maintenance include:
- Rotate SSL keys every quarter.
- Change login credentials every quarter.
- Check for security patches, then apply updates when available.
- Check software currency once a year and upgrade as needed.
- Retain log files for two years, as required by the Payment Card Industry (PCI)
- Implement newer security designs based on research and best practices.
Eliminate Technical Debt
Technical debt refers to the amount of work required in the future to bring it up to date and in good working order. Debt degrades solutions in the following ways:
- Many non-critical errors create noise and ambiguity when trying to fix something else, especially in crisis mode.
- Require an unexpected amount of work before fixing the underlying issue.
- Run out-of-date software or do not receive security patches, making them vulnerable to attack and non-compliant with PCI.
There are many flavors of system redundancy. The most reliable is active/active spread across multiple regions. That means the failover servers are online and accepting load before the failure event. However, they need still need the capacity to carry the extra load. Placing redundancy in multiple regions makes the solution robust to issues with the data center and local internet issues. A standalone website is NOT a single web server backing a Content Delivery Network (CDN). The standalone server is a more robust and faster solution.