- Services
- Industries
- Technologies
- Organizational Capacity
Development Methodologies
In order to ensure the quality of the custom software solutions IIC delivers to our customers, the company has invested significant effort into defining and refining our software development methodologies. IIC’s overall approach to custom software development is based upon industry standards and best practices, especially the project management guidelines developed by the Project Management Institute (PMI). IIC has adapted these guidelines into an overall development methodology captured in the ISO 9001:2008 certified IIC Quality Management System (QMS). This methodology defines required tasks associated with project inception, project planning, project execution and control, and project closure. IIC’s overall development methodology also addresses requirements for specific project management activities that occur across all project phases, including communication planning, risk management, change management, issue management, and knowledge management. All project development activities are appropriately documented to provide the records required for quality assurance activities, including process audits and continual process improvement initiatives.
A key element of project planning is the selection of an appropriate software development methodology to govern the effort required to convert customer requirements into deliverable code. The selection of a development methodology is a joint decision between IIC and our customer and is based upon the suitability of the methodology based upon project characteristics and customer preference. IIC has defined software development methodologies for the traditional “waterfall” approach as well as agile methodologies (e.g., Scrum), and application integration.
Software Development Methodologies
Waterfall: IIC’s traditional waterfall methodology is based on a fixed sequence of phases that progresses from requirements gathering to development planning, design, implementation, testing, acceptance, delivery, and maintenance. Reviews at the end of each phase provide the required quality assurance checkpoints. The waterfall methodology is suitable for development projects in which requirements can be fully known and fixed prior to development and where a structured approach to development is required.
Agile: IIC’s agile methodology is based upon the Scrum approach which is characterized by an overall set of project requirements (project backlog) that are prioritized for development in fixed duration activity blocks (sprints). Within a sprint, the development team, including the customer representative, meets regularly to discuss requirements and progress, with responsibility for selecting requirements, estimating effort, and delivering tested code lying with the individual team members. This methodology is suitable for development projects in which flexibility is essential (i.e., requirements may not be fully known or can be expected to change during the course of development). Successful implementation of this methodology requires effective communication and experienced developers with a strong sense of individual responsibility.
