Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
Software engineering education: a roadmap
Proceedings of the Conference on The Future of Software Engineering
Death March: The Complete Software Developer's Guide to Surviving "Mission Impossible" Projects
Death March: The Complete Software Developer's Guide to Surviving "Mission Impossible" Projects
Software Change Impact Analysis
Software Change Impact Analysis
Agile Software Development with Scrum
Agile Software Development with Scrum
The software engineering capstone: structure and tradeoffs
SIGCSE '02 Proceedings of the 33rd SIGCSE technical symposium on Computer science education
The Effects of "Pair-Pressure" and "Pair-Learning" on Software Engineering Education
CSEET '00 Proceedings of the 13th Conference on Software Engineering Education & Training
Incremental Change in Object-Oriented Programming
IEEE Software
An experimental card game for teaching software engineering processes
Journal of Systems and Software - Special issue: Software engineering education and training
Changing the paradigm of software engineering
Communications of the ACM - Music information retrieval
Using the inverted classroom to teach software engineering
Proceedings of the 30th international conference on Software engineering
Open source contribution as an effective software engineering class project
Proceedings of the 16th annual joint conference on Innovation and technology in computer science education
Software Engineering: The Current Practice
Software Engineering: The Current Practice
An approach for evaluating FOSS projects for student participation
Proceedings of the 43rd ACM technical symposium on Computer Science Education
Teaching software engineering and software project management: an integrated and practical approach
Proceedings of the 34th International Conference on Software Engineering
Teaching collaborative software development: a case study
Proceedings of the 34th International Conference on Software Engineering
Integrating tools and frameworks in undergraduate software engineering curriculum
Proceedings of the 34th International Conference on Software Engineering
Ten tips to succeed in global software engineering education
Proceedings of the 34th International Conference on Software Engineering
Improving PSP education by pairing: an empirical study
Proceedings of the 34th International Conference on Software Engineering
Software Change in the Solo Iterative Process: An Experience Report
AGILE '12 Proceedings of the 2012 Agile Conference
Hi-index | 0.00 |
Both employers and graduate schools expect computer science graduates to be able to work as developers on software projects. Software engineering courses present the opportunity in the curriculum to learn the relevant skills. This paper presents our experience from Wayne State University and reviews challenges and constraints that we faced while trying to teach these skills. In our first software engineering course, we teach the iterative software development that includes practices of software change, summarized in the phased model of software change. The required resources for our software engineering course are comparable to the other computer science courses. The students - while working in teams - are graded based on their individual contribution to the team effort rather than on the work of the other team members, which improves the fairness of the grading and considerably lessens the stress for the best students in the course. Our students have expressed a high level of satisfaction, and in a survey, they indicated that the skills that they learned in the course are highly applicable to their careers.