Our software development process includes project Kick-off, software requirements analysis and management, software project planning, software project tracking and management, software quality assurance, software configuration management, testing, release & maintenance.

After the signoff of the contract with the client, identified individuals form a team for the project. The team formation initiates the team building activities. The investment in team building activities helps team-members understand skills and strengths of other team members, which helps team coordinate amongst them with a greater effect.

The Project team identifies different roles to be performed for the current software development along with the responsibilities of each team member. The team collects all the pertinent project documents / information. The development environment is also created as the part of the project kick-off process.

Along with client and project information, following documents are provided to start the project:

  •  Functionality Matrix Document
  •  Effort Estimation Document
  •  Project Understanding and Solution Approach
  •  High Level Architecture

We do a thorough analysis of customer requirements to determine needs (elicitation); address needs (triage) and document the desired external behavior of the systems (specification). If the client provides these specifications, then the team understands these requirements and analyses the requirements for its completeness.

Different documents that are created or referred by team are:

  •  Software Requirement Specifications
  •  Functional Requirement Specifications
  •  Non-functional Requirement Specifications
  •  Requirement Clarification Documents
  •  Project Vocabulary
  •  Requirement Change Impact Document
  •  High Level Design Document
  •  Detailed Design Document

Planning is one of the critical phase of the project management. It encompasses different activities like creating and reviewing the software project management plan containing high-level architecture, delivery and deployment schedules for software development, information and capacity architecture, and third-party integration activities.

While planning, especially in the software development outsourcing environment we realize the communication (or lack of it) has the biggest impact on the outcome and smooth execution of the project. To highlight and streamline the communication process FIPSAR prepares the communication plan, which is to be approved by the client at the commencement of the project. The communication plan outlines the periodicity, channel and responsibility of the communication. It also details about the overlap time (overlap of the working hours) for the real-time discussions along with the preferred timings of availability of the identified project team members and coordinators from the FIPSAR and client’s side.

One of the key aspects of FIPSAR’s planning process is the risk identification and preparing plans for risks’ mitigation, monitoring and management. It is the systematic process of identifying, analyzing, and responding to project risk. FIPSAR has developed the risk-aware (not risk-averse) culture that requires a proactive approach to the management of risks in all aspects of the organization.

  •  Software Project Management Plan
  •  Software Development Plan
  •  Risk Management Plan
  •  Communication Plan
  •  Project Team Structure
  •  Project Schedule
  •  Project Review Plans
  •  Software Planning Data
  •  Software Engineering Facilities and Support Tools Plan

The design and execution of the project is carried out as per the decided software process model. FIPSAR ensures the execution of the project is as per the laid down plan and the status of the project is being communicated to the client on the regular basis. The project is monitored for the risks and anticipatory actions are taken by project coordinators under the guidance of FIPSAR leadership.

FIPSAR emphasis on the review of the each of the activity that is being carried out at FIPSAR. This includes reviewing the document to the review of the code. Different review mechanisms we generally followed are:

  •  Peer reviews
  •  Code Walk-through
  •  Formal Reviews of Selected Milestones

FIPSAR critically looks into the requirement change control procedure. We understand and respect the real world’s business fact that the requirements that were considered at the start of the project can change being the dynamic business scenario with the need to keep pace with competitors. For the requirement changes, FIPSAR confirms the requirement changes from client, analyses and validates the changes in requirements. Understanding the business needs the appropriate solutions are suggested. FIPSAR prepares the Requirement Change Impact Document to analyze the impact of the change on the different aspects of Project execution including but not limited to system architecture, design, schedule, deliverables, testing and commercials.

To facilitate the better and transparent communication on the status and monitoring and management of the project, FIPSAR has customized the Project management solution to fit the needs of FIPSAR’s client. This Project management tool is online and project coordinators and team updates the current status of the project which can be viewed by client anytime from anywhere. Documents that are being generated and used by project team are:
  •  Project Status Reports
  •  Meeting-Minutes, Communication Log
  •  Revisions of Software Development Plan
  •  Requirement Change Impact Document
  •  Project Coding Standards and Code Repository
  •  Project Tracking and Recording Procedures
  •  FIPSAR Project manager

Organization wide, FIPSAR has implemented the project management and development follows the best industry practices. We have consumed the best practices from SEI-CMM level 5 and Six Sigma Methodology and constantly work towards optimizing our processes and reducing defects.

The Quality Management System (QMS) is based on the ANAAR philosophy, which focuses on the customer satisfaction, results through processes and the involvement of each of the team member.

While a project is being executed at FIPSAR, FIPSAR follows a set of documentation, project development methodology and testing techniques, some of those can be written down:

  •  Software Quality Assurance Plan
  •  SQA Participation Procedure
  •  SQA Reports
  •  SQA Reviews Procedure

We understand software development as process where bugs are inevitably injected in the application under development when software is modified while application is in debugging mode. Under such incremental change scenario of code development, version controlling becomes one of the important aspects of software development process. Same is true for documents and reports that are prepared in project development and testing phase of the project and are frequently updated and referred.

The configuration management of the project specific documentation and code is planned and executed by an identified responsible project team member. Documented created and used by team members other than the configuration management tools are:

  •  SCM Activities Plan
  •  SCM Policy
  •  Changes to Baselines Procedure
  •  Software Baseline Library Product Creation and Release Control Procedure
  •  Configuration Items/Units Status Review Procedure
  •  Standard Software Configuration Management Reports

After the various components are developed, they are integrated and rigorously tested as a complete solution. Application behavior is compared with the initial specifications and any deviations are identified and corrected.

The testing team also validates the bugs received from client if any n the trial implementation phase of the project. A thorough regression testing is done to ensure all the test-cases are being passed and the testing approach and schedule is as per the Test plan.

  •  Functionality Testing
  •  Integration Testing
  •  Usability Testing
  •  Performance Testing

After the project is completed, it is deployed across an enterprise by working closely with its internal IT team and training is imparted to the end-users of the system.

While delivering the application in the production environment (final release) FIPSAR provides the delivery-kit which includes the set of all the latest documents designs and the code as per contractual arrangements.
  •  Enterprise-wide Deployment
  •  End-user Training
  •  System/Helpdesk Training
  •  Documentation Handover
  •  Known Issues
Our maintenance phase covers steady-state system health maintenance including database, application and network maintenance. Application feature enhancements whenever requested by client are planned and are developed and executed as with the consideration of the existing system and its existing data.
  •  System Health Maintenance
  •  Feature/Application Enhancements