Publication | Open Access
Teaching software engineering for AI-enabled systems
48
Citations
15
References
2020
Year
Unknown Venue
Artificial IntelligenceEngineeringArtificial ConditionsSoftware EngineeringSoftware Engineering EducationIntelligent SystemsCareful EngineeringSoftware AnalysisSystem Engineering EducationAutomated Software EngineeringData ScienceTeaching AiSystems EngineeringLearning AnalyticsComputer ScienceSoftware EngineersAi EducationSoftware DesignProgramming Methodology
Software engineers have significant expertise to offer when building intelligent systems, drawing on decades of experience and methods for building systems that are scalable, responsive and robust, even when built on unreliable components. Systems with artificial-intelligence or machine-learning (ML) components raise new challenges and require careful engineering. We designed a new course to teach software-engineering skills to students with a background in ML. We specifically go beyond traditional ML courses that teach modeling techniques under artificial conditions and focus, in lecture and assignments, on realism with large and changing datasets, robust and evolvable infrastructure, and purposeful requirements engineering that considers ethics and fairness as well. We describe the course and our infrastructure and share experience and all material from teaching the course for the first time.
| Year | Citations | |
|---|---|---|
Page 1
Page 1