System Engineering a Planned Approach

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 the experience to develop our own reusable Open source frameworks to help increase productivity and thereby reduce costs to its customers. We have a rich pool of skilled technical and management resources and vast experience in 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 Proofs-Of-Concept (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 discussion 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 Open 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
  • Identify collaborative and isolated systems, mission-critical systems, and infrastructure systems, and 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
  • Databases
  • 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 a 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, 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