Software Engineering Education, Analytics and Assessment Lab (SE2A2L)

Advancing Software Engineering through Data-Driven Insights

Software engineering is a vast discipline, and traditionally software engineering education has focused on three areas: engineering, architecture, and design. The SE2A2L lab introduces an emerging perspective that leverages collaborative software development skills, team processes, and developer productivity, informed by various streams of data in software engineering.

Software Engineering Perspectives

Our focus areas include:

  • The engineering perspective: Designing and operating software similar to a machine, emphasizing efficiency, robustness, and reliability.
  • The architectural view: Focusing on the design of subsystems, coupling, and integration of subsystems to work as a whole.
  • The design view: Concentrating on human-computer interaction, accessibility, ease-of-use, and user experience.
  • The SE2A2L perspective: Analyzing IDE logs, version control systems, developer communication, and planning activities to improve software development processes.

Primary Goals of the SE2A2L Lab

  • Investigate software engineering artifacts and processes through log data, from the context of individual and team elements.

  • Design interactive tools and technologies for formative and summative assessment of software engineering teams and individual students.
  1. What practices and artifacts impact software development processes and software products?
  2. How do programmers interact with legacy code systems?
  3. What metrics can we use to assess software development team projects and provide formative feedback?
  4. How does metacognition and reflection impact software engineering?
  5. How do AI co-pilot systems and LLMs affect code quality and developer productivity?