Case Method for Computing Education (CMCE) A Strategy for Teaching Software Engineering Emanuel S. Grant Department of Computer Science University of North Dakota North Dakota, USA grante@aero.und.edu Abstract—A fundamental artifact of any academic research is The international collaborative teaching paradigm will the data used as the basis of that research effort. A group of consist of a repository of teaching material that represents the researchers, from institutions in multiple territories, has identified commonalities and variabilities that have been embarked on an ambitious research project that is aimed at identified as essential for the teaching of software engineering. enhancing the teaching of software engineering in four-year The topography of this repository will be an ontologically undergraduate programs. The research project details a set of structured set of teaching and assessment artifacts that is based objective, with the first being the capture of data that will be the on a set of desired program/course outcomes. A key element basis of the research effort. The first of these workshops was of this ontologically structured repository of artifacts will be held in August 2011. The data capture activity involves work the use of cases around which the outcomes will be realized. with software engineering educators and representatives from the information technology industry. The data collection task Figure 1 illustrates the ontological relationship that will be sought to identify a set of topics that are considered suitable for implemented in the repository between the teaching and teaching software engineering, along with identification of the assessment artifacts. years and depth at which these topics should be taught. The topics are derived from the outcome goals of the course/program Year 1 Year 2 Year 3 Year 4 and are rooted in the case-based pedagogy. M:M Keywords—Software engineering, curriculum, case-based teaching, pedagogy Knowledge Knowledge Knowledge Knowledge ... Area 1 Area 2 Area 3 Area n I. INTRODUCTION 1:M A group of software engineering educators, committed to Objective 1 Objective 2 Objective 3 ... Objective n the advancement of the teaching of software engineering has embarked on a project to develop and support the creation and adaptation of a common set of learning materials and teaching M:M strategies at the undergraduate level of education. The expected outcome of this project is a framework, in the form of Course A Course B ... Course N a repository of essential software engineering teaching modules, assessment artifacts, course projects, and assignments 1:M that will be open to all educators in the discipline of software engineering. The philosophy of the research is that the ... Topic 1 Topic 2 Topic n availability of shared teaching material that have been developed by those knowledgeable in each topical area will 1:M advance the learning goals, and promote the adoption of teaching strategies that are in the students' best interest. Sub‐ Sub‐ topic 1 topic 2 The goal of the research is the identification of commonalities in teaching software engineering across Sub‐ multiple territories and institutions and the identification of a topic fundamental set of topics, and course material for teaching software engineering at the undergraduate level. The 1:M researchers will bring expertise from multiple sub-disciplines Supporting to ensure that a broad spectrum of shareholder interests’ are Content Question Bank represented. The data gather from shareholders will result in an integrated environment that leverages a set of best practices, with respect to software engineering teaching techniques, RELATIONSHIP question 200 question 201 processes, and material - towards the definition of an international collaborative teaching paradigm. Figure 1. Repository Topography 1st International Workshop on Case Method for Computing Education (CMCE 2015) 89 A. Case-based Pedagogy 3. Taking action by proposing alternate solutions, and The workshop participants will examine the need for case- evaluating the pros and cons of the solutions and their short- based teaching method in computing education and and long-term impact, and subsequently discuss the requirements for a case repository and 4. Finally, being able to “take away” the generalizable set of practical tips on how case method can be incorporated concepts and principles from the case. into the different courses, over a four-year undergraduate degree in software engineering. The activities can differ depending on the course that is being taught. For example, in a management oriented course, Faculty teaching computing courses face the difficult an activity can be answering discussion questions pertaining to challenge of how to prepare students for the real world of the case, “Should the marketing manager launch the product?”. computing practice. It is essential to teach concepts and In a technology oriented course, an activity can include the principles but at the same time one has to translate this directly students having to design and evaluate solutions, “Propose and into real-world activity, for example, in software engineering evaluate two alternative IT solution architectures for discipline, how to design, develop, and maintain software implementing the automated fulfilment process”. solutions. Though some faculty have used case method for teaching computing courses, there has been no concerted effort C. The Rationale for Case-based Teaching by the professional computing communities to promote this pedagogy. Case method has been successfully applied in Case teaching method provides a number of benefits to teaching other professions including law, medicine, and enhance student learning through “interactive pedagogy” by business [1]. Though there is great pedagogical value in case stimulating critical thinking and problem solving skills and by method, computing has not leveraged this method for teaching. creating reasonably realistic replicas of actual situations--which One of the main reasons for this is the lack of cases and a include incomplete information, time constraints, and repository where faculty can search and find useful cases. conflicting goals. This leads to enhances student motivation Another is the fact that there is very little written and sharing and well-aligned learning environment, where practice and among faculty on how to use cases when teaching technology theory come together. This is especially true when teaching oriented topics such as software engineering, programming, technical topics through traditional lecture that is often very solution architecture, etc. dry and boring. Following are some benefits of using cases in computing education: B. What is case method? • Helps to introduce real world scenarios and problems The case method uses two elements namely the case, and a into the classroom, set of activities related to that case [1]. The case is a rich • Convey knowledge of what computing professionals narrative that provides detailed information about a situation in do and how they work, which an individual or group must make a decision or solve a problem. Cases take many forms, and there are varieties of • Develop effective problem-solving skills, which are ways to write them. Usually it comprises the following: situated in a real world context, • A detailed description of the problem’s context, which • Helps students to better connect theory and practice, at the least include the current situation and background • Enhance cooperative learning skills in the class, information, • A character that plays the central role and that D. The Way Forward character has to be solve the problem, In order to drive the case method in computing education, • Supporting data, this can include a range; data tables, as a community involved in teaching computing courses, we quoted statements from the various actors in the case, need to: supporting documents, images, video, or audio • Develop a set of sample cases that can be used in • The case is not required to provide any analysis or teaching specific computing courses, for example, object conclusions. oriented design, enterprise integration, software testing, etc., and share them with other faculty. Students working on the case during the classroom activities focus on analyzing the case to understand and explain • In order to enable sharing, we need to develop an the events, evaluate and propose solution options to solve the online repository where faculty can submit teaching cases and problem, predict the effects of taking actions, etc. The also search and download teaching cases. activities can be classified into the following four steps [2]: To drive the above actions, we intend to run Case Method 1. Understanding the case-identifying the important facts for Computing Education (CMCE) workshops in major of the case, computing education conferences. An important aspect of any research is the use of data that will be transformed into 2. Analyzing the case by understanding the issues and information through the process of the research work. It is challenges from multiple perspectives, evaluating solutions fundamental that the data used is correct and sufficient. It is proposed in the case, expected that the workshops used for data capture in this 1st International Workshop on Case Method for Computing Education (CMCE 2015) 90 research will correct and sufficient, as it will be sourced from a test/exams, assignments, term projects, term papers, course diverse population in multiple sessions. text, case studies, etc.), and course assessment material (student surveys/questionnaires, course evaluations, etc.). II. THE RESEARCH PROJECT Figure 2 illustrates the activities of the first phase of the this project. The pre-Repository seminar was the first event, and had the stated goals of disseminating information, gathering initial opinions, and inviting participation. The second event is a series of workshops that are intended to garner research data, and establish collaborative relationships with a broad range of researchers, private sector representatives, and government agencies at various institutions. Figure 3. Research Project Phase 2 Description Access to the Repository will be over the Internet, which will also provide the gateway for requesting/suggesting updates to the Repository (addition/deletion of items, and modification of existing items). The architectural platform for the Repository will be Cloud, and associated computing technologies [6]. Cloud Computing, software as a service (SaaS) [6], and service-oriented architecture (SOA) [7] are growing phenomena in the business world. In contrast to traditional software systems, where organizations maintain technical staff and enough computer hardware to run their business applications effectively, SaaS and Cloud Computing Figure 2. Research Project Phase 1 Description are beginning to change this traditional way of managing information technology (IT). SaaS has an incentive to release The first seminar was hosted at the Holy Angel University, new features as soon as they are completed to the users. Philippines July 2010. This seminar had in attendance ninety- five students and faculty members from twenty educational institutions in the central Philippines region, along with representatives from government agencies and business professionals. There were two main presentations, a hands-on tutorial, and a panel discussion from researchers of this project. The first presentation [3] examined the funding and research trend in SE in the USA, and looked at the impact the collaboration between Asian researchers and their United States counterparts may have on the research trends. The second presentation [4] looked at a novel approach to teaching object-oriented analysis and design as a topic of a SE course. The hands-on tutorial [5] took the participants through the fundamental steps of developing an online course. The panel Figure 3. SEEK hierarchical organization showing KAs, Units and Topics discussion fielded a series of questions and answers from the A goal of the research work is providing users with the areas of the two main presentations. facility to develop program/course curriculum within a Figure 3 outlines the Repository development phase of the technology framework. Figure 4 illustrates the hierarchical research project. The Repository is intended to enhance and organization of the components of a curriculum. The body of advance the teaching and learning of SE topics at the knowledge that is deemed as appropriate for an undergraduate undergraduate level, by providing a collection of artifacts that program in software engineering is designated in SEEK[8]. captures the best practices in the field. SE educators will be SEEK is organized hierarchically into three levels. The highest able to access and use the Repository to develop course level is the education Knowledge Area which represents a curriculum and syllabus, or enhance existing courses with high particular sub-discipline of software engineering that is quality teaching and learning components. Educators will be generally recognized as a significant part of SE knowledge that able to select items for teaching and learning across the four an undergraduate should know. The second level is the units years of an undergraduate program. The Repository will store where each knowledge area is broken down into smaller items for curricula development (course topics, concepts, divisions or modules. Each unit is then subdivided to form the principles, etc.), syllabi development (recorded lectures, lowest level which is a set of topics. The research introduces 1st International Workshop on Case Method for Computing Education (CMCE 2015) 91 case examples that are linked to the topics; the case examples panel will have a moderator, who will be a project researcher provide the connection between theory and practice. or one of the presenting authors from the plenary session. Each panel will also include students, possibly both Figure 5 provides an overview of the methodology. Phase international and local. 1 details the data capture for the repository. This will build on the work already done by Grant, et. al. in [9] and [10] in order The main activities of the workshop will be the breakout to outline a path to the realization of the repository. Phase 2 panel sessions and the wrap-up plenary session. For the implements the repository development and population, given breakout, panel sessions the participants will be divided into the input from Phase 1. Finally, phase 3 illustrates utilization five groups that conducted discussions in the following SEEK of the repository for the delivery of the content and student areas: assessments as well as automated feedback to the repository. • Computing Essentials, • Software Modeling & Analysis and Design, PHASE 2 Build & Utilization • Software Verification & Validation, and Evolution, REPOSITORY Maintain • Professional Practice and Software Management, Model PHASE 1 Learning Outcomes, Content, PHASE 3 • Software Process and Software Quality, and Methods, Recommended Resources Faculty, Administrators, • the additional topic of case-based teaching. Domain Experts, Curriculum Designers Expert Knowledge Educators, Each panel group will discuss the topics listed under the Lectures, Question respective heading, from the SEEK areas. The groups will Projects, Examples Bank answer the following questions: Teaching Artifacts Delivery, Data Collection Assessments, etc. • Is this topic relevant to the fundamentals of SE? Collaboration Curriculum Design User • In which year(s) of the program should it be taught? Access Interface • What percentage of teaching time should be Feedback allocated? • What is the rationale for the selection of this topic? Figure 5. Overview of three phase structured approach In the wrap-up session of the workshop, the co-moderators will present the findings of their respective panels. These III. PHASE 1 WORKSHOP DESCRIPTION presentations will be followed by a question and answer The workshops call for submissions will require session. This session is intended to gather final overall participants to submit position papers that outlines their comments and recommendations and get the participants specific interest, anticipated contribution, and expected feedback on their views on the success of the day's activities. outcome of the workshop. Participants will be informed of the Specifically, the research group will seek to determine what the expected outcome of each breakout panel session and the participants thought was most useful, undesired, what should workshop in general. Plenary sessions will have presentations have been done more/less, and what influence the sessions made by participants that represent the focus of each breakout would have on their current teaching strategies. session group. At the end of the presentations there will be a question and answer period. The presenting authors of these IV. RELATED WORKS selected submitted papers will be asked to co-chair the relevant The Software Engineering Disciplinary Commons (SEDC) breakout session panel. (http://sec.cs.siue.edu/) is a project that is funded by the The main input used for the breakout panel sessions will be National Science Foundation (NSF) (http://www.nsf.gov) of sections from the Institute of Electrical and Electronic the United States, and the program has two objectives. The Engineering Computer Society (IEEE-CS) and Association of first is the documentation and sharing of knowledge about Computing Machinery (ACM) Computing Curriculum, student learning on courses in software engineering, in four- Computer Science Curricula 2013: Curriculum Guidelines for year degree-granting institutions within a single geographic Undergraduate Degree Programs in Computer Science (IEEE- region. The second objective is to improve the quality of CS/ACM CS 2013) [8] document. The selected section of the teaching in software engineering (and computer science in document will be distributed to each of the participants, prior general) by establishing practices for the scholarship of to the start of the workshop for their review and preparation. teaching by making it public, peer-reviewed, and amenable for The selected sections of the document will comprise future use and development by other software engineering introductory information on the IEEE-CS/ACM CS 2013 educators. manuscript, and description of the SEEK, along with tables of This work encompasses that of the SEDC, and adds three the SEEK areas, with the supplementary information. more layers; namely – (1) international participation, (2) It is planned that each of the panel groups will be collaborative distributed teaching, and (3) retrieval and update comprised of four to six members. This would make for a of teaching material. Two of the researchers involved in this minimum of twenty to a maximum of thirty workshop project are participants in the SEDC project, and their participants, plus three workshop organizers and one to two experience from the SEDC project will be incorporated into resource personnel. The moderator’s main task will be the this project. recording of all panel matters compiling the panel report. Each 1st International Workshop on Case Method for Computing Education (CMCE 2015) 92 The IEEE Computer Society hosted a series of workshops [2] Shulman, J. H., Happy Accidents: Cases as Opportunities for Teacher in the early 1980s that initiated work on establishing standards Learning. American Educational Research Association April 2002, New Orleans, USA. for software engineering (SE) products and processes. That [3] Grant, E. S. (2010). Trends in Software Engineering Research, effort motivated the establishment of a Software Engineering International Seminar on Software Engineering Development and its Body of Knowledge (SWEBOK), which came into focus ten Application in Education, Holy Angel University, Philippines. years later. The mission statement of SWEBOK is “To [4] Sien, V. Y. (2010). Guidelines for teaching object-oriented analysis and establish the appropriate sets(s) of criteria and norms for design, International seminar on software engineering development and professional practice of software engineering upon which its application in education, Holy Angel University, Philippines.. industrial decisions, professional certification, and educational [5] Salta, M. T. (2010) Online Courseware Development, International curricula can be based.” This work is currently embodied in Seminar on Software Engineering Development and its Application in Education, Holy Angel University, Philippines. the 2004 SWEBOK Guide that is comprised of twelve chapters and four appendices. The guide sets out a baseline for body of [6] Mohammad A. F., & Grant E (2010). Cloud Computing, SaaS, and SOA 3.0: A New Frontier Proceedings of the International Conference on knowledge of SE. The IEEE Computer Society seeks to keep Cloud Computing and Virtualization 2010, Singapore the Guide relevant by updating it based on comments it [7] Mohammad A. F., & Grant E (2010). Cloud Computing, SaaS, and SOA receives from educators and practitioners in SE. 3.0: A New Frontier Proceedings of the International Conference on Cloud Computing and Virtualization 2010, Singapore. Sections of this document will be used in the workshop, as [8] Joint Task Force on Computing Curriculua, ACM/IEEE-CS, Computer foundational starting points for the work to be accomplished in Science Curricula 2013: Curriculum Guidelines for Undergraduate the workshops. The goal is to build from the existing body of Degree Programs in Computer Science, ACM, IEEE-CS USA, Dec. knowledge in this research area, towards achieving the project 2013. goals. Both IEEE documents are currently under-going major [9] Grant, E. Online Collaborative Teaching of Software Engineering in an updating and an outcome of the workshop effort is in International Multi-Campus Environment. First HAU International contributing to this update activity. Workshop on Enhancing Teaching & Learning of Software Engineering, Holy Angel University Angeles City, Philippines August 12, 2011. [10] Grant, E., Stokke, T., Helps, W., Esquivel, J., Concepcion, W. REFERENCES Enhancing Teaching & Learning of Software Engineering in an [1] Williams S. M., Putting Case-based Instructions into Context: International Environment. In Proceedings of the 2nd Annual Examples from Legal and Medical Education., Journal of Learning International Conference on Computer Science Education: Innovation Sciences, vol2, 4, 1992, pp.367–427. and Technology (CSEIT 2011), pages 36-41, 2011. 1st International Workshop on Case Method for Computing Education (CMCE 2015) 93