At the beginning of the project, some features had been implemented in the application, however, the application was unstable, as it constantly crashed at startup. First, we conducted a comprehensive study of the current errors, due to which there were problems with launching and operating the site.
Further, our team identified deficiencies, which were corrected and then published the application to a new host and implemented search engine optimization.
Initially no version control system was used, making it difficult to work together on the source code. After starting to work, we decided to go to the svn version control (with the placement of the repository on https://xp-dev.com/), but subsequently switched to git (https://bitbucket.org/), because it matched the project requirements.
In the process, the site suffered a cyber attack, which resulted in incorrect data added to the database. This type of attack, involving the execution of arbitrary queries to the database, is called SQL injection.
To protect against this type of threat, we used the following approach: filtering parameters, the truncation settings and use parameterized queries. As we were able to rapidly detect this attack and take the appropriate measures, we managed to cope with this vulnerability without any consequences for the Client.
Because of the territorial remoteness of the Client, we carried out our interactions remotely. In this case, it was customary for Tracy to correspond with us by e-mail. But this kind of communication is extremely inefficient and inconvenient, since it is difficult for project participants to quickly interact and make decisions.