We have the ability to develop and support custom Open Source applications with in-depth and vast technical competency. We have technical expertise across a varied span of technologies like integrated development environments, databases, operating systems, hardware platforms, workflow and middleware products, programming languages and frameworks. These are spread across various environments like legacy, client /server, windows, web and service oriented architectures. We also have experience to develop own reusable Open source frameworks to help increase the productivity and thereby reduce costs to its customers. We have rich pool of skilled technical and management resources vast experience of providing services. We follow cross-skilling of resources in multiple areas of competency as a strategy for productivity improvement and risk mitigation.
We focus on building deep expertise in the existing technology landscape, and tracking emerging technologies and architectures. These technical architects work on various cutting-edge solutions and application architectures. We have experience in setting and building Proof-Of-Concepts (PoCs) on Open Source technologies, though best practices in Open Source. We work with various vendors in Open Source to ensure effective and rapid deployment in project execution. We also help to conduct training regularly on the key areas mentioned. There are other avenues of discussions like User Groups, Blogs, and Forums.
Our services serve as Value-addition to the projects and thereby delivering significant cost advantage to CUSTOMER without compromising the quality, robustness and scalability of the proprietary products/technologies.
1. Development, Support and Maintenance
2. Migration of applications from Windows to Linux environment
3. Development of Open Source tools and utilities
4. Develop an IDE (Integrated Development Environment) to develop a server application
5. Re-engineer code to run across all Linux distributions.
6. Provide Compatibility and roadmap to evaluate and gain code acceptance across various Opens source software and tools.
7. Resolving configuration and installation issues through developed customized programs
Our Open Source System Engineering plan is based on the proven quality management practice consisting of eight steps, which are depicted below.
Step 1: System, Application, and Database Inventory
This step requires a detailed study of the customer’s environment, and involves the study of the following:
- Information Process flow model
- Identifying collaborative and isolated systems, mission-critical systems, infrastructure systems, identify front-end consoles and user interfaces
Inventory of all potential systems and applications in a customer’s environment should be accounted for. This inventory includes
- Current Hardware and Software
- Network components and their configurations
- In-house and third-party applications
Step 2: Consolidation
A comprehensive list of the systems and applications including third-party applications to be developed would have arrived during this stage. An assessment of the list of systems and applications to be migrated would be done based on the business requirements, and also taking into account the following factors:
- Road-map of customer’s applications
- Required feature availability and expected performance of third-party software
Step 3: Readiness
The primary goal of readiness is to determine the information critical to the CUSTOMER’s development process. The assessment report is prepared which contains cost-benefit analysis and system and application prioritization. The assessment reports factors into account the following activities:
- Identification of infrastructure components like file servers, messaging and mail servers, and intranet servers for migration to Linux
- Identification of proprietary applications taking into account the compatibility or ease of migration of the components such as:
- User interface
- Configuration and administration tools
- Systems and network environment
- The building of the infrastructure – Hardware and software procurement, Environment and configuration management
Step 4: Analysis
This step includes identifying the analysis related to development, re-engineering, and customization and enhancements as required by the customer. This stage includes generating a work break down the structure and calculating the approximate cost for the complete activity
Step 5: Requirements
This step consists of activities related to development, in order to ensure that the systems and applications can be developed. The effort includes the functionality, performance and testing. The outcome of the step is a detailed project plan and acceptance criteria.
Step 6: Development
Work on this step proceeds according to the project development plan and work break down structure produced earlier. Activities include the following:
- Carry out application design and Development
- Finalize the out of box and Customize features that need to be implemented and verify any automation needs
- Produce user documentation as applicable
Step 7: Acceptance
This step leads to the acceptance of the developed application on the customer’s targeted environment. It might involve some amount of problem resolution and fine-tuning the system.
Step 8: Deployment and Support
The application is rolled out to the identified sites, and the performance of the system across the sites is closely tracked via feedback and reports. Problems/Issues reported from the sites, if any, are addressed as part of the system maintenance support.
The feedback collected during this stage is an important input for further quality improvements