Facing issues with the cloud platform.

Mike214

Beta member
Messages
2
Location
Las Vages
Hello community I’m creating a platform for integrating customer elements into the website, but I’m facing problems In the overall user experience.

We are testing the platform as much as possible before we release it but even then we find a few bugs after we release it.

Is there a way to add another layer of verification to the overall development process to make sure that we do not come across these incidences on production?
 
Any software, even with the most rigorous and lengthy QA, will turn out to have bugs once released into the wild. There are just too many variables - and those variables change over time as browsers, protocols, technologies etc. are updated - in order to catch everything.

The best you can do is perform some decent QA. Perhaps perform an alpha/beta rollout of the new customer elements involving customers who are interested and understand that the new features may not necessarily perform entirely as expected, so that the full rollout has already had some real customers use it?
 
If a human wrote it, it will have bugs. No such thing as bug-free software. That said - you can take steps to reduce bugs during development.

The biggest would be: unit testing. Create unit tests that can be ran automatically each time a feature gets added/changed/etc. All of your functionality should be unit tested - this then reinforces the need to create smaller, single-purpose/reusable functions (or "units" - hence unit testing). And like Yami said above, QA during development. This is why Agile development process is popular - it allows you to "fail fast" and find/fix bugs during development more quickly.

You can also add in monitoring/profiling with something like Application Insights (or the non-Microsoft equivalent), which gives you lots of telemetry and metrics on the application.
 
Thanks for the reply @Yami and @carnageX. We are still working on streamlining our QA process and that's why I felt a need of evaluating the project's performance even before it goes to QA. to save the deployment time and adjoining processes.

I came across an automated code review tool called Codegrip. That promises me solve this issue any thoughts?
 
Sounds like a static code analysis tool - which can be beneficial for sure. But there's limits to what it can "find" as well. it will most likely report back "best practices" or any custom rule sets you define or that the company has defined for rules (i.e. variable/function/method name conventions, etc.). I've looked at various static code analysis tools at where I work to see if we wanted to integrate them into our developers' work, and the cost for us did not justify the outcome. We're a bit larger tho as well (>150 devs), so maybe the cost would be less to you.
 
You can consider implementing the following strategies:

  1. Automated Testing: Utilize automated testing tools and frameworks to perform thorough and repeatable tests on your platform. Automated tests can quickly identify common bugs and regressions, saving time and effort during development.
  2. Continuous Integration : Implement CI practices to regularly merge code changes into a shared repository. Automated builds and tests are triggered upon each integrtion, ensuring that new code does not break existing functionalities.
  3. Code Reviews: Conduct code reviews with fellow developers to identify potential issues, improve code quality, and ensure adherence to best practices. Fresh perspectives often catch bugs that might have been overlooked.
  4. Beta Testing and User Feedback : Conduct beta testing with a select group of users to gather valuable feedback. Users can identify usability issues and report bugs before the platform goes live for a wider audience.
  5. Load and Performance Testing: Simulate real-world usage scenarios and traffic loads to ensure your platform can handle the expected volume of users without performance degradation or crashes.
  6. DevOps Practices: Adopt DevOps practices to foster collaboration between development and operations teams. This ensures that everyone is aligned on the platform's stability, security, and performance requirements.
  7. Quality Assurance Teams: Involve dedicated QA teams to thoroughly test the platform from an end-user perspective, focusing on various functionalities and user journeys
 
Back
Top Bottom