Courseware is any form of computer or Web based learning material or Computer Aided Learning System, using digital media. Courseware Engineering (CE) is a new discipline that adapts and applies methods of Software Engineering (SE) to develop courseware.\ud The aim of SE is to bring engineering rigour to the task of software development. SE is a systematic approach to requirement's analysis, design, implementation, validation and verification, maintenance and the eventual retirement of software. Modern software artefacts are extremely complex. SE methodologies deal with this complexity via abstraction and modularization. Specific goals of SE are to produce software that is maintainable and reusable.\ud CE aims to make Courseware Development Methods equally rigorous and reliable as Software Engineering Methods. When developing new courseware, the initial design and ultimate implementation are critical to success. Therefore, a structured, documented approach provides a ‘clear roadmap’ for New Courseware Development (NCD) and can lead to successful implementation and a competitive advantage being achieved.\ud We review the lifecycle of courseware and the courseware development process from concept to consumer. We discuss the vital aspects of CE: templates, modularity, re-use, maintenance, project management, version control and evolution. We describe how modern object-oriented SE approaches, based upon Use-case Analysis and the Unified Modelling Language, may be adapted and applied to CE. Quality assurance aspects currently prevalent in SE also have a role in CE
To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.