We are managing our projects according to the Scrum methodology with respect to all its artefacts and events. We believe that the client and the development team should work closely together. What is more, we suggest our Partners to take an active part in the whole process - this cooperation significantly increases the chances of meeting clients' expectations.
Arrangements: we make sure that our Partner is familiar with the Scrum methodology idea and its principles. If not: we organize a crash course of Scrum principles and then make double sure that it’s all clear now.
Pre-development: depending on the character of a project we have to set up some pre-development essentials. Whether it’s a settlement of a new environment or a continuation of an already existing code here’s what happens when:
a) we’re starting a new project from scratch:
The first thing is to choose a ‘software stack’ (database, front-end libraries, etc.) and in case of mobile applications supported device modes and system versions. Expected user volume should be roughly estimated as this number has an influence on the software or hardware architecture and testing scenarios. We also have to determine geolocation like supported languages and locations. We will ask you about some additional software requirements, ie. sensitive data management and security aspects. Think you’d make use of UX/UI designer? We have them onboard too.
b) we’re overtaking an existing project:
We’re starting with the code review. Always. Thorough code review is a key decision factor before taking over already existing projects. And it’s not only about us, code reviews are the double-edged sword: it reveals the actual condition and functionality of the code, points out its strengths and weaknesses, sometimes even the last chance to step back. When the code review is ready, we provide the client with the exact conclusions and further suggestions. Then comes the time of a code refactoring.
Dev lifecycle: Developers are fully commited only to their dedicated tasks. Once a developer is assigned to the project, a swich may be done at the express request (of a client or developer). There is, however, a general principle that we do not make personnel movements to support newly-forming projects: first-come, first-served.
Project Management: the main task management tool is a Kanban board:
Trello or GitLab Issue Board for deeper code integration. More complex projects require a few task boards, with development board separated from backlog and planning. The whole team have an access to all boards related to the project.
Communication: one of our primary goals is to communicate effectively. Effective communication within Prograils can be summed up by three words: transparency, readability and comprehension. The majority of the communication within the project should be exchanged within our main PM tool, Trello. Except for the primary tool, we also communicate via different channels (like face-to-face meetings, live chat, Skype, emails, phone, Hangouts). It helps us to clarify the process without creating chaos in the main channel.
Ideally, there should be one designated person on client’s site - a decision making person we will be contacting in case of questions or doubts.
Ninja patching is not allowed. Bug or feature must be reported within the main project management tool, even if already notified via alternative channel. Any code changes (except for the critical patch) can’t be put into a production server without the final approval from the Client.
Testing: code is thoroughly tested, always. Developers put a code into production once it has been developed and tested. Each developer is obliged to write automated tests after delivering a functional part of the system. Our ruthless manual testers do the 2nd verification by snooping around all the time. They comb through the apps looking for bugs and unexpected features. As everyone, they do know that CSS is awesome.
Design: we can help you with designing interfaces, website wireframes and prototypes of web & mobile apps with regard to needed functionalities. First, we talk with you - recognizing your needs, your vision, understanding what you want to achieve and how to do it. Your current solution is thoroughly checked to figure out what can be improved and what has to be changed. Then we draw, sketch, iterate, discuss, test and present our ideas and proposals to you. Eventually, we deliver - well-tailored interfaces, website wireframes and prototypes of web & mobile apps with regard to needed functionalities
Time Tracking & Invoicing: Meet Teamlens. Our homemade cloud-based management software that brings together everything you should know about your business. Teamlens tracks how much time developers dedicate to your project and controls all your costs and expenses. A full monthly report will be included to every invoice with a written status describing activities spent on performing your project during the preceding period.
Teamlens does not aim to control, invigilate, monitor or record anyone. This is not a timesheet that counts one’s productivity or checks how many hours one spent at work. At Prograils, in trust we… trust.