Agile Processes
Agile processes include various methodologies under which requirements and solutions evolve through the collaborative effort of cross-functional teams and their clients. It advocates methods such as:
adaptive planning
evolutionary development
early delivery
continual improvement
rapid and flexible response to change
Vision: general direction, goals, aspects
User Stories: descriptions of use cases and benefits
Sprint Planning: planning for work items for sprint periods, usually 2-4 weeks
Daily Standup Meetings: team members provide a quick summary of what was accomplished in the past day, what is planned for the current day and any work blockers that exist
Sprint Work Progress: team members work on their assigned items
Retrospective and Sprint Review: team members provide feedback
Work Products: work results are produced and demonstrated at the end of the sprint
Agile Fit with Machine Learning
As detailed below, there are aspects of Agile processes that fit particularly well with Machine Learning.
Cross Functional Teams
The full scope of Machine Learning processes involves a number of functions. Cross functional Agile teams include expertise from needed areas.
Variety of Clients
Machine Learning typically serves a number of client organizations. Cross functional Agile teams typically include representatives from client organizations.
Dynamic Data Sources
Agile teams can respond quickly to rapidly changing data.
Evolving Technologies
Agile teams can continually adjust to rapidly evolving Machine Learning technologies.
Sharing Across Organizations
Cross functional teams promote the sharing of data, information and knowledge.
Continuous Learning
Agile processes promote continuous learning and improvement.
Minimum Viable Product and Pilot Projects
Minimum Viable Product (MVP) and Pilot Projects allow enterprises to test ML/AI applications at a relatively low level of investment.