Please explain the process flow followed in a typical IT outsourcing project
In general, it is our customers who define the process flow. Still, there are some general steps that are almost always parts of the process.
Time and Material Arrangements
- The Non-Disclosure Agreement is signed by the two parties.
- The parties have a series of preliminary discussions to deal with the following aspects: type of help the prospect needs (services, technologies, level of expertise), types of projects they have in the pipe line (industries, solutions, sizes), the prospect’s prior experiences with outsourcing, our rates (per project, per person, per team member – blended), scaling up / down (the prospect’s typical needs & approach; notice time they would commit to, etc), language for communication / documentation – English is the only prerequisite for our specialists, work procedures (communication, NDA, contracts, specifications, team coordination, travel). The prospect is invited to address any questions they might have. These discussions are mostly business oriented and attended by our company executives (Business Development Manager, CTO, CEO).
- Also, prospects who are willing to establish a long-term partnership with us usually want and are welcome to visit our office in Sibiu. This way, we reassure our customers-to-be that they are going to work with a well-established company with in-house employees, not with some apartment-run business that rely only on freelancers to handle projects.
- Finally, the two parties negotiate and sign the contract, which covers all the important areas of the collaboration. Some customers use their own contract template while others prefer ours.
- Ropardo then sends CVs to the customer for validation. The prospect schedules interviews with the selected specialists.
- Collaboration kicks off.
Project-based software development process
Each project is made of several distinct phases as described below. We believe in transparency. For which reason, we communicate with the client at every phase before and after sign-off. Thus, each software application is scaled individually.
Closing steps of the proposal
- Estimate hours and timeline
- Discuss budget
- Negotiate contract
- Get down payment
After making sure projects stick to the budget and requirements agreed, we create a final proposal and hand it to the client for approval. Our proposals include major project parameters such as hours, timeline, budget, and payment schedules. Once agreed upon by both parties, we are ready to get into the first development phase.
- Project kickoff with wireframes
ROPARDO prepares wireframes for most application screens and profiles general functionalities. This phase sometimes involves the client’s team meeting our project managers, designers, and developers. This way all requirements are transmitted to key stakeholders on the project.
- Dynamic user experience
End user applicability is what we go after with our software results. We focus on user experience and user interactions from early phases like software architecture design of the software application. To meet finest results, our front-end developers program cutting-edge technologies and tools.
ROPARDO has competence in managing development projects alone or with partners, when third parties are responsible for other components of the project. To successfully do this, we keep an active relationship with partner development teams. Each project has a project manager assigned to work with the client and coordinate open-ended project activities.
We are experienced in conducting long-term development projects and consciously evaluate projects as they unfold. Code is reviewed weekly by senior developers to identify and eliminate bugs early in the process. Architectural decisions are also inspected.
- Ongoing, agile builds
We apply Agile software development practices, focusing on short term goals as bricks that build to the envisioned larger project. Our developers are versed in handling agile methods for daily project updates, including managing daily to-do lists and using code repositories for version control. Developing in the agile mindset enables our clients access consistent updates throughout the whole development processes.
- Beta version
Issues from the regular builds are identified and managed to prepare a formal beta version of the project for launch. It is sent to the client for concluding feedback in terms of usability and functionality. During the beta stage building process we practice continuous integration, working with up-to-date code bases to prevent conflicts and undiagnosed QA issues from occurring.
- Q&A and Testing
Our Q&A engineers naturally handle multiple testing tools and techniques under an accurate quality assurance process to identify issues related to functionality, usability, interface, performance and security. We can use automated tests on a regular basis following a specific plan developed in the early phases of a project.
Once the quality assurance phase is completed, the application is ready to be launched. Our developers are versed in implementing applications online while making sure that the client’s development team is well prepared for this phase. Launch dates are dealt with during the early phases of the process and our staff works hard to meet all project milestones on time.
Code of a completed project is transferred to our clients who have full ownership, rights, and intellectual property associated with the code. A key advantage of using open code is that the client’s team is able to manage it after transfer. Yet, we keep a back-up of the code for one year after project completion.