Salt Lake City, Utah
June 23, 2018
June 23, 2018
July 27, 2018
Software Engineering Division
23
10.18260/1-2--31243
https://peer.asee.org/31243
656
Dr. Kulczycki has extensive experience in research and development both in academia and industry. He received his doctorate from Clemson University in 2004 and began working as a professor at Virginia Tech shortly thereafter. In 2011 he went to work for Battelle Memorial Institute as a cyber research scientist, while continuing to be involved in teaching. He is currently back in the computer science department at Virginia Tech as a professor of practice, where he teaches, designs courses, and develops online content for Virginia Tech's highly-regarded Master of Information Technology program. Dr. Kulczycki has various publications on topics including formal specification and verification, web services, and software reuse. His interests include object-oriented programming, software specification and reasoning, design patterns, and online learning.
Steven Atkinson started his research career at the Software Verification Center at the University of Queensland, in Brisbane Australia. He worked as a postdoctoral research assistant professor at West Virginia University, before transitioning to industry for the last 18 years. He has worked at enterprise document management, healthcare and high performance networking startups. He was one of the first employees at LinkedIn, and has worked for 9 years for Netflix, where he currently works for the DVD division. He also works as a distance instructor at Virginia Tech in the Computer Science department.
One author of this paper (Dr. K) is a professor and the other (Dr. A) is a Silicon Valley web developer. This paper presents our experiences in co-teaching a web application development course at Virginia Tech.
It seems obvious to say that students benefit by having access to industry expertise when taking a course on software development. An industry perspective on any academic subject can be helpful, and as software development is such a practical side of software engineering, students often take these courses with an eye toward developing software professionally. Professional developers can not only answer student questions about how something is done in industry, but they can make the student understand why a topic is relevant.
Educators tend to have a good grasp of the capabilities and limitations of their students. They are good at choosing course materials that meet their course objectives, and they know how to assess students on whether those objectives have been met. Professionals know how things get done in industry. They understand the trade-offs and compromises that must be made to get a software product out the door. Their knowledge comes from other developers and from years of practical experience building real-world systems. Developers are more likely to use a methodology explained to them by someone they trust rather than use something they read about in a journal. When the educator and the industry professional are teaching as a team - both invested in the outcome of the course - the results can be transforming.
This was our experience in teaching a course on Web Application Development for Virginia Tech's online Master of Information Technology program. The students in this program are typically working professionals in an IT-related field, and their programming experience varies widely depending on whether they come from the business side of IT or the technical side. However, all students taking our course are required to have a basic introduction to Java. The course is completely online, and student-teacher interaction comes primarily from Q&A discussion boards (Piazza) and one live Q&A session per week (WebEx). The course we teach revolves around a semester-long project in which students develop a mini e-commerce web application complete with the design and implementation of the web interface, the database, and the application business logic.
In this paper we talk about how the course evolved when the developer joined the educator to teach the course. We focus on six important facets of the experience: (1) the initial conditions that allowed the collaboration to be successful, (2) the benefits that each party brought to the course, (3) the impact that online learning had on the collaboration, (4) how the development of custom tools improved the course, (5) the introduction of industry best-practice to the core project, and finally, (6) the challenges that face us as we continue to improve the course and apply our experience to other courses.
Kulczycki, G., & Atkinson, S. (2018, June), Why Educators Need to Team with Industry Professionals in Software Development Education Paper presented at 2018 ASEE Annual Conference & Exposition , Salt Lake City, Utah. 10.18260/1-2--31243
ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2018 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015