Open source software is becoming a key driver of the software industry, with key industry players continuing to invest more heavily in open source projects. One of the limiting factors in the continued expansion of open source development is the lack of software engineers with experience in open source methodologies. Open source projects provide unique opportunities for less experienced software engineers to gain experience solving real-world problems. In this workshop, we will explore the defining characteristics of successful open source projects, and we will discuss whether open source projects and methods should be introduced to the classroom, and if so, how.
{"title":"How Successful Open Source Projects Work, and How and Why to Introduce Students to the Open Source World","authors":"Greg DeKoenigsberg","doi":"10.1109/CSEET.2008.42","DOIUrl":"https://doi.org/10.1109/CSEET.2008.42","url":null,"abstract":"Open source software is becoming a key driver of the software industry, with key industry players continuing to invest more heavily in open source projects. One of the limiting factors in the continued expansion of open source development is the lack of software engineers with experience in open source methodologies. Open source projects provide unique opportunities for less experienced software engineers to gain experience solving real-world problems. In this workshop, we will explore the defining characteristics of successful open source projects, and we will discuss whether open source projects and methods should be introduced to the classroom, and if so, how.","PeriodicalId":424120,"journal":{"name":"2008 21st Conference on Software Engineering Education and Training","volume":"35 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-04-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131538283","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}
Students have to cope with new technologies, changing environments, and conflicting changes in capstone projects. They often lack practical experience, which might lead to failing to achieve a projectpsilas learning goals. Reusing experiences from other students provides a first step towards building up practical knowledge and implementing experiential learning in higher education. In order to further improve knowledge acquisition during experience reuse, we present an approach that generates so-called learning spaces, which automatically enrich experiences with additional learning content and contextual information. To evaluate our approach, we conducted a controlled experiment that showed a statistically significant improvement for knowledge acquisition by 204% compared to conventional experience descriptions. From a technical perspective, the approach provides a good basis for future applications that support learning at the workplace in academia and industry.
{"title":"Improving Knowledge Acquisition in Capstone Projects Using Learning Spaces for Experiential Learning","authors":"Eric Ras, Jörg Rech","doi":"10.1109/CSEET.2008.22","DOIUrl":"https://doi.org/10.1109/CSEET.2008.22","url":null,"abstract":"Students have to cope with new technologies, changing environments, and conflicting changes in capstone projects. They often lack practical experience, which might lead to failing to achieve a projectpsilas learning goals. Reusing experiences from other students provides a first step towards building up practical knowledge and implementing experiential learning in higher education. In order to further improve knowledge acquisition during experience reuse, we present an approach that generates so-called learning spaces, which automatically enrich experiences with additional learning content and contextual information. To evaluate our approach, we conducted a controlled experiment that showed a statistically significant improvement for knowledge acquisition by 204% compared to conventional experience descriptions. From a technical perspective, the approach provides a good basis for future applications that support learning at the workplace in academia and industry.","PeriodicalId":424120,"journal":{"name":"2008 21st Conference on Software Engineering Education and Training","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-04-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125546079","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 student project is a key component of a software engineering course. What exact goals should the project have, and how should the instructors focus it? While in most cases projects are artificially designed for the course, we use a deployable, realistic project. This paper presents the rationale for such an approach and assesses our experience with it, drawing on this experience to present guidelines for choosing the theme and scope of the project, selecting project tasks, switching student groups, specifying deliverables and grading scheme. It then expands the discussion to the special but exciting case of a project distributed between different universities, the academic approximation of globalized software development as practiced today by the software industry.
{"title":"The Allure and Risks of a Deployable Software Engineering Project: Experiences with Both Local and Distributed Development","authors":"B. Meyer, M. Piccioni","doi":"10.1109/CSEET.2008.41","DOIUrl":"https://doi.org/10.1109/CSEET.2008.41","url":null,"abstract":"The student project is a key component of a software engineering course. What exact goals should the project have, and how should the instructors focus it? While in most cases projects are artificially designed for the course, we use a deployable, realistic project. This paper presents the rationale for such an approach and assesses our experience with it, drawing on this experience to present guidelines for choosing the theme and scope of the project, selecting project tasks, switching student groups, specifying deliverables and grading scheme. It then expands the discussion to the special but exciting case of a project distributed between different universities, the academic approximation of globalized software development as practiced today by the software industry.","PeriodicalId":424120,"journal":{"name":"2008 21st Conference on Software Engineering Education and Training","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-04-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128369613","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}
We argue for the importance of a real customer in a capstone project course via reporting experiences from over ten years period at University of Jyvaskyla (JYU), and providing also practical knowledge and theoretical underpinnings for such an arrangement. Based on our experience and empirical data, we underline that this arrangement is a chance for the students to increase their occupational identity. Theoretically our rationalization of the course arrangement proposes self-direction, empowerment, motivation, and deep level learning strategies for the students.
{"title":"The Value of a Real Customer in a Capstone Project","authors":"Ville Isomöttönen, T. Kärkkäinen","doi":"10.1109/CSEET.2008.24","DOIUrl":"https://doi.org/10.1109/CSEET.2008.24","url":null,"abstract":"We argue for the importance of a real customer in a capstone project course via reporting experiences from over ten years period at University of Jyvaskyla (JYU), and providing also practical knowledge and theoretical underpinnings for such an arrangement. Based on our experience and empirical data, we underline that this arrangement is a chance for the students to increase their occupational identity. Theoretically our rationalization of the course arrangement proposes self-direction, empowerment, motivation, and deep level learning strategies for the students.","PeriodicalId":424120,"journal":{"name":"2008 21st Conference on Software Engineering Education and Training","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-04-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133976623","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}
Alice is a software environment in which students learn programming concepts by making animated movies and interactive applications. Monmouth University's Computer Science and Software Engineering departments each introduced the use of Alice in fall 2005 in two newly-created courses. The courses serve as freshman overviews of their respective disciplines and also, using Alice, introduce students to object-oriented programming ideas. Previously the first computer science course for majors in these programs was a traditional C++ Programming I course, which had a success rate of less than 50. This course was retained, but became the second course in these majors. From fall 2003 to spring 2007, 106 students enrolled in the traditional Programming I course in C++. Of these, 37 had previously taken one of the new overview courses including Alice; the remaining students had not. Among students who had not taken either new course, the success rate was 46.4%; among those who had, the success rate was 70.3%. The probability of observing these results if the new introductory courses using Alice had no effect would be less than 0.006. We have concluded that exposure to Alice in these courses has significantly increased students' probability of success in the traditional Programming I course.
{"title":"Using Alice in Overview Courses to Improve Success Rates in Programming I","authors":"K. Johnsgard, J. McDonald","doi":"10.1109/CSEET.2008.35","DOIUrl":"https://doi.org/10.1109/CSEET.2008.35","url":null,"abstract":"Alice is a software environment in which students learn programming concepts by making animated movies and interactive applications. Monmouth University's Computer Science and Software Engineering departments each introduced the use of Alice in fall 2005 in two newly-created courses. The courses serve as freshman overviews of their respective disciplines and also, using Alice, introduce students to object-oriented programming ideas. Previously the first computer science course for majors in these programs was a traditional C++ Programming I course, which had a success rate of less than 50. This course was retained, but became the second course in these majors. From fall 2003 to spring 2007, 106 students enrolled in the traditional Programming I course in C++. Of these, 37 had previously taken one of the new overview courses including Alice; the remaining students had not. Among students who had not taken either new course, the success rate was 46.4%; among those who had, the success rate was 70.3%. The probability of observing these results if the new introductory courses using Alice had no effect would be less than 0.006. We have concluded that exposure to Alice in these courses has significantly increased students' probability of success in the traditional Programming I course.","PeriodicalId":424120,"journal":{"name":"2008 21st Conference on Software Engineering Education and Training","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-04-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133718677","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}
O. Gotel, V. Kulkarni, C. Scharff, Long Chrea Neak
Facilitated by the Internet, global software development has emerged as a reality. The use of shared processes and appropriate tools is considered crucial to alleviate some of its issues (e.g., space and time differences), homogenizing the environment of development and interaction, and increasing the likelihood of success. Since 2005, Pace University in the United States has been collaborating with the Institute of Technology of Cambodia (ITC) and the University of Delhi in India to bring students together to work on global software development projects. This paper reports on our experiences and lessons from spring 2007 when the focus was on these students working together on the development of a single software system. One key objective was to investigate how to create a shared and open source tooling environment to support a distributed development process that has evolved over two years. The setting is unique in that it seeks to accommodate students from a mix of established, developing and emerging countries who, as a consequence, have had varying levels of exposure to the Internet and use it in non-similar ways. The findings, lessons and recommendations from our study are reported in this paper. Not surprisingly, when the perceived professional value of assumed dasiaeveryday technologiespsila is dissimilar across cultures, preparation for the communications tooling needs more attention than the engineering tooling. This has important implications for the emphasis placed on dasiaprocesspsila and dasiasoft skillspsila in the respective classrooms, and highlights some challenges facing emerging countries as they strive to become players in the global workforce.
{"title":"Working Across Borders: Overcoming Culturally-Based Technology Challenges in Student Global Software Development","authors":"O. Gotel, V. Kulkarni, C. Scharff, Long Chrea Neak","doi":"10.1109/CSEET.2008.16","DOIUrl":"https://doi.org/10.1109/CSEET.2008.16","url":null,"abstract":"Facilitated by the Internet, global software development has emerged as a reality. The use of shared processes and appropriate tools is considered crucial to alleviate some of its issues (e.g., space and time differences), homogenizing the environment of development and interaction, and increasing the likelihood of success. Since 2005, Pace University in the United States has been collaborating with the Institute of Technology of Cambodia (ITC) and the University of Delhi in India to bring students together to work on global software development projects. This paper reports on our experiences and lessons from spring 2007 when the focus was on these students working together on the development of a single software system. One key objective was to investigate how to create a shared and open source tooling environment to support a distributed development process that has evolved over two years. The setting is unique in that it seeks to accommodate students from a mix of established, developing and emerging countries who, as a consequence, have had varying levels of exposure to the Internet and use it in non-similar ways. The findings, lessons and recommendations from our study are reported in this paper. Not surprisingly, when the perceived professional value of assumed dasiaeveryday technologiespsila is dissimilar across cultures, preparation for the communications tooling needs more attention than the engineering tooling. This has important implications for the emphasis placed on dasiaprocesspsila and dasiasoft skillspsila in the respective classrooms, and highlights some challenges facing emerging countries as they strive to become players in the global workforce.","PeriodicalId":424120,"journal":{"name":"2008 21st Conference on Software Engineering Education and Training","volume":"101 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-04-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124128575","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 contributions of Nancy R. Mead have greatly shaped what software engineering education and training (SWEET) is today. This paper contains three tributes to Dr. Mead, each focusing on a different aspect of her legacy. The first tribute provides an overall view of her work in the SWEET field. The second essay describes her research contributions in SWEET. The final section discusses her role in the development of this conference and the challenges of building upon the solid foundations that Nancy Mead has provided the field.
Nancy R. Mead的贡献极大地塑造了今天的软件工程教育和培训(SWEET)。本文包含了对米德博士的三种致敬,每一种都集中在她的遗产的不同方面。第一篇文章概述了她在SWEET领域的工作。第二篇文章描述了她在SWEET的研究贡献。最后一部分讨论了她在这次会议发展中的作用,以及在南希·米德为该领域提供的坚实基础上建立的挑战。
{"title":"Software Engineering Education, Training, and Research: The Legacy of Nancy Mead","authors":"D. Bagert, D. Port, H. Saiedian","doi":"10.1109/CSEET.2008.34","DOIUrl":"https://doi.org/10.1109/CSEET.2008.34","url":null,"abstract":"The contributions of Nancy R. Mead have greatly shaped what software engineering education and training (SWEET) is today. This paper contains three tributes to Dr. Mead, each focusing on a different aspect of her legacy. The first tribute provides an overall view of her work in the SWEET field. The second essay describes her research contributions in SWEET. The final section discusses her role in the development of this conference and the challenges of building upon the solid foundations that Nancy Mead has provided the field.","PeriodicalId":424120,"journal":{"name":"2008 21st Conference on Software Engineering Education and Training","volume":"56 4","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-04-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121009965","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}
F. Siqueira, Gabriela Maria Cabel Barbarán, J. Becerra
The aim of a software factory is to obtain productivity, quality, scale, and control in software development. In this paper this concept is applied in a software engineering laboratory, creating an environment with well-defined processes for software development and management. In comparison with traditional software engineering laboratories, this proposal allows learning, in practice, of project management activities following quality standards. Also, the students follow a defined and controlled process, which makes it easier for them to understand the activities to be done. It also allows the students to face many problems that are common in enterprises, allowing an interaction among them and a discussion with the teacher about the best alternatives for solution. Finally, the use of this factory allows both a quantitative and a qualitative evaluation of the students.
{"title":"A Software Factory for Education in Software Engineering","authors":"F. Siqueira, Gabriela Maria Cabel Barbarán, J. Becerra","doi":"10.1109/CSEET.2008.10","DOIUrl":"https://doi.org/10.1109/CSEET.2008.10","url":null,"abstract":"The aim of a software factory is to obtain productivity, quality, scale, and control in software development. In this paper this concept is applied in a software engineering laboratory, creating an environment with well-defined processes for software development and management. In comparison with traditional software engineering laboratories, this proposal allows learning, in practice, of project management activities following quality standards. Also, the students follow a defined and controlled process, which makes it easier for them to understand the activities to be done. It also allows the students to face many problems that are common in enterprises, allowing an interaction among them and a discussion with the teacher about the best alternatives for solution. Finally, the use of this factory allows both a quantitative and a qualitative evaluation of the students.","PeriodicalId":424120,"journal":{"name":"2008 21st Conference on Software Engineering Education and Training","volume":"78 11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-04-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127177313","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}
This paper describes an undergraduate course in software engineering which introduces students to a range of approaches to developing software. This course is a required course in the Computer Science major. Special emphasis is given to PSP, CMMI, agile processes, and Open Source software development. Students work on a team project which involves developing a software process for a pretend company. The course also devotes attention to the strengths and weaknesses of various processes in terms of developing secure software. Students are asked to address security concerns in the second of their two team projects. Serving as a basic introduction to software engineering, this course also covers important issues relating to professional responsibilities, ethics and work culture. In many ways, the course introduces students to the human dimensions of engineering software.
{"title":"A Software Engineering Course with an Emphasis on Software Processes and Security","authors":"Richard G. Epstein","doi":"10.1109/CSEET.2008.19","DOIUrl":"https://doi.org/10.1109/CSEET.2008.19","url":null,"abstract":"This paper describes an undergraduate course in software engineering which introduces students to a range of approaches to developing software. This course is a required course in the Computer Science major. Special emphasis is given to PSP, CMMI, agile processes, and Open Source software development. Students work on a team project which involves developing a software process for a pretend company. The course also devotes attention to the strengths and weaknesses of various processes in terms of developing secure software. Students are asked to address security concerns in the second of their two team projects. Serving as a basic introduction to software engineering, this course also covers important issues relating to professional responsibilities, ethics and work culture. In many ways, the course introduces students to the human dimensions of engineering software.","PeriodicalId":424120,"journal":{"name":"2008 21st Conference on Software Engineering Education and Training","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-04-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129064786","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}
Educational modules, concise units of study capable of integrating theoretical/practical content and supporting tools, are relevant mechanisms to improve learning processes. In this paper we briefly discuss the establishment of mechanisms to ease the development of educational modules - a Standard Process for Developing Educational Modules and an Integrated Modeling Approach for structuring their learning content. The proposed mechanisms have been investigated in the development of the ITonCode module - an educational module for teaching inspection and testing techniques. Aiming at evaluating the module we have replicated an extended version of the Basili & Selby experiment, originally used for comparing V&V techniques, now considering the educational context. The obtained results were mainly analyzed in terms of the student's uniformity in detecting existent faults, giving us very preliminar evidences on the learning effectiveness provided by the module produced.
{"title":"An Experience on Applying Learning Mechanisms for Teaching Inspection and Software Testing","authors":"E. Barbosa, S. Souza, J. Maldonado","doi":"10.1109/CSEET.2008.12","DOIUrl":"https://doi.org/10.1109/CSEET.2008.12","url":null,"abstract":"Educational modules, concise units of study capable of integrating theoretical/practical content and supporting tools, are relevant mechanisms to improve learning processes. In this paper we briefly discuss the establishment of mechanisms to ease the development of educational modules - a Standard Process for Developing Educational Modules and an Integrated Modeling Approach for structuring their learning content. The proposed mechanisms have been investigated in the development of the ITonCode module - an educational module for teaching inspection and testing techniques. Aiming at evaluating the module we have replicated an extended version of the Basili & Selby experiment, originally used for comparing V&V techniques, now considering the educational context. The obtained results were mainly analyzed in terms of the student's uniformity in detecting existent faults, giving us very preliminar evidences on the learning effectiveness provided by the module produced.","PeriodicalId":424120,"journal":{"name":"2008 21st Conference on Software Engineering Education and Training","volume":"38 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-04-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132495399","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}