A. Bollin, E. Hochmüller, R. Mittermeir, L. Samuelis
Software Engineering education must account for a broad spectrum of knowledge and skills software engineers will be required to apply throughout their professional life. Covering all the topics in depth within a university setting is infeasible due to curricular constraints as well as due to the inherent differences between educational institutions and the actual workplaces of individual graduates. This paper shows how a flexible simulation environment can link the various topic areas of software engineering in the same way they are interwoven in the daily work of practitioners. The authors report their experience gained in using such an environment in their courses at their different institutions, each one having a very distinct focus. Customization of the environment and respective didactical changes can address students with different maturity levels, educational aims, and backgrounds.
{"title":"Experiences with Integrating Simulation into a Software Engineering Curriculum","authors":"A. Bollin, E. Hochmüller, R. Mittermeir, L. Samuelis","doi":"10.1109/CSEET.2012.18","DOIUrl":"https://doi.org/10.1109/CSEET.2012.18","url":null,"abstract":"Software Engineering education must account for a broad spectrum of knowledge and skills software engineers will be required to apply throughout their professional life. Covering all the topics in depth within a university setting is infeasible due to curricular constraints as well as due to the inherent differences between educational institutions and the actual workplaces of individual graduates. This paper shows how a flexible simulation environment can link the various topic areas of software engineering in the same way they are interwoven in the daily work of practitioners. The authors report their experience gained in using such an environment in their courses at their different institutions, each one having a very distinct focus. Customization of the environment and respective didactical changes can address students with different maturity levels, educational aims, and backgrounds.","PeriodicalId":385043,"journal":{"name":"2012 IEEE 25th Conference on Software Engineering Education and Training","volume":"75 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-04-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115933096","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Code review is believed to be an effective technique to remove defects in early development stage and improve software quality. Therefore, it is regarded as one of the basic skills of qualified software engineers. Consequently, most curricula for SE students incorporated knowledge about code review in different courses. However, how to teach students to conduct efficient code review remains challenging. Many reports claimed that using checklist during code review could increase review efficiency (percentage of defects removed in code review). Nevertheless, we found a quite different result through analyzing the data collected from a PSP course took by freshmen. Results indicate that checklist contributes more to helping beginners conduct code review than to improving review efficiency. This finding implies that educators need to properly recognize the role of checklist in code review for students and explore more approaches to help students master skills to conduct efficient code reviews.
{"title":"The Effect of Checklist in Code Review for Inexperienced Students: An Empirical Study","authors":"Guoping Rong, Jingyi Li, Mingjuan Xie, Tao Zheng","doi":"10.1109/CSEET.2012.22","DOIUrl":"https://doi.org/10.1109/CSEET.2012.22","url":null,"abstract":"Code review is believed to be an effective technique to remove defects in early development stage and improve software quality. Therefore, it is regarded as one of the basic skills of qualified software engineers. Consequently, most curricula for SE students incorporated knowledge about code review in different courses. However, how to teach students to conduct efficient code review remains challenging. Many reports claimed that using checklist during code review could increase review efficiency (percentage of defects removed in code review). Nevertheless, we found a quite different result through analyzing the data collected from a PSP course took by freshmen. Results indicate that checklist contributes more to helping beginners conduct code review than to improving review efficiency. This finding implies that educators need to properly recognize the role of checklist in code review for students and explore more approaches to help students master skills to conduct efficient code reviews.","PeriodicalId":385043,"journal":{"name":"2012 IEEE 25th Conference on Software Engineering Education and Training","volume":"79 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-04-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132300985","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The current education model and practices in the Higher education sector in China have been successful in educating students for academic excellence, for producing industry-linked and practice-oriented graduates, who could quickly fit into the industrial working environment, has been a problem. There is a big gap between the theoretical knowledge learned in school and the practical knowledge and skills needed in the industry. National Pilot School of Software (NPSS) at Harbin Institute of Technology (HIT) has started to explore the way to reform the current education system since 2002. Over the nine years practices HIT-NPSS has developed a gradually industrialization education model with industryoriented curricula and some best practices. The software engineering education model which became a factual instance in education reforming for universities, and also an answer for the Excellent Engineer Plan of State Ministry of Education in China.
{"title":"The Exploration and Practice of Gradually Industrialization Model in Software Engineering Education - A Factual Instance of the Excellent Engineer Plan of China","authors":"Shu Liu, Peijun Ma, Dong Li","doi":"10.1109/CSEET.2012.24","DOIUrl":"https://doi.org/10.1109/CSEET.2012.24","url":null,"abstract":"The current education model and practices in the Higher education sector in China have been successful in educating students for academic excellence, for producing industry-linked and practice-oriented graduates, who could quickly fit into the industrial working environment, has been a problem. There is a big gap between the theoretical knowledge learned in school and the practical knowledge and skills needed in the industry. National Pilot School of Software (NPSS) at Harbin Institute of Technology (HIT) has started to explore the way to reform the current education system since 2002. Over the nine years practices HIT-NPSS has developed a gradually industrialization education model with industryoriented curricula and some best practices. The software engineering education model which became a factual instance in education reforming for universities, and also an answer for the Excellent Engineer Plan of State Ministry of Education in China.","PeriodicalId":385043,"journal":{"name":"2012 IEEE 25th Conference on Software Engineering Education and Training","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-04-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128456138","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
In this session, we will take a look at what kinds of research we think are needed in the area of education and training for software engineering. As groups, we will brainstorm about what we should be studying and how. We will also take a short look at the many ways to communicate before, during, and after research. This will not be a formal roadmapping of research directions, but more an informal discussion of possibilities. The goal of this panel is to promote and exchange ideas about research in our field, encourage possibilities for collaboration, and get people started on research and reporting for next year!
{"title":"Research Directions for Software Engineering Education and Training","authors":"Mike Barker","doi":"10.1109/CSEET.2012.36","DOIUrl":"https://doi.org/10.1109/CSEET.2012.36","url":null,"abstract":"In this session, we will take a look at what kinds of research we think are needed in the area of education and training for software engineering. As groups, we will brainstorm about what we should be studying and how. We will also take a short look at the many ways to communicate before, during, and after research. This will not be a formal roadmapping of research directions, but more an informal discussion of possibilities. The goal of this panel is to promote and exchange ideas about research in our field, encourage possibilities for collaboration, and get people started on research and reporting for next year!","PeriodicalId":385043,"journal":{"name":"2012 IEEE 25th Conference on Software Engineering Education and Training","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129903103","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Software analytics is to enable software practitioners to perform data exploration and analysis in order to obtain insightful and actionable information for data-driven tasks around software and services. When applying analytic technologies in practice of software analytics, one should incorporate (1) a broad spectrum of domain knowledge and expertise, e.g., management, machine learning, large-scale data processing and computing, and information visualization; and (2) investigate how practitioners take actions on the produced information, and provide effective support for such information-based action taking. This tutorial instructs materials to equip participants with skills and knowledge of conducting software analytics along with teaching and training students and practitioners for software analytics in university or industrial settings.
{"title":"Teaching and Training for Software Analytics","authors":"D. Zhang, Yingnong Dang, Shi Han, Tao Xie","doi":"10.1109/CSEET.2012.14","DOIUrl":"https://doi.org/10.1109/CSEET.2012.14","url":null,"abstract":"Software analytics is to enable software practitioners to perform data exploration and analysis in order to obtain insightful and actionable information for data-driven tasks around software and services. When applying analytic technologies in practice of software analytics, one should incorporate (1) a broad spectrum of domain knowledge and expertise, e.g., management, machine learning, large-scale data processing and computing, and information visualization; and (2) investigate how practitioners take actions on the produced information, and provide effective support for such information-based action taking. This tutorial instructs materials to equip participants with skills and knowledge of conducting software analytics along with teaching and training students and practitioners for software analytics in university or industrial settings.","PeriodicalId":385043,"journal":{"name":"2012 IEEE 25th Conference on Software Engineering Education and Training","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132323800","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}