Iterative development is the process of working through software development in repeated cycles. For example, this could be going through a cycle of building a specification for features and functionalities, designing, feature development and then testing.
Being open to and allowing for iterative development you’ll allow departments and their customers to input on the development of your product - ensuring it’s fit for purpose in every way. This means you won’t waste resources on developing features and functionality that aren’t optimised for your end-users. Iterative development is user-centric, resources efficient and will allow you to adopt a more agile approach for future projects, opening up lines of communication across teams such as sales, marketing and product.
A minimum viable product (MVP), which in this case would be the LMS, is the platform inclusive of all necessary features that must be available to users at first stage launch. They are the must-haves as opposed to the nice-to-haves.
Identifying the MVP can be challenging as it’s often hard to see the wood from the trees when developing a large-scale, complex LMS, however, it’s absolutely necessary to have this forethought in order to allow for iterations, and improvements down the line.
At Plume we use the MoSCoW methodology of prioritisation to help clients identify:
By being able to prioritise features and functionality, you will be able to:
There is only so far you can plan ahead. With MoSCow you’ll be able to create a plan of what you think should be included at every phase, but you must allow time to gain feedback from your end-users and be willing to make adjustments to designs, features and functionalities.
Some clients have a beta version of their platform that they open up to specific users across their organisation and customer-base. These users are informed that they’ll be accessing a working prototype (to manage expectations) and will be encouraged to give their feedback on their experience; As a bonus, this also acts as an opportunity to do additional quality assurance, testing and bug finding. This feedback, particularly in the case of bugs and glitches means the developers can work on fixing these while other team members begin planning for adjusting other aspects of the product that aren’t working as intended or need to be revised for increased usability.