The software development cycle

We are using iterative software development processes. However project development cycle can be modified with the elements of agile software development or even to follow agile principles entirely due to the project specific requirements. We use the following techniques: Short Releases, Simple Design, Test Driven Development, Refactoring, Pair Programming, Collective Ownership, Continuous Integration and Coding Standards.

CASE-tools and software

Project Management Center (PMC). PMC is software to control all stages and workflow of software development. It allows to assign tasks, plan project terms, fix and track bugs and much more.
Source code control systems like SVN.
Rational Rose, Enterprise Architect for UML modeling, software architecture developing and documenting.
Test Frameworks (like JUnit in Java Project and NUnit in .NET Project) for unit testing. Selenium/HtmlUnit for testing web applications.

Quality Assurance

In our company the process of testing includes the following stages:

Usually the elements of Load testing and Stress testing are performed to study the behavior of the program when it is working at its limits or beyond the limits of its specified requirements. We utilize automatic testing for checking frequently used test procedures. Our testers utilize mostly the tools of Mercury Interactive. In particular, WinnRunner is the most usable tool for automation of functional and regressive testing. Test scripts are created both with the help of Record-and-Playback technology and TSL. From other Mercury Quality Center tools.

Some our QA Engineers work with QuickTest Professional and LoadRunner.

Support

Support is an essential and important part of development services. In this field we have a good experience and can work either in cooperation with your in-house team or independently on a constant or per call basis. We can provide support for solutions developed by 3rd parties and ensure smooth transition from other teams eliminating enormous switching costs. We can support, maintain, document and re-engineer your solution to accurately meet your requirements on fixing any performance and operation problems.