Software Engineering Educators Symposium (SEES)

CS0 Programming Course Using Scratch

Thorna Humphries
Norfolk State University
8 November 2010, 9:00 - 10:30 am

Abstract

Although the 2007-2008 Taulbee Survey indicated an increase in enrollment in computer science, some departments are still facing retention problems. At Norfolk State University, we are conducting a NSF sponsored CCLI study to ascertain the effectiveness of using Scratch as the first programming language for at-risk freshmen computer science (CS) students with respect to retention and fostering a positive attitude toward the CS major and their success in CS1 (the subsequent programming course). At-risk students are students who enter the major with weak mathematics backgrounds. As part of this study, a programming course was designed and offered in Fall 2009. In this talk, the motivation for using Scratch, topics covered in the course, example programming assignments, and some of the results of the study will be presented.

Biography

Thorna Humpries

Thorna Humphries is an associate professor in the Department of Computer Science at Norfolk State University in Norfolk, VA. She received a B.S. degree in Mathematics from Bennett College, a M.S. degree in computer science from MIT and a Ph.D. degree in computer science from the University of Colorado at Boulder. Prior to joining academia, she worked as a software engineer for seven years. Her research interests include programming methodology, software engineering and computer programming pedagogy. She serves as a member-at-large on the Board of the Association for Computer/Information Sciences and Engineering Departments at Minority Institutions (ADMI).

Slides

Teaching Software Design from a General Design Perspective

André van der Hoek
Donald Bren School of Information and Computer Sciences
8 November 2010, 11:00 - 12:30 pm

Abstract

Software design might just be one of the most difficult subjects to teach in software engineering. We certainly can introduce and do expose students to design notations, but it is the act of design that remains a mystery to them: how to actually devise a software system? In this talk we introduce the approach we have taken at UC Irvine in putting together two software design courses. Particularly highlighted in this talk is how to place software design in a general design perspective, how software design consists of multiple interrelated forms of design, and how to take a studio based approach to letting students practice, critique, and thereby learn software design.

Biography

André van der Hoek

André van der Hoek is a professor in the Department of Informatics of the Donald Bren School of Information and Computer Sciences and a faculty member of the Institute for Software Research, both at the University of California, Irvine. He holds a joint B.S. and M.S. degree in Business Oriented Computer Science from the Erasmus University Rotterdam, the Netherlands, and a Ph.D. degree in Computer Science from the University of Colorado at Boulder. His research focuses on understanding and advancing the role of design, coordination, and education in software engineering. He has authored and co-authored over 90 peer-reviewed journal and conference publications, and in 2006 was a recipient of an ACM SIGSOFT Distinguished Paper Award. He is a co-author of the 2005 Configuration Management Impact Report as well as the 2007 Futures of Software Engineering Report on Software Design and Architecture. He has served on numerous international program committees, is a member of the editorial board of ACM Transactions on Software Engineering and Methodology, and is program chair of the 2010 ACM SIGSOFT International Symposium on the Foundations of Software Engineering. He is a recipient of the 2009 Premier Award for Excellence in Engineering Education Courseware. He is the principal designer of the B.S. in Informatics at UC Irvine and was honored, in 2005, as UC Irvine Professor of the Year for his outstanding and innovative educational contributions.

Making Software Testing Engaging and Affordable in Early Programming Classes

Sebastian Elbaum
University of Nebraska - Lincoln
8 November 2010, 2:00 - 3:30 pm

Abstract

Software testing efforts account for a large part of software development costs. However, as educators, we often struggle to properly prepare students to perform even the most basic software testing activities. This struggle is caused by multiple factors: 1) it is challenging to effectively incorporate software testing into an already over-packed curriculum, 2) ad-hoc efforts to teach testing generally happen too late in the students' career, after bad habits have already been developed, and 3) these efforts lack the necessary institutional consistency and support to be effective. To address these challenges we created Bug Hunt, a web-based hands-on tutorial to engage students in learning software testing principles and techniques.

This SEES tutorial will cover the most interesting aspects of Bug Hunt including its lessons and feedback mechanisms, and the facilities for instructors to configure the tutorial and automate student assessment. In addition, data and experiences gained through four years of deployment and thousands of users will be presented, and plans to broaden the impact of Bug Hunt will be discussed.

Biography

Sebastian Elbaum

Sebastian Elbaum is an associate professor in the Computer Science and Engineering Department at the University of Nebraska - Lincoln. His research aims to improve software dependability through testing, monitoring, and analysis, and his teaching focuses on instilling cost-effective development principles. He is the recipient of an NSF Career Award which has funded part of the Bug Hunt project, an IBM Innovation Award, two ACM SigSoft Distinguished Paper Awards, and an UNL Award for Excellence in Graduate Education. He served as Program Chair for the 2007 International Symposium on Software Testing and Analysis, as Program Co Chair for the 2008 Empirical Software Engineering Symposium, and as Co-Editor for the Information and Software Technology Journal. He is in the Editorial Board of the ACM Transactions on Software Engineering and Methodology. He is a co-founder of the EUSES Consortium to support end user programmers and the E2 Software Engineering Group at UNL. He received his Ph.D. from the University of Idaho, and a Systems Engineering degree from Universidad Catolica de Cordoba, Argentina.

Slides

Innovative Approaches to the CS1/CS2 Course Sequence

Mehdi Jazayeri, Edward L. Jones & Gail Murphy
8 November 2010, 4:00 - 5:30 pm

Panel Abstract

The CS1 and CS2 sequence is the gateway to our discipline. These two courses impact retention of computer science majors and also provide a student's first impression of computer science (including software engineering). Thus, departments are constantly revisiting the pedagogy in these two courses to see how they can be improved. This panel will introduce three different approaches to the CS1/CS2 sequence. Each presenter has been or is currently involved in a redesign of the CS1/CS2 sequence at their institution. Each will give a brief overview of the old approach, a description of problems the new approach is addressing, and an overview of the new approach. The panel will then open to questions from participants.

Biographies

Mehdi Jazayeri

Mehdi Jazayeri has been a professor of computer science in the Faculty of Informatics at the University of Lugano since October 2004. He was the founding dean of the faculty. Before that he was a professor and head of the Distributed Systems Group at the Technical University of Vienna (1994 -2004). He worked at several startup companies in Silicon Valley before joining Hewlett-Packard Laboratories in Palo Alto for ten years (1984-94). He began his career as an assistant professor at the Computer Science Department of the University of North Carolina at Chapel Hill (1975-1980). Mehdi Jazayeri is an IEEE Fellow and was program co-chair of ICSE 2000 and program chair of ESEC-FSE 1997. He received a bachelor's degree in Electrical Engineering and Computer Science from MIT (1971), Master's degree in Computer Engineering from Case Western Reserve University (1973), and a PhD in Computer Science from Case Western Reserve University (1975).

Slides

Edward L. Jones

Edward L. Jones is Associate Professor and Chair of the Department of Computer & Information Sciences at Florida A&M University. He received the B.S. degree in Mathematics from Johnson C. Smith University, the M.S. degree in Computer Science from Cornell University, and the Ph.D. in Computer Science from the University of North Carolina at Chapel Hill. Prior to joining Florida A&M, he worked 13 years as a software engineer for Harris Corporation. His research interests include information assurance, software engineering, software testing, test-driven specification, and the transfer of software engineering principles, practices and tools into the undergraduate curriculum. He has served on the Board of the Association for Computer/Information Sciences and Engineering Departments at Minority Institutions (ADMI).

Slides

Gail Murphy

Gail Murphy is a professor in the Department of Computer Science at the University of British Columbia in Vancouver Canada. She received her B.Sc. in Computer Science from the University of Alberta and her M.S. and Ph.D. degrees in Computer Science & Engineering from the University of Washington. Prior to obtaining her graduate degrees, she spent five years as a software developer in industry. Her research interests are in tools to improve the productivity of software developers. The most widely adopted tool from her research group is the Eclipse Mylyn tool that provides a task-focused interface for the Eclipse development environment and that is used by hundreds of thousands of developers daily. Gail is involved in many parts of the software engineering research community, including as a member of the editorial boards of CACM and ACM TOSEM, as a co-program chair of ICSE 2012, as a member-at-large for ACM SIGSOFT and as a co-organizer of many events. She is also currently a co-founder of Tasktop Technologies Incorporated.

Slides