The variety of projects has brought about a wide range of engagement models, working schemes and types of workflow. At Scand we provide each project with individual workflow - everything works in the way most convenient to you. We never impose any obligatory workflow, technology or methodology on our customers. We are flexible and have enough experience to implement almost any kind of workflow preferred by the client. However, if the client does not have any engagement preferences or experience, we can propose or advise our own working models that can be efficient in his particular case.
First contacts are established between our CEO and the client. After all financial, legal and organizational questions have been settled, the work starts. If required, we introduce one of our system architects whose responsibility is to help define technological stack and solution architecture. When this crucial part has been completed we shape a team of our engineers possessing the necessary set of skills selected for the development area, and their resumes are offered to the client. Once the customer approves the prospective team, project managers of both companies go through with the matter and define methodologies, development methods and process.
During the working process, the project manager and the system architect are involved in the project and control its execution and the quality of technical design. A team of quality assurance specialists will perform testing all the way through the project. If required, graphic artists are to design the layout of the application and/or any of its elements. The project manager is responsible for providing timely and high-quality releases and milestones.
We take the diversity and individual nature of both our customers and projects for granted and apply fundamental yet personalized approach to every separate case. For example, we use a long-reputable Waterfall method of software development as well as cutting-edge Agile, Scrum and Kanban methodologies.
Waterfall development method is ideal for projects with clear task formalization and fixed scope of work, i.e. for small and medium-size projects. Waterfall methodology comprises the following steps:
- working out system requirements, drawing up and approving the specification;
- design and prototyping;
Agile, Scrum, Kanban, etc. methodologies have their own distinctive features:
- speeding up software system commissioning;
- minimizing development iteration cycles;
- reduced periods of feedback between market/user requirements and functions implementation;
- iteration-based approach and adaptive production methods;
- retrospective procedures allow to fix defects promptly and enhance productivity and quality.
Using such methodologies as Test Driven Development, Behavior Driven Development, XP and their elements: Pair Programming, Collective Code Ownership, Code Review and Audit, Refactoring contributes to the positive result. These approaches work well for advancing and rapidly changing projects where tasks cannot be easily formalized and scope of work is not fixed.
Often methodologies can change during the project life cycle to correspond to the alternating requirements.
The methodologies we use make it possible to organize effective outsourcing development process and timely software delivery to the customers.
Examples of workflow schemes
Below are several types of workflow schemes we normally use.
A general request for proposal (RFP) scheme contains a number of the most vital elements from Analysis and building Estimation and Proposal to discussing Budget, defining architecture to performing software Development, QA, attaining Success, receiving Support and acquiring New Versions and again providing a new-level Analysis.
A Consulting Request has fewer components and includes such stages as considering Real Production, carrying out Analysis, producing Proposals, providing Development and QA to achieve Success and then Analyzing the whole chain again.
A Redesign / Re-Engineering Request will ensure positive result in case all the steps are completed: from Analysis and Proposals to Budget, Development, QA and Deployment to the much desired Success with subsequent Support and Analysis.
A Prototyping Request which is quite frequent is a good and short way to evaluate the software you wish to develop. This procedure consists of Analysis and Proposals, estimating Budget, creating Prototypes and analyzing the Success again.
The only difference between working offshore and onshore is in communication, but Internet makes this difference insignificant.We understand that effective communication is crucial for the success of any project. We communicate with our clients mainly via Internet (E-Mail, Skype, Google Talk, ICQ, IRC). Of course, our employees often visit clients and receive them at our office. Nevertheless, Internet remains the main tool for business communication.