Student projects are not throwaways: teaching practical software maintenance in a software engineering course.
Claudia SzaboPublished in: SIGCSE (2014)
Keyphrases
- software maintenance
- software engineering
- software projects
- open source projects
- software development
- computer science curriculum
- engineering courses
- software evolution
- learning environment
- software systems
- reverse engineering
- software engineers
- effort estimation
- learning process
- software development and maintenance
- university level
- software development life cycle
- programming course
- source code
- object oriented systems
- development process
- teacher education
- computer programming
- software reuse
- teaching mathematics
- faculty members
- teaching materials
- software design
- artificial intelligence
- teaching methods
- program understanding
- science education
- program comprehension
- case study
- project management
- intelligent tutoring systems
- software architecture
- maintenance activities
- software artifacts
- requirements engineering
- maturity model
- student progress
- design patterns
- object oriented
- student participation
- software life cycle
- software quality
- software repositories
- open source software
- student learning
- machine learning
- real world
- student model
- high school
- knowledge management
- cooperative