This subtopic covers Software Engineering which provides the technical backbone for creating and maintaining scalable learning solutions. It also supports the core role of data instrumentation and analytics for data-informed decisions in learning engineering. Learning engineering is informed by software engineering practices such as lean & agile development methodologies, modular and distributed architectures, and adherence to technical standards for interoperability, security, and accessibility. The practice of software engineering increasingly relies on generative AI, vibe programming, and co-development. Software engineering applied to learning engineering includes: Building, integrating, configuring, and managing platforms and tools that support learning, learning conditions, and learning data instrumentation and analysis; Ensuring that learning technologies are user-friendly and accessible; and Adhering to technical standards for interoperability, security, and accessibility (e.g., IEEE, ISO, W3C).
Generally accepted knowledge in the software engineering domain is covered in the Guide to the Software Engineering Body of Knowledge[3]. However, the knowledge needed by professionals to effectively and efficiently produce software, at new norms of productivity, is shifting due to advances in generative AI and other technologies.
H. Washizaki, eds., Guide to the Software Engineering Body of Knowledge (SWEBOK Guide), Version 4.0, IEEE Computer Society, 2024; www.swebok.org.