Software Development Process

AmNet’s team of software professional can help client meet all their software needs which could be some small application to keep track of employees to any tool designed to catered to thousands of users.

Our standardized software development approach helps us to provide

  • Cost-effective and efficient business solutions
  • On-time completion of the project
  • Delivery of a high-quality system meeting your business requirements
  • Development of a flexible, easy to use and modify (in case you need some enhancements in future) system

Project Kick-off

After the signoff of the contract with the client Identified individuals forms a team for a project. This team formation initiates the team building activities. We consider the investment in the team building activities helps team-members understand skills and strengths of other team members, which helps them coordinate amongst themselves with a greater effect.

The Project team identifies different roles to be performed for the development of the software along with the responsibilities of each team member. All the team member are provided with the latest version of the clients requirement.

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

  • Functionality Matrix Document
  • Effort Estimation Document
  • Project Understanding and Solution Approach

Software Requirements Analysis and Management

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 these specifications are provided by client, 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 Requirements Specifications
  • Non-functional Requirement Specifications
  • Requirement Clarification Documents
  • Project Vocabulary
  • Requirement Change Impact Document

Software Project Planning

Planning is one of the critical phases 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 AmNet prepares the communication plan which is to be approved by 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 AmNet and client’s side.

One of the key aspects of AmNet'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. AmNet 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 Mitigation, Monitoring and Management Plan (RMMM Plan)
  • Communication Plan
  • Project Team Structure
  • Project Schedule
  • Project Review Plans
  • Software Planning Data
  • Software Engineering Facilities and Support Tools Plan

Software Project Tracking and management

The design and execution of the project is carried out as per the decided software process model. AmNet 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 AmNet leadership.

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

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

AmNet critically considers 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, AmNet confirms the requirement changes from client, analyses and validates the changes in requirements. Understanding the business needs, appropriate solutions are suggested. AmNet 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, monitoring and management of the project, AmNet has customized the Project management solution to fit the needs of AmNet’s client. This Project management tool is online and project coordinators and team update the 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
  • AmNet Project manager

Software Quality Assurance

Organization wide, AmNet has implemented the project management and development follows the best industry practices. We have compiled 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 AmNet, we follow a set of documentation, project development methodology and testing techniques, some of those are as follows:

  • Software Quality Assurance Plan
  • Policy for Implementation of SQA
  • Deviations in Software Activities and Software Work Products Procedure
  • SQA Participation Procedure
  • SQA Reports
  • SQA Reviews Procedure

Software Configuration Management

We understand software development as a process where bugs are inevitably injected in the application, under development, when software is modified. 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. Documents 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

Testing

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, at 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

Release

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) AmNet 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

Maintenance

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