Redo

Quality Assurance

At Redo Group, we approach testing pragmatically.

Assuming a feature to be flawlessly coded is almost certain to result in a break. However, repeatedly subjecting it to the same test does not actually enhance its performance. Hence, we employ the following test classes to ensure the quality of your product:

Unit Testing

Unit tests are authored by software developers rather than testers, with the objective of verifying that each function delivers the anticipated outcome. By focusing on the fundamental aspects, unit tests expose common errors that may arise when incorporating new features.

Functional Testing

These tests are of utmost importance as they validate the behavior of each system component under simulated conditions, ensuring they function as intended. Automating these tests to the greatest extent possible is highly recommended.

Acceptance Testing

These tests are executed to verify that the final software aligns with the initial specified requirements. Generally, these tests are conducted at various stages throughout the project, including the final phase, involving both the project manager and the customer.

Vulnerability Testing

These tests aim to identify vulnerabilities and security weaknesses in the newly developed software. They are carried out by individuals who have not been involved in the project and possess no prior knowledge about it.

Stress/Performance Testing

These tests assess the maximum performance capabilities of specific components or resources within the new system.

Usability Testing

Redo Group UX team conducts tests to identify and address any usability issues. These tests are conducted at various stages throughout the entire creation process.

Programming Standards

Object-Oriented Programming

At Redo Grup, we adhere to object-oriented programming principles when developing code. This approach ensures a well-organized and modular structure for the application, facilitating seamless operation for both developers and end-users.

Although the object-oriented approach demands some initial technical design effort, it yields numerous benefits. When implemented effectively, it simplifies maintenance tasks, expedites development processes, and upholds higher code integrity throughout the system. Ultimately, this approach contributes to reducing the overall cost of ownership in the long term.

Model-View-Controller

To mitigate the risk of imperfect code, we adopt strict Model-View-Controller (MVC) and Model-View-ViewModel (MVVM) design patterns. These patterns ensure clear separation of data, interface, and logic components, facilitating ease of maintenance and future modifications. By following these patterns, we establish a structured architecture that enhances code maintainability and modifiability.

Source Code

You will have continuous access to the code we develop for you through our Git repository. We employ popular version control tools like GitHub, Bitbucket, or GitLab. The code is organized into different branches, including the last stable branch, development branch, as well as branches dedicated to specific features or change requests. This branch-based approach ensures effective code management and facilitates collaboration throughout the development process.

Model-View-Controller

We have automated the software release process to streamline efficiency. Whenever an alpha or beta version is committed to the repository, it is automatically deployed on the testing server without delay. This enables your team to promptly access and evaluate the new version, facilitating quick feedback and ensuring seamless collaboration.

Servers

We utilize cloud-based infrastructure providers like Amazon AWS or Leaseweb to deploy the software. However, we are also flexible and can work with a server house of your preference. In corporate environments, we frequently collaborate with secure servers that operate behind a Virtual Private Network (VPN) for enhanced data protection and confidentiality.

Security

Operating with heightened security measures is ingrained in our work culture. With hands-on experience collaborating with international airlines and banks, we have gained invaluable expertise in data security, understanding the significance of data sensitivity and the critical role it plays.

Data back-ups

You can put your backup worries aside. By utilizing Amazon AWS services for your server infrastructure, the virtual machine software images will be automatically snapshot (Amazon EC2), and the database will be backed up seamlessly (Amazon RDS). This ensures that your data remains protected and recoverable without the need for manual backup management.

Maintenance & Support

We understand all too well that good customer support is a crucial part of the overall package. In all our app development projects, we offer a convenient maintenance and support service, where the Visla team is responsible for making sure your app runs seamlessly at all times. Our team is available around the clock for any type of support that’s needed.