We practice a standard industry process as per SDLC – Software Development Life Cycle. Following is the high level description of process we ideally follow to execute entire project successfully.
The core objective of this phase is to understand a problem domain, conduct a preliminary analysis, propose alternative solutions based on different technology platforms, and derive ball-park cost and preliminary timeline with recommendations.
Our project manager and technical pre-sales team work closely with the client and understand the project requirement and develop a basic initial proposal that would give an idea about the entire project cost and timeline.
During this phase we define the project goals and align with defined functions and operation of the intended application. We describe desired features and operations in detail, including screen layouts (wireframes), business rules, process diagrams, pseudocode and other relevant documentation.
SRS is the indispensable document we prefer to develop at initial state of the development followed by initial proposal. Our project manager thoroughly understand client’s requirement and develop SRS and re-estimate the project timeline and cost.
We develop a layout and wireframe before we start programming. Our team closely work with the client, understand his preferred choice of color, theme and other design element to deliver a layout to the client. Based on the client’s feedback, we deliver new versions of layout.
Minimum loading time (in case of web applications and website)
User Friendly and unique design
Cross-browser compatibility (Web)
Cross-platform compatibility (Mobile and Web)
Once the design layout is finalized, we develop system architecture for the further development process. This is very important phase because it defines high level structure of entire software system, database design, relationship of database with the functions and features, reusability of components and scalability with the future enhancement. We generally practice 2-tier, 3-tier, n-tier and SOA type of standard architecture protocol.
Application design and architecture are the core pillars of the Development phase. This is the actual execution phase where the solution is woven (programmed) with complex cobweb of functions, store procedures, scripts and alike different elements.
To deliver a high quality and scalable solution, we follow strict coding guidelines and strive to implement the best suitable practice. This would also help us to develop to write a reusable code (component base code) which we can replicate for similar functionality in same of different applications which ultimately save time & cost our client.
We follow a industry standard software coding and development practices, recommended by Microsoft and other Open Source community. Based on such recommendation we derive our own standard practice of coding standard and strive to improve to deliver a best quality software applications. This practice help the developer to understand the code structure without hesitation and enhances the maintenance of the applications by improving the common protocol of the code.
During the development phase we audit the source code at regular interval and make sure that our developer follows it word by word. This would also help to optimize the code whenever required. To automate the entire process, we use tool like "Resharper" that dynamically detect the defective coding practice.
We make sure that our developer test the code after each function developed which will be cross-checked again by technical leader and Quality Assurance team to deliver robust quality software. Since many of the trivial issues and optimize the code according to the business logic.
As a part of efficient integration development practice, we use TFS (Team Founder Server) both online and offline, SVN (Subversion), GitHub which enable us to manage the code centrally in following ways.
We prefer to use a staging platform to deploy a code once it is unit tested. This would help our QA team to execute the test plan in most efficient way. Further, we also grant access to our client for User Acceptance Testing later on. We resolve the issues on staging before it go lives to protect any business loss due to any omission.
We have a dedicated department to test the entire software before we deploy the solution to the live environment. Our QA team performs a test using various testing approaches and strategies and make sure that software is behaving as per the Software Requirement Specification.
For web application testing, we do test the application using automated tool for cross browser compatibility, cross platform compatibility, user concurrency and alike.
We also allow our client to test the entire software (User Acceptance Test) for uncommon issues arise.
Once our client satisfies with the performance of the application, we commence the final
accepted solution to the live environment.
Due to the nature of the software characteristics, it may possible that something goes wrong due to human nature omission or negligence. We take care such issues during at FREE of cost during post development Support (Max 30 days).
Trimantra is well-known for its prompt support of its service. In some cases, we provide a free support even after issue is reported by the client after 1 year of later.