5
Minding the Gap: Bridging Computing Science and Business Studies with an Interdisciplinary Innovation Challenge Jan Kietzmann Faculty of Business Administration Simon Fraser University [email protected] Herbert H. Tsang Department of Computer Science University of Calgary School of Computing Science Simon Fraser University [email protected] ABSTRACT For today’s information technology organization, working in teams across functional and even organizational boundaries has become an integral part of every project. When asked about these projects, practitioners regularly report on how grave differences between business professionals and tech- nology teams have negatively affected project performance. The serious gap between how the two sides think, talk and work is systemic already in the training and education of both Business and Computer Science students at the univer- sity level. This paper describes the design of a competitive SFU Innovation Challenge which aims to bridge that gap by tasking interdisciplinary groups to create iPhone application prototypes and related business innovation roadmaps. This document then summarizes the objectives of the SFU Inno- vation Challenge, and reports on the difficulties and posi- tive results that materialized when students combined their technological problem- solving techniques and managerial strategies for effectively confronting real-world problems. Categories and Subject Descriptors D.2.9 [Software Engineering]: Management—life cycle, programming teams, software configuration management, soft- ware quality assurance ; K.3.2 [Computers and Educa- tion]: Computer and Information Science Education—com- puter science education, curriculum, information systems education. General Terms Innovation management, documentation, design, experimen- tation. Keywords Pedagogy, retention, innovation, technology management, experience report, computer science, software development lifecycle, software engineering, partnerships, education. 1. INTRODUCTION Today’s information technology (IT) industry is confronted with a number of far-reaching problems. Competition from abroad has increased substantially over the past years and North American IT- related expenditure has decreased dur- ing the economic downturn, while at the same time the pres- sure to stay abreast of the rapidly changing pace of technol- ogy is growing. Aside from these external factors, it seems that many of the problems Canadian firms need to overcome to stay compet- itive are internal and systemic. It seems that an “us against them” attitude prevails between the two major participants of any IT project: the technologists and the business pro- fessionals. Too often, business professionals develop busi- ness models and design organizational workflow specifica- tions without comprehending the technological complexities required to build the systems they desire. These specifica- tions are then passed on to software engineers who are tasked to design information systems based on unclear estimates of the effort, skill, technology and budget needed for the task. The resulting disconnect between the products promised to clients and the systems built are often only the start of a “blame game”, as both Computer Science and Business pro- fessionals claim that demands were unreasonable from the other side. To university instructors, this is an alarming call to action. As we continue to educate students in silos, we contribute to the everyday frustration of IT and Business profession- als, let alone the inherent problem that weakens our com- petitiveness on a local, domestic and international level. Of course, this is not a new phenomenon, but despite the clear signs, symptoms and effects, little has been done by univer- sities to fix the underlying self-reinforcing root-cause. Com- puter Science and Business students continue to be educated in separation, and graduates still speak inherently different professional languages when they enter a workforce that in- creasingly demands that they work closely together. In the Fall of 2009, Dr. Jan Kietzmann from the Faculty of Business and Dr. Herbert H. Tsang from the School of Computing Science, both at Simon Fraser University (SFU)

Minding the gap: Bridging Computing Science and Business Studies with an Interdisciplinary Innovation Challenge

Embed Size (px)

DESCRIPTION

For today’s information technology organization, working in teams across functional and even organizational boundaries has become an integral part of every project. When asked about these projects, practitioners regularly report on how grave differences between business professionals and tech- nology teams have negatively affected project performance. The serious gap between how the two sides think, talk and work is systemic already in the training and education of both Business and Computer Science students at the univer- sity level. This paper describes the design of a competitive SFU Innovation Challenge which aims to bridge that gap by tasking interdisciplinary groups to create iPhone application prototypes and related business innovation roadmaps. This document then summarizes the objectives of the SFU Inno- vation Challenge, and reports on the difficulties and posi- tive results that materialized when students combined their technological problem- solving techniques and managerial strategies for effectively confronting real-world problems.

Citation preview

Page 1: Minding the gap: Bridging Computing Science and Business Studies with an Interdisciplinary Innovation Challenge

Minding the Gap: Bridging Computing Science andBusiness Studies with an Interdisciplinary Innovation

Challenge

Jan KietzmannFaculty of Business Administration

Simon Fraser [email protected]

Herbert H. TsangDepartment of Computer Science

University of CalgarySchool of Computing Science

Simon Fraser [email protected]

ABSTRACTFor today’s information technology organization, working inteams across functional and even organizational boundarieshas become an integral part of every project. When askedabout these projects, practitioners regularly report on howgrave differences between business professionals and tech-nology teams have negatively affected project performance.The serious gap between how the two sides think, talk andwork is systemic already in the training and education ofboth Business and Computer Science students at the univer-sity level. This paper describes the design of a competitiveSFU Innovation Challenge which aims to bridge that gap bytasking interdisciplinary groups to create iPhone applicationprototypes and related business innovation roadmaps. Thisdocument then summarizes the objectives of the SFU Inno-vation Challenge, and reports on the difficulties and posi-tive results that materialized when students combined theirtechnological problem- solving techniques and managerialstrategies for effectively confronting real-world problems.

Categories and Subject DescriptorsD.2.9 [Software Engineering]: Management—life cycle,programming teams, software configuration management, soft-ware quality assurance; K.3.2 [Computers and Educa-tion]: Computer and Information Science Education—com-puter science education, curriculum, information systemseducation.

General TermsInnovation management, documentation, design, experimen-tation.

KeywordsPedagogy, retention, innovation, technology management,experience report, computer science, software development

lifecycle, software engineering, partnerships, education.

1. INTRODUCTIONToday’s information technology (IT) industry is confrontedwith a number of far-reaching problems. Competition fromabroad has increased substantially over the past years andNorth American IT- related expenditure has decreased dur-ing the economic downturn, while at the same time the pres-sure to stay abreast of the rapidly changing pace of technol-ogy is growing.

Aside from these external factors, it seems that many of theproblems Canadian firms need to overcome to stay compet-itive are internal and systemic. It seems that an “us againstthem” attitude prevails between the two major participantsof any IT project: the technologists and the business pro-fessionals. Too often, business professionals develop busi-ness models and design organizational workflow specifica-tions without comprehending the technological complexitiesrequired to build the systems they desire. These specifica-tions are then passed on to software engineers who are taskedto design information systems based on unclear estimates ofthe effort, skill, technology and budget needed for the task.The resulting disconnect between the products promised toclients and the systems built are often only the start of a“blame game”, as both Computer Science and Business pro-fessionals claim that demands were unreasonable from theother side.

To university instructors, this is an alarming call to action.As we continue to educate students in silos, we contributeto the everyday frustration of IT and Business profession-als, let alone the inherent problem that weakens our com-petitiveness on a local, domestic and international level. Ofcourse, this is not a new phenomenon, but despite the clearsigns, symptoms and effects, little has been done by univer-sities to fix the underlying self-reinforcing root-cause. Com-puter Science and Business students continue to be educatedin separation, and graduates still speak inherently differentprofessional languages when they enter a workforce that in-creasingly demands that they work closely together.

In the Fall of 2009, Dr. Jan Kietzmann from the Facultyof Business and Dr. Herbert H. Tsang from the School ofComputing Science, both at Simon Fraser University (SFU)

Page 2: Minding the gap: Bridging Computing Science and Business Studies with an Interdisciplinary Innovation Challenge

in British Columbia, Canada, approached this problem bycombining two class projects and hosting a joint SFU In-novation Challenge. In this project, teams comprised ofstudents from both BUS 338 (Understanding TechnologicalInnovation) and CMPT 275 (Software Engineering I) hadto work together to develop an iPhone application and aninnovation roadmap to market.

This joint effort received funding from SFU’s University /Industry Liaison Office (UILO). At the end of the semestera grand finale was hosted, where teams presented their workto a panel of judges. After grounding this work in the cur-rent research, this document presents an account of the de-velopment of the SFU Innovation Challenge, including itsobjectives, project design criteria, performance evaluationmetrics, outcomes and lessons learned. It concludes by dis-cussing the overall implications and pointing at the directionof the SFU Innovation Challenge in the near future.

2. RELATED LITERATUREThe Software Engineering discipline is a relatively young dis-cipline when compared with other engineering disciplines. Itis often cited that the discipline was born in Germany dur-ing a NATO conference in 1968 [1]. The field was born toaddress the needs for creating and maintain large softwaresystems [7]. With the advance of technologies, as a disci-pline, Software Engineering has gone though a lot of changesas well.

Software Engineering is inherently interdisciplinary in na-ture, concerned with using tools, techniques and processesto analyze, design, and develop software systems that sat-isfy all the requirements that the customers defined. It isalso concerned with maintaining the systems and adaptingthem to the changing requirements of the users. A taskforce chartered by the Association for Computing Machin-ery (ACM) and the Institute for Electrical and ElectronicEngineers (IEEE) published the Guide to the Software En-gineering Body of Knowledge (SWEBOK) in an attemptto define the core knowledge that software engineer shouldmaster [2]. This core body of knowledge covers a range ofdisciplines: computer engineering, computer science, man-agement, mathematics, project management, quality man-agement, software ergonomics, and system engineering.

In a typical Software Engineering curriculum, students areexpected to learn the following skills related to Software En-gineering: requirements analysis, design and architecture,implementation, project management, verification and val-idation, and maintenance. Single and multi-semester cap-stone project courses are commonly included as core require-ments for Computer Science and Engineering programs [7].However, industry practitioners have found that capstoneprojects do not adequately prepare graduates for the work-place because of its mono-disciplinary approach, a perspec-tive also supported by Reichlmay [6] who indicates the im-portance of involving industry in the planning of the Soft-ware Engineering curriculum.

In today’s workplace, teams often consist of a mixture of in-terdisciplinary members from many diverse areas. As the ed-ucational community is moving away from a lecture-formatto team-based projects [8], instructors have strived to repli-

cate the corporate environment by having students workin teams to accomplish course learning objectives. Eventhough students are introduced to many essential workplaceconcepts in these group projects, the true multi-disciplinarynature of a modern business workplace is often found lack-ing.

Burnell et al. [3] present a quantified assessment of a limited-resource process for teaching software product development,combining students in Computer Science, Engineering, andBusiness at multiple universities within an existing curricu-lum. Their experience produced positive feedback and out-comes from the multidisciplinary student teams. More re-cently, Garg and Varma [5] show quantitatively that academiaand industry should further explore the learning-by-doingparadigm in comparison to the traditional lecture based ap-proach, as the former can help bridge the industry-academiagap. It is the ambition to educate students to become pro-fessionals who are not only well versed in theory and practicebut have also experienced the intricacies of real software de-velopment before entering the industry.

In addition, there are some notable efforts in experimentingwith bringing an interdisciplinary approach to the curricu-lum. One example of this is the Ficocelli and Gregg reporton their special collaborative interdisciplinary pilot projectcourse on game development [4]. The participants consistedof Computer Science students, as well as fine arts and mu-sic majors. Although only held as a single-semester specialproject with just five students, the responses in general werevery positive and encouraged similar experiments at otherinstitutions and with other faculties. In this paper we reporton such a similar interdisciplinary group project at SimonFraser University, including students from a selected Com-puting Science and Business course with a team of Comput-ing Science and Business students.

3. THE SFU INNOVATION CHALLENGEThe instructors of both courses had worked on numerousindustry projects, and were well-aware of the problems thatemerge when business and technology professionals work to-gether on IT projects. Conscious of these problems andtheir responsibilities for both rigorous and relevant teach-ing, the two instructors met at the beginning of the Fall2009 semester to discuss the possibility of aligning their in-dividual courses.

3.1 ObjectivesInitially, the two course outlines and deliverables were com-pared, and a new set of learning outcomes was defined.Both instructors agreed that, first and foremost, studentsneeded to experience working with “the other side” in orderto maximize their learning of the respective difficulties ofboth managing and developing technology. In this pursuit,the instructors pursued the following goals:

Experiential learning: Rather than staging mock-projects,learning would happen in a real-life setting. A supportive en-vironment was required for students to produce high-qualityprojects that address a real need.

Bilingualism: Students from one faculty were encouraged toattend the other faculty’s course seminars and lectures. The

Page 3: Minding the gap: Bridging Computing Science and Business Studies with an Interdisciplinary Innovation Challenge

goal was that at the end of the semester, students would bothbe fluent in their own professional language and achieve ahigh level of competency in the other discipline’s vocabulary.Attendance or participation was optional and not fee-based.

Cross-functional and non-hierarchical communication: In or-der to bridge the gap, simply grouping students from differ-ent disciplines was not seen as enough. Access to both theComputing Science and Business faculty instructors was fa-cilitated for all members of the teams through face-to-faceinteraction and electronic communication.

Inter- and intra-disciplinarity: Cross-functional collabora-tion was required for the various design and managementtasks, but different deliverables, goals and performance mea-surement criteria were set for each cohort to stay true toindustry standards.

Mentorship and entrepreneurship: Practitioners and mentors-in- residence from both disciplines offered their time to helpemphasize the value of cross-disciplinary work, to supportstudent development and to help grow projects into real ven-tures at the end of the course.

Project management skills: Teams picked a project manager,a technical and a management lead, and were encouraged tofollow the processes and templates offered by the ProjectManagement Institute (PMI).

3.2 Defining a Collaboration SpaceCMPT 275, or “Software Engineering I”, is a required 200level course for all SFU’s computing science students. Thelearning focus of the course includes exposing the students toSoftware Engineering techniques used for both the softwaredevelopment process and software project management, butdoes not include the study of managing systems from a busi-ness or innovation angle.

BUS 338, better known as “Understanding Technological In-novation” is a 300 level course that introduces students toindustry dynamics of technological innovation and to devel-oping an innovation organization through formulating andimplementing an innovation strategy. The focus of BUS 338was purely on the business aspects of managing innovation,admittedly with a fairly black-boxed perspective of the tech-nologies discussed.

The forum in which these two very different groups of stu-dents were to engage needed to be designed in such a waythat was realistic, but also educational and manageable fora large group of students. After deliberating various op-tions, including co-teaching, the instructors decided to keepthe classroom experiences separate. The objective was notto teach both topics to both groups of students, but to ex-pose students to collaboration across functions. However, asmentioned, attending the respective other class as a visitorwas encouraged.

The resulting collaboration of the two courses was centredon a common SFU Innovation Challenge. The scope of the2009 competition was “Innovate and design mobile learningapplications for the needs of an evolving and increasinglydiverse workforce.”

Five teams were formed, with five members from CMPT 275and from BUS 338 each. For the CMPT 275 course, the SFUInnovation Challenge was to drive the requirements gather-ing, design and analysis, user documentation, and validationand verification phases. Focusing on iPhone applicationswas to motivate students with the possibility that the soft-ware they developed could be commercialized and hostedin the Apple Apps Store. For BUS 338, the SFU Innova-tion Challenge would provide the context for the experientialstudy of technological innovation.

3.3 Assessing ProgressIn order to stay close to a real industry setting, team mem-bers from both sides had their own sets of assignments,where CMPT 275 students designed and developed a work-ing prototype of an iPhone application. During the courseof the semester, the students had to deliver an initial projectplan that specified the vision and scope of the project. Theythen gathered information to create the system requirementsspecification, and design document and quality assuranceplan. These documents were continuously updated duringthe semester to reflect any changes. Throughout the term,students needed to collaborate with BUS 338 students todetermine which functionalities needed to be delivered as aworking prototype at each of three successive stages.

At the same time, BUS 338 students submitted problem def-initions and innovation forecasts, developed a structure foran innovation roadmap, designed concept maps, presentedinnovation Pecha Kuchas (presentations of 20 slides with amaximum of 20 seconds per slide), and completed their in-novation roadmaps. In order to improve on existing industrypractices, each team needed to meet and discuss their deliv-erables with their counterparts from the other course aheadof time, and produce a log (i.e., meeting minutes) that wouldinform the choices they made.

Throughout the term, students had to report in person tothe instructors. Held on a regular basis, these status reportsincluded both product-relevant information but also process-oriented updates that required students to reflect upon theircollaboration within their interdisciplinary teams.

In a final showdown of the SFU Innovation Challenge, thesecross- functional teams competed in a panel-judged“SFU In-novation Competition” for $1, 000 in prize money. More im-portantly, the winners became honorary members of SFU’s“Technology, Innovation, Marketing and Entrepreneurship”(TIME) Centre, where they would receive further mentor-ship and guidance for growing their innovations into realventures.

3.4 OutcomesThe outcomes of the SFU Innovation Challenge were mea-sured with respect to their impact on the two courses, onthe quality of the assignments delivered, and on the finalevent of the SFU Innovation Competition.

With respect to the courses, the SFU Innovation Challengeprovided a previously un-encountered exposure to altogetherdifferent classroom dynamics for each group of students.BUS 338 provides a highly interactive classroom experience.As an Innovation course, it has the ambition of motivat-

Page 4: Minding the gap: Bridging Computing Science and Business Studies with an Interdisciplinary Innovation Challenge

ing people to think outside the box, to question the statusquo and to be inventive. CMPT, on the other hand, is aSoftware Engineering course that is more prescriptive andasks students to understand and follow the constraints setby both programming languages and hardware devices. It isimportant to note that this separation is not a value state-ment; both courses are designed according to the pedagogythat best suits the topics to be taught and learned. Theproject work between the students consequently stretchedhow they had previously experienced collaboration withintheir faculties. Mostly set within a single course, previousteam assignments had not been asked students to combine“in the box” and “out of the box” thinking to this extent. Inmany cases, this process was frustrating to the participantsinitially. Nonetheless, the exposure to the different natureof their assignments led to an appreciation of the complex-ity of working with team members from both Business andComputer Science. To the instructors, moving along thispain curve at the university level was seen as a success crite-rion that could not have been accomplished with textbookreading, case studies or guest speakers alone.

In terms of the teams’ assignments, both classes were morereflective than they had been in prior courses. For BUS 338,this meant that innovation roadmaps did not nearly presentthe same degree of under- informed thinking about process(i.e., the complexity of technology development) and prod-uct (i.e., possible technological solutions to organizationalproblems). Their work clearly showed the relevance imposedby constraints outlined by the CMPT team. For CMPT275, the additional elements meant that the endeavour wasno longer just another “programming project”. The stake-holders for the project now included members from differ-ent backgrounds and with different objectives, which forcedstudents to rethink the rationale of not only their overallapplication, but of each deliverable along the way. Hence,in a limited capacity, the students were able to experiencethe multifaceted joy and anxiety that they will eventuallyface in the real world software development project.

The Final SFU Innovation Competition was hosted in one ofthe university’s big auditoriums. Approximately 100 guestswere in the room to listen to the presentations by eachteam’s representatives. Here, two students from CMPT 275and BUS 338 presented the prototype they had developedalongside its current business model and its next stages onan innovation roadmap. Five individuals formed the judg-ing panel, both from academia and industry, including afellow SFU Business student and SIFE Global Entrepreneurof 2009. For the challenge, “Innovate and design mobilelearning applications for the needs of an evolving and in-creasingly diverse workforce”, the panel members judgmentof the student performances was guided by the followingmain marking criteria:

1. the analysis of the future state of mobility and learningin the workplace,

2. the creativity and soundness of the description of theproposed innovation, its implementation plan and itsfuture direction,

3. the implementation of the software development prin-ciples taught,

4. the demonstration of the prototype, and

5. the ability to act as a single group, not as two separateteams.

The panel judges agreed on a single winner, with an iPhoneapplication called“LearnSomething”. The goal of the Learn-Something project was to create a mobile platform thathosts a collection of educational tools for educators to sharetheir own packages of questions and answers in a fun game-like environment with each other and with their students.

4. LESSONS LEARNEDThe various outcomes of the SFU Innovation Challenge yieldedinteresting lessons, especially evaluated against the predeter-mined learning objectives (see Section 3.1).

Experiential learning was certainly achieved through the ap-plication of the learning material within the project’s scope.The element of Mentorship and Entrepreneurship were pur-sued with the TIME Centre and SFU’s Venture Connection.To add to the experience, future SFU Innovation Challengeswill be tied more closely to industry by inviting additionalindustry experts to participate in the project. With thehelp of SFU’s University/Industry Liaison Office (UILO),students will be connected with one business and one soft-ware engineer to provide mentoring to each group. Studentsand instructors saw the prize money and the TIME mem-bership as appropriate, but further non- monetary prizes(e.g., co-op positions) were valued even more highly amongstudents and will be negotiated with industry participants.

Inter- and Intra-disciplinarity was accomplished by includ-ing components and deliverables that required the inputfrom both faculties and were jointly developed, while otherswere purely completed by one of the parties (e.g., the codingfor prototypes was under the responsibilities of the CMPTstudents only). In this sense, the instructors also agree thatmonolingualism was achieved, in the sense that each cohorthad mastered its professional language. The more investedstudents had achieved a high level of fluency, but the major-ity only mastered a basic command of the other professionallanguage - bilingualism for all students requires further de-velopment of the deliverables of the SFU Innovation Chal-lenge. It did however, appear that CMPT students had mas-tered more of the business lingo than vice versa, which mightwell be related to the fact that more cross-functional andnon-hierarchical communication occurred between CMPTstudents and the Business instructor than between Businessstudents and the CMPT instructor. As a result, in the nextSFU Innovation Challenge, attention will be paid to a morebalanced interaction and language learning experience forboth cohorts.

In terms of Project management skills, groups successfullyadopted many of the industry standards and worked throughdocument templates. The next version of the SFU Innova-tion Challenge will be tied more closely to Project Manage-ment workshops at the university, in which additional PMIAreas of Knowledge will be introduced.

Page 5: Minding the gap: Bridging Computing Science and Business Studies with an Interdisciplinary Innovation Challenge

5. DISCUSSION AND FUTURE WORKThis project clearly demonstrated the potential value ofmulti-disciplinary student projects. The faculty involvedfound the project very rewarding and are eager to do thisagain.

Having students work in an interdisciplinary team early intheir university career (2nd or 3rd year) requires a shift intheir thinking. After participating in this project, many stu-dents found the experience extremely valuable. They havegained skills that will make significant and meaningful con-tributions to the success of their future career.

For this first Innovation Challenge, a website was designedthat students often accessed, but also to which they pointedtheir peers, employers, friends and family. This website facil-itated a viral marketing effort for the project. It worked welland many shared the excitement surrounding CMPT 275and BUS 338. However within the two faculties, not manycolleagues were aware of the first SFU Innovation Challenge.Nevertheless, those who did follow the project regarded itan invaluable grass-root effort that was spearheaded by twoinstructors.

After this proof-of-concept effort, the next SFU InnovationChallenge will be planned much more in advance to re-ceive additional institutional support from the faculties, theUILO, the TIME Centre, Venture Connection, and SIFE.All of these partners agreed to help market the SFU Inno-vation Challenge as a new and novel way of helping bridgethe gap that exists between Computer Scientist and Busi-ness professionals - at the university level and in the realworld.

6. ACKNOWLEDGMENTSBoth authors would like to thank Elmer Sum of the TIMECentre, University/Industry Liaison Office (UILO), SimonFraser University for his support of this joint project. Spe-cial thanks also go to Andrew Gemino, Associate Directorof the SFU’s Faculty of Business Administration, to An-thony Dixon, Associate Director of SFU’s School of Com-puting Science, to Kathy Wong and Andrew Hendriks fortheir valuable suggestions and comments, to Denny Dai andto Milun Tesovic for providing their expert knowledge forthe SFU Innovation Challenge and the final competition.

7. REFERENCES[1] In P. Naur and B. Randell, editors, Software

Engineering: Report of a conference sponsored by theNATO Science Committee. Scientific Affairs Division,NATO, Oct. 1969.

[2] A. Abran, J. W. Moore, P. Bourque, R. Dupuis, andL. L. Tripp. Guide to the Software Engineering Body ofKnowledge (SWEBOK). IEEE, 2004. ISO TechnicalReport ISO/IEC TR 19759.

[3] L. J. Burnell, J. W. Priest, and J. R. Durrett.Assessment of a resource limited process formultidisciplinary projects. SIGCSE Bull., 35(4):68–71,2003.

[4] L. Ficocelli and D. Gregg. A group project - with atwist! In WCCCE ’05: Proceedings of the WesternCanadian Conference on Computing Education, 2005.

[5] K. Garg and V. Varma. A study of the effectiveness ofcase study approach in software engineering education.In CSEET ’07: Proceedings of the 20th Conference onSoftware Engineering Education & Training, pages309–316, Washington, DC, USA, 2007. IEEE ComputerSociety.

[6] T. J. Reichlmay. Collaborating with industry: strategiesfor an undergraduate software engineering program. InSSEE ’06: Proceedings of the 2006 internationalworkshop on Summit on software engineering education,pages 13–16, New York, NY, USA, 2006. ACM.

[7] S. Rezaei. Software engineering education in canada. InWCCCE ’05: Proceedings of the Western CanadianConference on Computing Education, 2005.

[8] M. Shaw. Software engineering education: a roadmap.In ICSE ’00: Proceedings of the Conference on TheFuture of Software Engineering, pages 371–380, NewYork, NY, USA, 2000. ACM.