Online course management systems are meant to serve as avenues through which learning can take place over the internet. Online course management systems are very flexible as anyone can participate at a time that suits them, and for however long they are comfortable. They offer the latest content and at affordable rates. With these and other advantages, it is no wonder that online course management systems are becoming increasingly popular. However, being somewhat complex systems that have to implement a wide variety of features, online course management systems require adequate planning to ensure proper development and deployment (Kats, 2010). The choice of the software engineering model determines whether the application will be successful or not, and hence the process model becomes one of the most important choices in the software development.
The choice of what process model to apply for software engineering is dependent on a variety of factors. Key among these is the set of user requirements for the system. For online course management systems, some of the primary considerations include the following. First, the system should have an administration section with analytical reporting and assessment tools built into it. Second, the system should employ a secure authentication system with user access control, preferably with support for single sign-on using LDAP. Third, the system should provide built-in authoring capabilities with support for authoring courses, mobile learning and power point conversion. Also, the system should provide for a variety of course delivery formats, from live video to presentations and other multimedia channels. The system should also support instructor led and self-paced lesson plans. As part of the list of features, the online course management system should offer a means of examining the learners. A decent system should implement an exam engine with the necessary coursework grading and scoring tools.
The online course management system should have the ability to run maintenance, backups and updates preferably from an online environment. It is also important that the system has a multi-lingual user interface and the provision for data importation and export for example through a nightly feed or an extract-transfer-load process (Kats, 2010). For purposes of integration, the system architecture should make it possible to integrate with third party authoring and teleconferencing tools. Compliance with the Tin Can API, AICC and SCORM will make the system more extendable. Also strategic is the installation and deployment options for the system, here the focus will be on whether the system will be hosted locally, offered as SaaS or on the cloud. How well the system will integrate with legacy applications may be a valid concern if the system may run on legacy hardware or systems. A final consideration could be the integration of an e-commerce system and the security considerations that accompany such a system.
Once these requirements have been identified, the next logical step lies in the choice of the process model. For the online course management system, the incremental model will be applied. Incremental model provides the advantages of the waterfall framework while offering the benefits of iterative development. For one, the model makes it easier to develop operational software quickly and early in the development lifecycle. As a result, core modules of the online course management system can be developed first, and the system made operational. The incremental model is also very flexible as during any one of the iterations, the project requirements may be altered or modified. Also, the model makes it easier to test and debug, while providing the opportunity for user feedback at every stage of development (Bajaj & Wrycza, 2009). As a result, the online course management system can be altered at any point in time to reflect changing user requirements.Furthermore, the project can be debugged and tested on a continual basis to ensure it is robust and secure.
In all other aspects aside from the iteration, incremental model resembles waterfall model. The same main stages feature in both, with the incremental model having the same steps that make waterfall repeated for each successive build. Unlike the iterative model, however, the incremental model is limited to a set number of iterations (Dennis, Wixom & Roth, 2015). The first step in the incremental model is usually the System Analysis phase. This step that is alternatively referred to as the Software Requirements Specification (SRS) involves a complete and comprehensive description of the actions that the online course management system should be able to do (Jacobson, Booch & Rumbaugh, 1999). The required features will be mapped onto individual actions that the system should do. The second step is the design phase where planning on how to solve the problem is carried out. As a result of the process, a natural language representation of the problem solving (algorithm) steps, as well as the software architecture and database schema design is undertaken (Wang & Wang, 2012).
Next, the implementation of the online management system is carried out. This involves the translation of the algorithm and software architecture developed in the previous steps into an executable program. The result of this step is an executable that should perform the actions the management system was intended to do. After implementation has been completed successfully, the software undergoes testing to verify and validate that it can perform the tasks it was programmed to do. These tasks have to be in line with the original specification outlined in the initial analysis phase. The online management system then undergoes a maintenance phase that serves to refine the system and ensure it is fine-tuned to the performance of its stated purpose. Maintenance helps to improve performance and quality. Then, a build is released, offering a limited set of features (Jacobson, Booch & Rumbaugh, 1999). After that, the process moves to the next iteration with a different target of deliverables. The process repeats until the online course management system has all the features that it was supposed to implement.
For this online course management solution, the preferred deployment solution would be through the cloud. The foremost consideration that influenced such a decision is how customizable the system should be. While the system could just as simply have been deployed as SaaS, the inherent differences in the requirements of individual users rules out SaaS since cloud computing allow for greater customization. Cloud-based apps will be deployed over the internet and accessed through a standard browser. Cloud computing offers the advantages of strategic agility, short deployment times as well as quick updates. Since cloud-based apps have a centralized placement, this implies only needing to update in one place and deploying to the users via the internet. Testing is also infinitely simpler due to the same reasons. The two most important tests for an online course management system would be a functional and a unit test (Kats, 2010). Since the application is designed iteratively, unit tests ensure each component works well with the others while a functional test ensures each feature performs as expected.
To conclude, the incremental process model offers a very convenient way of analyzing, planning, testing and designing the online course management system. The iterative build phases make it a convenient way to implement and deploy the desired features of the whole system on a feature set by feature set basis. The incremental model applies the same steps as waterfall model iteratively, but unlike the iterative model it is limited in the number of steps it is repeated. Through careful application of the software design methodology, a quality product is assured.
References
Bajaj, A., & Wrycza, S. (2009). Systems analysis and design for advanced modeling methods. Hershey, PA: Information Science Reference.
Dennis, A., Wixom, B., & Roth, R. (2015). Systems analysis and design. Hoboken, NJ: Wiley.
Jacobson, I., Booch, G., Rumbaugh, J., Rumbaugh, J., & Booch, G. (1999). The unified software development process (Vol. 1). Reading: Addison-wesley.
Kats, Y. (2010). Learning management system technologies and software solutions for online teaching. Hershey, PA: Information Science Reference.
Wang, S., & Wang, H. (2012). Information systems analysis and design. Boca Raton: Universal-Publishers.
Delivering a high-quality product at a reasonable price is not enough anymore.
That’s why we have developed 5 beneficial guarantees that will make your experience with our service enjoyable, easy, and safe.
You have to be 100% sure of the quality of your product to give a money-back guarantee. This describes us perfectly. Make sure that this guarantee is totally transparent.
Read moreEach paper is composed from scratch, according to your instructions. It is then checked by our plagiarism-detection software. There is no gap where plagiarism could squeeze in.
Read moreThanks to our free revisions, there is no way for you to be unsatisfied. We will work on your paper until you are completely happy with the result.
Read moreYour email is safe, as we store it according to international data protection rules. Your bank details are secure, as we use only reliable payment systems.
Read moreBy sending us your money, you buy the service we provide. Check out our terms and conditions if you prefer business talks to be laid out in official language.
Read more