Working together: words and math

Article (PDF Available) · April 2011with 116 Reads
Abstract
Hybrid jumble and crossword puzzles can be used to bridge the gap between mathematics and language. These new puzzles use the traditional formats in new ways. Instead of using traditional word-based clues, these clues are hexadecimal equations whose answers are inserted into the puzzle through tiles. These answers can be words, numbers, or even a combination of letters and numbers. Combining math equations with words can help dissolve the barrier between language and math. This will help language-adept students realize that math is just another language. With this realization, a greater variety of people can understand and work with STEM topics, especially women who tend to perceive that they are stronger in languages than math. This paper explores this issue as well as the results of an initial assessment workshop held on the Loyola Marymount University campus in the summer of 2010.
The Journal of Computing
Sciences in Colleges
Volume 26, Number 4 April 2011
The Journal of Computing
Sciences in Colleges
Papers of the Twenty Second Annual
CCSC
South Central Conference
April 15-16, 2011
Sam Houston State University
Huntsville, Texas
Papers of the Fourth Annual
CCSC
Southwestern Conference
April 1-2, 2011
Loyola Marymount University
Los Angeles, California
John Meinke, Editor Susan T. Dean, Associate Editor
UMUC — Europe UMUC — Europe
George Benjamin, Associate Editor Laura Baker, Contributing Editor
Muhlenberg College St. Edward’s University
Peter Gabrovsky, Contributing Editor Michael Doherty, Contributing Editor
CSU Northridge University of the Pacific
Volume 26, Number 4 April 2011
ii
The Journal of Computing Sciences in Colleges (ISSN 1937-4771 print, 1937-4763
digital) is published at least six times per year and constitutes the refereed papers of
regional conferences sponsored by the Consortium for Computing Sciences in Colleges.
Printed in the USA. POSTMASTER: Send address changes to Jim Aman, CCSC
Membership Chair, Saint Xavier University, Chicago, IL 60655.
Copyright © 2011 by the Consortium for Computing Sciences in Colleges. Permission
to copy without fee all or part of this material is granted provided that the copies are not
made or distributed for direct commercial advantage, the CCSC copyright notice and the
title of the publication and its date appear, and notice is given that copying is by
permission of the Consortium for Computing Sciences in Colleges. To copy otherwise,
or to republish, requires a fee and/or specific permission.
iii
TABLE OF CONTENTS
THE CONSORTIUM FOR COMPUTING SCIENCES IN COLLEGES BOARD OF
DIRECTORS.................................................. viii
CCSC NATIONAL PARTNERS ....................................... ix
FOREWORD....................................................... ix
John Meinke, UMUC Europe
PAPERS OF THE TWENTY SECOND ANNUAL CCSC SOUTH CENTRAL
CONFERENCE..................................................1
WELCOME TO THE TWENTY SECOND ANNUAL (2011) CCSC SOUTH
CENTRAL CONFERENCE ........................................2
Laura J. Baker, St. Edward’s University, Ken Hartness, Sam Houston State
University
2011 SOUTH CENTRAL STEERING COMMITTEE AND CONFERENCE
COMMITTEE ...................................................2
REVIEWERS — 2011 CCSC SOUTH CENTRAL CONFERENCE .............3
SUPERCOMPUTING IN PLAIN ENGLISH — KEYNOTE ADDRESS ........5
Henry Neeman, University of Oklahoma
A CASE STUDY OF METRICS FOR ASSESSING STEM SCHOLARSHIP
PROGRAMS.................................................... 6
Kwok-Bun Yue, Sharon Hall, Simone Tiu, Anne Reilly, Sadegh Davari,
University of Houston-Clear Lake
WHERE ARE THE WOMEN COMPUTER SCIENCE STUDENTS? ..........14
Theresa Beaubouef and Wendy Zhang, Southeastern Louisiana University
BEYOND THE COMPUTER SCIENCE CURRICULUM: EMPOWERING
STUDENTS FOR SUCCESS ...................................... 21
Theresa Beaubouef, Wendy Zhang, Ghassan Alkadi, Kuo-Pao Yang,
Southeastern Louisiana University
COMPUTING FOR SCIENCE MAJORS: A NEW COURSE.................28
Richard P. Simpson and Tina Johnson, Midwestern State University
iv
A COMPARISON OF COMPACT ROBOTICS PLATFORMS FOR MODEL
TEACHING ...................................................35
Anne-Marie Eubanks, Robert G. Strader, and Deborah L. Dunn, Stephen F.
Austin State University
EVALUATING STUDENTS' SATISFACTION USING TWO SAP ERP USER
INTERFACES..................................................41
John L. Wilson, Ed Lindoo, Regis University
RIGOROUS SOFTWARE ENGINEERING USING DESIGN BY CONTRACT —
TUTORIAL PRESENTATION ....................................48
Michael Kart, St. Edward's University
DESIGNING AN UNDERGRADUATE DATA MINING COURSE BY
MATCHING TEACHING STRATEGIES WITH STUDENT LEARNING
STYLES ......................................................49
Ping Chen, Irene Chen, University of Houston-Downtown, Rakesh Verma,
University of Houston
A COURSE IN ADVANCED OPERATING SYSTEMS USING MPI FOR
PROJECTS ....................................................57
Michael Scherger, Texas A&M University - Corpus Christi
SELF-SUPPORT COMPUTER SCIENCE LAB ...........................64
Jenq-Foung "JF" Yao, James Carlisle, Georgia College & State University
VIRTUALIZATION OF OUR UNIVERSITY FOR THE RECRUITMENT AND
ORIENTATION OF NEW STUDENTS .............................71
Ghassan Alkadi, Theresa Beaubouef, Eric Patton, Savannah Brown,
Southeastern Louisiana University
RADIO FREQUENCY IDENTIFICATION (RFID) PROJECTS FOR COMPUTER
SCIENCE .....................................................78
Kuo-pao Yang and Theresa Beaubouef, Southeastern Louisiana University
THE USE OF FREE AND OPEN SOURCE SOFTWARE IN REAL-WORLD
CAPSTONE PROJECTS .........................................85
Kwok-Bun Yue, Zahabia Damania, Raunaq Nilekani, Krishani Abeysekera,
University of Houston-Clear Lake
MOBILE GAME DEVELOPMENT PROJECTS FOR INTRODUCTORY CS
COURSES TUTORIAL PRESENTATION ........................93
Delvin Defoe, Rose-Hulman Institute of Technology, Stan Kurkovsky, Central
Connecticut State University, Emily Graetz, Rose-Hulman Institute of
Technology
v
CLASSIFICATION OF RIDE-SHARING PARTNERS BASED ON MULTIPLE
CONSTRAINTS ................................................95
Troy Kammerdiener and Hong Zhang, Southeastern Louisiana University
IMMERSIVE VISUALIZATION TECHNIQUES IN ENHANCING AND
SPEEDING PEDAGOGICAL PROCESSES OF COMPUTING CONCEPTS
.............................................................102
Sarah M. North, Ju An Wang, Southern Polytechnic State University
PAPERS OF THE FOURTH ANNUAL CCSC SOUTHWESTERN CONFERENCE
.............................................................109
WELCOME TO THE 2011 CCSC SOUTHWESTERN CONFERENCE ....... 110
Stephanie E. August, Loyola Marymount University
2011 SOUTHWESTERN CONFERENCE COMMITTEE .................. 111
CCSC SOUTHWESTERN REGION BOARD OFFICERS ..................111
REVIEWERS — 2011 CCSC SOUTHWESTERN CONFERENCE ...........111
COMPUTER SECURITY AND, VERSUS, OR SECURITY INFORMATICS —
KEYNOTE ADDRESS ..........................................113
L. Jean Camp, Indiana University Bloomington
USING HUMAN-CENTERED DESIGN TO EXPOSE HUMANS TO COMPUTER
SCIENCE ....................................................115
Megan Thomas, California State University Stanislaus
LA BELLA FIGURA: MAKING A GOOD IMPRESSION WHEN TEACHING AN
INTRODUCTION TO PROGRAMMING TO NON-ENGINEERS .......122
Ani Nahapetian, University of Los Angeles, California (UCLA)
PIXELS AS POLYMERS: UNIFYING INTRODUCTORY BIOLOGY AND
COMPUTER SCIENCE THROUGH VISUAL COMPUTATION ........130
Zachary Dodds, Ran Libeskind-Hadas, and Eliot Bush, Harvey Mudd College
HOW TO ORGANIZE A PROFESSIONAL DEVELOPMENT WORKSHOP FOR
HIGH SCHOOL CS TEACHERS — CONFERENCE TUTORIAL .......139
Lecia Barker, University of Texas at Austin, Joanne McGrath Cohoon, James P.
Cohoon, University of Virginia
FACE-TO-FACE EXPERIENCES FOR ONLINE STUDENTS: EFFECTIVE,
EFFICIENT, AND ENGAGING HYBRID CLASSES .................140
Todd Whittaker and Esmail Bonakdarian, Franklin University
vi
SEMANTIC INFORMATION SYSTEM: APPLICATIONS IN K-12 EDUCATION
.............................................................149
JohnPaul Adigwu, Neil Arellano, Sergio Beltran, Jorge Estrada, Adrienne Lam,
Sergio Mendoza, Aleksander Milshteyn, Gabriel Nunéz, Evan Tsai, Charles
Liu, Helen Boussalis, California State University, Los Angeles
TOUCHCASTING DIGITAL LECTURE NOTES ........................157
James Dean Palmer, Northern Arizona University
RECRUITING WOMEN INTO YOUR COMPUTING MAJOR — CONFERENCE
TUTORIAL................................................... 164
Lecia Barker, University of Texas at Austin, Joanne McGrath Cohoon,
University of Virginia
BUILDING AN ACADEMIC VIDEO GAME PIPELINE — KEYNOTE ADDRESS
.............................................................165
Scott Easley, University of Southern California
SOFTWARE ENGINEERING COURSE DESIGN FOR UNDERGRADUATES
.............................................................166
Jianchao Han, California State University Dominguez Hills
DEVELOPING STUDENTS' SELF-ASSESSMENT SKILLS USING LAB-
CENTRIC INSTRUCTION ......................................173
Colleen M. Lewis, Nathaniel Titterton, and Michael Clancy, University of
California, Berkeley
LEARNING OBJECTIVE BASED DESIGN OF A COMPUTER SIMULATION
COURSE .....................................................181
Michael Doherty, University of the Pacific
SHORT MOBILE GAME DEVELOPMENT PROJECTS FOR CS1/2 —
CONFERENCE TUTORIAL .....................................189
Stan Kurkovsky, Central Connecticut State University, Delvin Defoe, Rose-
Hulman Institute of Technology
LEVERAGING EXISTING OUTREACH PROGRAMS TO REACH
UNDERREPRESENTED MINORITIES ............................190
Maribel Gonzalez, Lucy Vasserman, Sara Owsley Sood, and Tzu-Yi Chen,
Pomona College
WORKING TOGETHER: WORDS AND MATH .........................197
Allison Neyer, Stephanie E. August, Michele Hammers, Loyola Marymount
University
vii
ORIGINAL HISTORICAL SOURCES IN DATA STRUCTURES AND
ALGORITHMS COURSES ......................................204
Inna Pivkina, New Mexico State University
SETS EARLY and PROBABILITY ....................................211
John Motil, California State University Northridge
PEER INSTRUCTION IN THE CS CLASSROOM: A HANDS-ON
INTRODUCTION — CONFERENCE TUTORIAL ...................218
Daniel Zingaro, University of Toronto, Leo Porter, Beth Simon, University of
California, San Diego, University of San Diego
UNDERSTANDING NSF FUNDING OPPORTUNITIES — KEYNOTE ADDRESS
..................................................................219
Scott Grissom, National Science Foundation
INDEX OF AUTHORS.............................................. 222
viii
THE CONSORTIUM FOR COMPUTING SCIENCES IN COLLEGES
BOARD OF DIRECTORS
Following is a listing of the contact information for
the members of the Board of Directors and the
Officers of the Consortium for Computing Sciences
in Colleges (along with the year of expiration of their
terms), as well as members serving the Board:
Bob Neufeld, President (2012), Professor Emeritus
of Computer Science, McPherson College, P. O. Box
421, North Newton, KS 67117, 316-283-1187 (H),
neufeld@mcpherson.edu.
Laura J. Baker, Vice-President (2012), Professor,
Computer Sciences Department, St. Edward's
University, Box 910, 3001 S. Congress Ave, Austin,
TX 78704, 512-448-8675, laurab@stedwards.edu.
Jim Aman, Membership Chair (2013), Assoc.
Professor, Computer Science, Saint Xavier
University, Chicago, IL 60655, 773-298-3454 (O),
630-728-2949 (cell), aman@sxu.edu.
Bill Myers, Treasurer (2011), Dept. of Computer
Studies, Belmont Abbey College, 100
Belmont-Mount Holly Road, Belmont, NC
28012-1802, 704-461-6823 (O), 704-461-5051,
(fax), myers@crusader.bac.edu.
John Meinke, Publications Chair, (2012), Collegiate
Associate Professor, UMUC Europe, US Post: CMR
420, Box 3668, APO AE 09063; (H) Werderstr 8,
D-68723 Oftersheim, Germany, 011-49-6202-5 77
79 16 (H), meinkej@acm.org.
Kim P. Kihlstrom, Southwestern Representative
(2011), Associate Professor of Computer Science,
Westmont College, 955 La Paz Road, Santa Barbara,
CA 93108, 805-565-6864 (O), 805-570-6722 (cell),
805-565-7036 (fax), kimkihls@westmont.edu.
Elizabeth S. Adams, Eastern Representative (2011),
Associate Professor Emeritus, James Madison
University - Mail Stop 4103, CISAT - Department of
Computer Science, Harrisonburg, VA 22807,
adamses@jmu.edu.
Deborah Hwang, Midwestern Representative
(2011), Dept. of Electrical Engineering and
Computer Science, University of Evansville, 1800
Lincoln Avenue, Evansville, IN 47722,
812-488-2193 (O), 812-488-2780 (fax),
hwang@evansville.edu.
Scott Sigman, Central Plains Representative (2011),
Associate Professor of Computer Science, Drury
University, Springfield, MO 65802, 417-873-6831,
scott.sigman58@gmail.com..
Kevin Treu, Southeastern Representative (2012),
Furman University, Dept of Computer Science,
Greenville, SC 29613, 864-294-3220 (O),
kevin.treu@furman.edu.
Timothy J. McGuire, South Central Representative
(2012), Sam Houston State University, Department
of Computer Science, Huntsville, Texas
77341-2090, 936-294-1571, mcguire@shsu.edu.
Brent Wilson, Northwestern Representative (2012),
George Fox University, 414 N. Meridian St,
Newberg, OR 97132, 503-554-2722 (O),
503-554-3884 (fax), bwilson@georgefox.edu.
Pat Ormond, Rocky Mountain Representative
(2013), Professor, Information Systems and
Technology, Utah Valley University, 800 West
University Parkway, Orem, UT 84058,
801-863-8328 (O), 801-225-9454 (cell),
ormondpa@uvu.edu.
Lawrence D'Antonio, Northeastern Representative
(2013), Ramapo College of New Jersey, Computer
Science Dept., Mahwah, NJ 07430, 201-684-7714,
ldant@ramapo.edu.
Linda Sherrell, MidSouth Representative (2013),
Associate Professor, Computer Science, University
of Memphis, 209 Dunn Hall, Memphis, TN 38152,
901-678-5465 (O), linda.sherrell@memphis.edu.
Serving the Board: The following CCSC members
are serving in positions as indicated that support the
Board:
Will Mitchell, Conference Coordinator, 1455 S
Greenview Ct, Shelbyville, IN 46176-9248,
317-392-3038 (H), willmitchell@acm.org.
George Benjamin, Associate Editor, Muhlenberg
College, Mathematical Sciences Dept., Allentown,
PA 18104, 484-664-3357 (O), 610-433-8899 (H),
benjamin@muhlenberg.edu.
Susan Dean, Associate Editor, Collegiate Professor,
UMUC Europe, US Post: CMR 420, Box 3669, APO
AE 09063; Werderstr 8, D-68723 Oftersheim,
Germany. 011-49-6202-5 77 82 14, (H)
sdean@faculty.ed.umuc.edu.
Robert Bryant, Comptroller, Professor &
Information Tech. Program Director, MSC 2615,
Gonzaga University, Spokane, WA 99258,
509-313-3906, bryant@gonzaga.edu.
Paul D. Wiedemeier, National Partners Chair, The
University of Louisiana at Monroe, Computer
Science and CIS Department, 700 University
Avenue, Administration Building, Room 2-37,
Monroe, LA 71209, 318-342-1856 (O),
318-342-1101 (fax), wiedemeier@ulm.edu.
Brent Wilson, Database Administrator, George Fox
University, 414 N. Meridian St, Newberg, OR
97132, 503-554-2722 (O), 503-554-3884 (fax),
bwilson@georgefox.edu.
Myles McNally, Webmaster, Professor of Computer
Science, Alma College, 614 W. Superior St., Alma,
MI 48801, 989-463-7163 (O), 989-463-7079 (fax),
mcnally@alma.edu.
ix
CCSC NATIONAL PARTNERS
The Consortium is very happy to have the following as National Partners. If you
have the opportunity please thank them for their support of computing in teaching
institutions. As National Partners they are invited to participate in our regional
conferences. Visit with their representatives there.
Microsoft Corporation
Turings Craft
National Science Foundation
Panasonic Solutions Company
FOREWORD
My sincere thanks and commendations to the program committees for the two
conferences represented in this issue of the Journal. Both committees have worked well
together with lots of communication putting together an excellent program as well as
facilitating the papers of those conferences appearing in this issue in a very efficient
fashion. I work through the regional editor and when I have a question and I get an
almost immediate response it facilitates the final editing process being accomplished very
efficiently. My sincere thanks to Laura Baker (South Central) as well as Peter
Gabrovsky and Mike Doherty ((Southwestern) for being so wonderful to work with. This
is particularly true since we were working over a span of nine time zones – one was
going to bed while another was beginning the day. My sincere thanks to Laura, Peter,
and Mike for being so on top of things.
We begin our coverage of the Spring set of conferences with this issue of the
Journal. The first Spring conference is the first weekend in April and the five
conferences are then all occurring in this year in a two week period, the last being the
third weekend in April. They are spread geographically from the West Coast to the
Northeast. There is an excellent mix of professional papers and
tutorials/workshops/panel discussions in each. I commend all of them, and encourage
you to plan appropriately so that when there are multiple conferences you are able to
participate in that cross-fertilization between regions happens. While CCSC sponsors
regional conferences the involvement across regional boundaries really adds to the
overall professional experience.
I know that you will benefit greatly from the contents of this issue of the Journal
as well as the two that will follow, and those of you who attend the conferences will
benefit that much more.
The papers in the Journal are all reviewed and the reviewing process as well as the
acceptance rate are outlined in the welcome statements to each of the individual
conferences. The reviewing process helps to maintain the quality of the submissions.
Our list of CCSC National Partners is a listing of major contributors to the
x
conferences. Without their help it would be necessary to raise conference registration
rates, and CCSC has long been aware that budgets are tight. Maintaining low registration
costs assists those with low travel budgets to continue their involvement in the computing
sciences. Please be certain to thank our National Partners for their involvement and
support of CCSC.
We also need to recognize the support of Upsilon Pi Epsilon, the National Honor
Society for Computer Science. For a good number of years now they have been
financially supporting CCSC conferences through support of student participation. It is
through their assistance that we can have student oriented activities at the conferences.
Our sincere thanks to UPE.
Again, it is a pleasure to present this issue in this year’s edition of the Journal of
Computing Sciences in Colleges. I trust that you will find the contents as interesting and
worthwhile as I have.
John Meinke, UMUC Europe
CCSC Publications Chair
Papers of the Twenty
Second Annual
CCSC
South Central
Conference
April 15-16, 2011
Sam Houston State University
Huntsville, Texas
2
WELCOME TO THE TWENTY SECOND ANNUAL (2011)
CCSC SOUTH CENTRAL CONFERENCE
It is a pleasure to welcome everyone to the 22nd annual meeting of the South
Central Region of the Consortium for Computing Sciences in Colleges hosted by Sam
Houston State University in Huntsville, Texas. The South Central Steering Committee
is pleased to return to this beautiful campus in the piney woods of East Texas. We would
like to extend our gratitude to the authors, presenters, speakers, and students for
participating in the conference and we hope to see you all in the future as well. The
faculty, staff, and students at Sam Houston State have provided a wonderful venue to
host this year's conference and we thank them for all of the time and hard work expended
in providing their facilities for the South Central Regional conference.
This year fourteen professional papers and two workshops were accepted for
publication and presentation. We use a double-blind paper review process and each
paper is reviewed by three independent reviewers. There were 22 papers submitted and
14 were accepted for publication for a 63% acceptance rate. Fifty-one professionals
provided reviews of papers for this year's conference. We really appreciate the time and
effort put into our reviewing process by 50 reviewers from across the United States and
one from Portugal.
We hope you enjoy the conference and have time to enjoy the beautiful scenery of
East Texas. We encourage everyone to participate as an author, reviewer, or attendee in
the future. We welcome our members to consider hosting a conference and to serve on
our Steering Committee.
Laura J. Baker
Papers/Program Chair, South Central
St. Edward’s University
Ken Hartness
2011 South Central Conference Chair
Sam Houston State University
2011 SOUTH CENTRAL STEERING COMMITTEE AND
CONFERENCE COMMITTEE
James W. McGuffee, 2010 Conference Chair . . . St. Edward's University, Austin, TX
Ken Hartness, 2011 Conference Chair Sam Houston State University, Huntsville, TX
Rajan Alex, 2012 Conference Chair .... West Texas A&M University, Canyon, TX
Members with term ending in 2011:
Rajan Alex, 2011 Conference Treasurer . West Texas A&M University, Canyon, TX
Shyam (Sam) Karrah, 2011 Student Project Posters Chai UT-Dallas, Richardson, TX
Phyllis Tedford, South Central Region Webmaster ............................
....................Texas A&M University - Corpus Christi, Corpus Christi, TX
Members with term ending in 2012:
William Denny, 2011 Tutorials/Panels Chair ................................
................................ McNeese State University, Lake Charles, LA
3
Kay Kussman, 2011 Moderators Chair McNeese State University, Lake Charles, LA
Leslie Fife, 2011 Conference Registrar .....................................
....................... Louisiana State University - Shreveport, Shreveport, LA
Members with term ending in 2013:
Michael Kart ............................St. Edward's University, Austin, TX
Vipin Menon, Publicity Chair ....... McNeese State University, Lake Charles, LA
Michael Scherger, 2011 Student Papers Chair ...............................
................... Texas A&M University - Corpus Christi, Corpus Christi, TX
Other Members:
Laura J. Baker, 2011 Papers/Program Chair ....St. Edward's University, Austin, TX
Timothy J. McGuire, CCSC Board Member (SC Rep) .........................
............................... Sam Houston State University, Huntsville, TX
REVIEWERS — 2011 CCSC SOUTH CENTRAL
CONFERENCE
Barbara Anthony ......................................Georgetown, Texas
M. Emre Celebi ..................................... Shreveport, Louisiana
Rohitha Goonatilake ....................................... Laredo, Texas
Donna Teel ............................................... Belton, Texas
James McGuffee .......................................... Austin, Texas
Ernie Giangrande Jr. ...............................Wingate, North Carolina
Hong Lin ............................................... Houston, Texas
Ping Chen...............................................Houston, Texas
Ming Chiu ......................................... Hammond, Louisiana
Yingbing yu ....................................... Clarksville, Tennessee
Pavel Azalov ......................................Hazleton, Pennsylvania
Lewis Myers ............................................. Austin, Texas
Richard Brozovic ......................................... Abilene, Texas
Robert Strader ....................................... Nacogdoches, Texas
Ke Yang......................................... Baton Rouge, Louisiana
Jaime Nino ....................................... New Orleans, Louisiana
Sarah North ........................................... Mareitta, Georgia
Mayukh Bit ...................................... Baton Rouge, Louisiana
Wendy Zhang ....................................... Hammond, Louisiana
Kay Kussmann.................................... Lake Charles, Louisiana
John Camden ............................................. Austin, Texas
Srinivasarao Krishnaprasad ........................... Jacksonville, Alabama
John Fernandez ..................................... Corpus Christi, Texas
Jay-Evan Tevis..........................................Longview, Texas
Robert Neufeld..................................... North Newton, Kansas
Carol Binkerd....................................... Corpus Christi, Texas
Sikha Bagui ...........................................Pensacola, Florida
Charlotte Busch ..................................... Corpus Christi, Texas
Catherine Stringfellow................................. Wichita Falls, Texas
JCSC 26, 4 (April 2011)
4
Kenneth Rouse..........................................Longview, Texas
Suzanne Buchele ...................................... Georgetown, Texas
Beverly Swisshelm.................................... Lebanon, Tennessee
Ming Luong ......................................Highland Village, Texas
Kwok-Bun Yue .......................................... Houston, Texas
Yong Shi ............................................Kennesaw, Georgia
Krishna Agarwal ....................................Shreveport, Louisiana
Myung Ah (Grace) Park ............................... Edmond, Oklahoma
David Gurney....................................... Hammond, Louisiana
Nelson Passos ....................................... Wichita Falls, Texas
Tina Johnson ........................................ Wichita Falls, Texas
Nadine Hanebutte ................................... Rochester, New York
Muhammad Rahman .................................... Morrow, Georgia
Hongbiao Zeng.............................................Hays, Kansas
Ranette Halverson .................................... Wichita Falls, Texas
Quoc-Nam Tran .........................................Beaumont, Texas
Jose Metrolho.................................... Castelo Branco, Portugal
Steele Russell ...................................... Hammond, Louisiana
Michael Kart ............................................. Austin, Texas
Kuo-pao Yang ...................................... Hammond, Louisiana
John Wilson .......................................... Oneida, Wisconsin
Mufid Abudiab ...................................... Corpus Christi, Texas
___________________________________________
* Copyright is held by the author/owner.
5
KEYNOTE ADDRESS
Friday, April 15, 2011
*
Henry Neeman
Dr. Henry Neeman is the Director of the OU Supercomputing Center for Education
& Research (OSCER) and an adjunct professor in the School of Computer Science at the
University of Oklahoma (OU). He received his BS in Computer Science and his BA in
Statistics with a minor in Mathematics from the State University of New York at Buffalo
in 1987, his MS in CS from the University of Illinois at Urbana-Champaign in 1990 and
his PhD in CS from UIUC in 1996.
Before coming to OU, Dr. Neeman was a postdoctoral research associate at the
National Center for Supercomputing Applications (NCSA) at UIUC, and before that
served as a graduate research assistant both at NCSA and at the Center for
Supercomputing Research & Development.
In addition to his own teaching and research, Dr. Neeman collaborates with dozens
of research groups, applying High Performance Computing techniques in fields such as
numerical weather prediction, bioinformatics and genomics, data mining, high energy
physics, astronomy, nanotechnology, petroleum reservoir management, river basin
modeling and engineering optimization. He has served as an ad hoc advisor to student
researchers in many of these fields.
Dr. Neeman's research interests include high performance computing, scientific
computing, parallel and distributed computing, and computer science education.
___________________________________________
* Copyright © 2011 by the Consortium for Computing Sciences in Colleges. Permission to copy
without fee all or part of this material is granted provided that the copies are not made or
distributed for direct commercial advantage, the CCSC copyright notice and the title of the
publication and its date appear, and notice is given that copying is by permission of the
Consortium for Computing Sciences in Colleges. To copy otherwise, or to republish, requires a
fee and/or specific permission.
6
A CASE STUDY OF METRICS FOR ASSESSING STEM
SCHOLARSHIP PROGRAMS*
Kwok-Bun Yue, Sharon Hall, Simone Tiu, Anne Reilly, Sadegh Davari
University of Houston-Clear Lake
2700 Bay Area Boulevard
Houston, TX 77058
yue@uhcl.edu, perkins@uhcl.edu, ftiu@aii.edu, reilly@uhcl.edu, davai@uhcl.edu
ABSTRACT
As the challenges in Science, Technology, Engineering and Mathematics
(STEM) education become more prominent, resources for promoting STEM
education are more available. STEM scholarship programs, such as the
S-STEM program funded by the National Science Foundation (NSF), can be
an important tool for computing educators to meet the challenges of recruiting,
retaining and preparing more computing undergraduates. These scholarship
programs usually require a rigorous assessment plan in the proposals for
evaluating program effectiveness. Although there is an abundance of literature
on assessment metrics on student learning outcomes, especially those related
to accreditation, similar papers on scholarship program assessment are lacking.
This paper is intended to contribute toward filling this gap. Based on our
experience on managing two consecutive NSF S-STEM grants over eight
years, the paper proposes a simple set of criteria for designing good
assessment metrics for scholarship programs: that they need to be essential,
measurable, sensible and simple. The paper presents our evaluation plan and
results of the evaluation that ascertained the program effectiveness. It
discusses how the metrics are refined and evolved in light of the proposed
criteria. It then elaborates on lessons learned and our future directions. The
paper can thus be considered as a case study for computing educators
interested in submitting scholarship proposals and managing scholarship
programs.
CCSC: South Central Conference
7
1. INTRODUCTION
It is well established that STEM education is a crucial key of present and future
competitiveness of the United States [3, 13]. In an influential congress report, the writing
committee expressed deep concerns "that the scientific and technological building blocks
critical to our economic leadership are eroding at a time when many other nations are
gathering strength" [13]. A central issue is the perceived imbalance between the demand
and supply of STEM professionals [2]. According to the Bureau of Labor Statistics,
demand in STEM occupations will remain high in the next 10 years, with individual job
areas such as computer and mathematical science expected to grow twice as fast as the
average occupation [6]. On the other hand, the supply of STEM degree graduates remains
flat at best. It was reported that 15% of all US undergraduates received their degrees in
natural science or engineering, as opposed to 47% in France, and 50% in China [13].
From the peak at 2000, the percentage of incoming freshmen interested in computer
science as their undergraduate major dropped 70% by 2005 [8]. After bottoming out in
2007, US enrollment of Computer Science majors in 2009 had grown, but it still had not
reached the level of 2006 [5]. This situation is even more pronounced in underrepresented
groups such as women [8], Black and Hispanic [7]. As Black and Hispanic students are
projected to make up 15% and 24% of the population by 2050 respectively [16],
dedicating resources to improve their STEM graduation rates are especially important.
As a result, efforts and resources for promoting STEM education are increasingly
available from federal and state institutions as well as private organizations. Many
programs exist to fund STEM scholarship, mentoring, educational innovation, laboratory
and curriculum development, etc. As university budgets shrink, these resources can be
very useful for computing educators to promote their degree programs. In particular, the
NSF has funded a scholarship in STEM (S-STEM) program since 1999 [17]. The current
funding level is approximately $50 to $70 million annually to support 60 to 80 projects
with a maximum amount of $600,000 per project [14].
For those interested in such scholarship programs, there are some case study reports
that can serve as references [10, 12, 15, 17]. The goal of this paper is to complement the
existing literature by targeting a key issue for S-STEM and other similar scholarship
programs that has been insufficiently discussed: assessment.
Assessment is the systematic collection of data for evaluating program effectiveness
with well-defined and measureable metrics, analyzing the data, and using the results for
ascertaining program effectiveness or program improvement. As stakeholders
increasingly look into measurable program values, assessment becomes more crucial in
many aspects of university activities, including accreditation, budgeting, reporting, etc.
For example, ABET, the accrediting body for computing disciplines, recently
strengthened assessment requirements further by adding a new criteria on "continuous
improvement" (Criteria 4) that is based on assessing student learning outcomes [1].
Assessment and evaluation have also been key proposal requirements of most
funding agencies. Increasingly, funding agencies expect a clear, specific and focused
assessment plan to be a part of the proposal. For example, the NSF S-STEM program
solicitation indicates that the plan should contain "not only assessment of student progress
but overall evaluation of the S-STEM project." [13] Thus, to successfully receive and
manage a STEM scholarship program, a solid assessment plan is indispensable.
JCSC 26, 4 (April 2011)
8
On the other hand, in many cases, assessment has not been a key component of
faculty's traditional job description and many faculty members are just starting to adapt.
The situations for assessment in accreditation have greatly improved as
accreditation-oriented papers and conferences have proliferated. However, with the
important exception of Baker and Finn's work on the effect of a merit-based STEM
scholarship on high school students [4], there is a lack of literature on effective
assessment plans for scholarship and mentoring programs.
To fill this gap, this paper proposes a simple set of criteria for designing good
assessment metrics for scholarship programs: that they need to be essential, measurable,
sensible and simple. Using these criteria, it also presents the evolution of the assessment
plan for our NSF S-STEM scholarship program to serve as a case study. The paper can
thus be used for educators who are interested in developing scholarship proposals and
managing scholarship programs.
The paper is organized in the following manner. Section 2 provides brief
background information of our NSF S-STEM scholarship program. Section 3 discusses
general considerations in designing assessment metrics for scholarship programs based
on our experience and research. Section 4 discusses our assessment plan and its execution
and evolution as a case study. Section 5 contains our future direction and conclusion.
2. THE UHCL NSF SCHOLAR PROGRAM
In the past eight years, the University of Houston-Clear Lake (UHCL) has received
two consecutive NSF S-STEM grants to provide scholarships to financially needy and
academically capable students in four degrees: Computer Science, Computer Information
Systems, Computer Engineering and Mathematics. UHCL is located in the
high-technology area in Houston next to NASA's Johnson Space Center and is an
upper-level institution with undergraduate students mostly transferred from the
surrounding community colleges (CC).
Besides providing scholarships similar to S-STEM programs in other universities,
some distinctive features of our program include a strong faculty and industrial mentoring
program, tight partnership with CC for recruitment, an emphasis on underrepresented
groups, coordinated career enhancement activities, and a NSF Scholar Organization as
the focal point of all activities [17]. In the last three and a half years, the UHCL NSF
program supported 46 scholars, funding about 15 scholars every regular semester. Most
scholarships were funded at the range of $3,000 to $5,000 per semester, with the
difference mostly determined by the academic output of the scholars as measured mainly
by their semester and cumulative GPA.
3. CONSIDERATIONS FOR DESIGNING ASSESSMENT PLANS FOR
SCHOLARSHIP PROGRAMS
There is a large body of work on assessment plans, metrics and tools for learning
outcome assessment but very few papers on assessment on STEM scholarship or
mentoring programs. However, guidelines and best practices in setting up good
assessment metrics for measuring learning outcomes can be transferrable for assessing
CCSC: South Central Conference
9
STEM scholarship programs. Based on our own experience as well as a study of the
literature, we propose a set of four simple criteria for setting up good assessment metrics.
(C1) Essential: the metrics should directly measure the goals and objectives of the
program. This provides for proficient and focused assessment. For example, in the
proposal of the first grant we submitted in 2002, one metric was "the average GPA of
Scholars is 0.2 higher than the average of non-Scholars with the same majors." Although
this is somewhat useful, it is ineffective in measuring the relative improvement in
academic quality. It is also non-essential as the main goal of the scholarship program is
to improve the number of graduates, while the quality of the graduates can be evaluated
through the regular learning outcome assessment of the degree programs. We thus
dropped this metric in our second grant proposal submitted in 2006.
(C2) Measurable: the metrics should be well-defined, declarative and quantitatively
measurable. This provides a clear path to collect and compute the assessment result,
which can then be used for both program improvement and ascertaining program
effectiveness. For example, our first proposal included the metric "community college
partnerships and recruiting efforts meet or exceed proposed activities." This turned out
to be somewhat ambiguous and difficult to quantify, even though our partnership with
some CCs had actually exceeded our expectation, including successful collaboration in
state-funded STEM mentoring grants. Since it was hard to quantify and not perceived to
be essential, it was removed from our second proposal.
(C3) Sensible: the metrics should be motivating yet realistic. They should provide
a reasonable target for demonstrating program accomplishment. For example, one metric
of our current grant is "85% or more of Scholars will complete their degrees within three
years." As explained later, this is unrealistic when compared to both national data and our
university data and we will adjust the percentage target to a lower, more realistic but still
compelling level.
(C4) Simple: the metrics should be simple to implement. Metrics that are difficult
to collect tend to be ignored. The effort should be comparable to the benefits. In fact, the
program announcement of the NSF S-STEM expects "the evaluation plan to reflect the
simplicity of the project design compared to other educational projects and the limited
resources available for evaluation." [14] For example, in our first proposal, we proposed
to conduct a follow-up survey three years after the Scholars graduated. This turned out
to be costly and ineffective and the metric was not included in the subsequent proposal.
4. ASSESSMENT PLANS AND RESULTS
Our second proposal suggested the use of five metrics to measure program
effectiveness:
M1. 85% or more of Scholars will maintain their scholar status.
M2. 85% or more of Scholars will complete their degrees within three years.
M3. 85% or more of Scholars will find jobs in their areas within three months of
graduation.
M4. 85% or more of Scholars will express satisfaction with the program in exit surveys.
M5. 90% or more of Scholars attend the required career enrichment events and NSF
Scholar Organization's meetings and activities.
JCSC 26, 4 (April 2011)
10
Since the grant is ending this year, the principal investigators wrote an evaluation
report based on the results of analyzing the data collected for the metrics. The proposal
called for an internal evaluator to evaluate the report based on the metrics and provide
recommendations for program improvement and performance assurance. Eventually, we
asked and received evaluations from three external evaluators (one CTO of a high-tech
company and two chairpersons of computing programs of surrounding community
colleges) and three internal evaluators (the director of the university's Office of
Institutional Effectiveness, a grant developer from the Office of Sponsored Programs and
the former division chair).
Overall, the evaluators indicated that the scholarship program is effective and
successful and the metrics are appropriate. However, nuanced analysis of the metrics
provided valuable lessons for us and we analyze each metric below.
Since our NSF scholar program has a clear set of eligibility rules required for
maintaining status, we expected data collection for M1 on status maintenance to be easy
and appropriate. However, the S-STEM program requires keeping scholar data using a
format dictated by a data collection website not familiar to us when we submitted the
proposal. In a given semester, the site classifies scholar status as one of four possible
options: "active", "graduated", "left program" or "leave of absence." To comply with the
data collection requirement, we defined "maintaining status" to mean "active" or
"graduated." Using this definition, the average percentage of scholars maintaining status
is 84.4%, slightly less than the target of 85%. However, students leaving the program or
taking an absence does not necessarily mean failure. Indeed, several scholars became so
successful that they were hired by the surrounding high-tech companies either as interns
or as permanent hires. These students no longer satisfied the financial eligibility
requirements and had to leave the NSF scholar program permanently or temporarily.
Thus, one recommendation is to change the metric to directly measure the number
of students completed or in the process of completing their STEM degrees. The new
metric M1 will become: "85% of scholars received or in the process of receiving a STEM
degree at the time of the writing of the final report." This is also similar to the approach
used by Sorkin [15]. Note that the new metric is more essential, measurable and simple
than the former one.
M2 measures how quick scholars are able to complete their studies. As an
upper-level institution, we collected data of the three-year graduation rate instead of the
typical five-year graduation rate used in four-year universities. Scholar data was
compared to three populations: UHCL, the School of Science and Computing
Engineering (SCE), and the NSF cohort that includes SCE majors in degrees supported
by the NSF grant. Data were further disaggregated by race and gender for the three
cohorts to measure success for these targeted areas. The result is shown in table 1.
CCSC: South Central Conference
11
Table 1 Three year graduation rates
3-Year Graduation Rates Hispanic Black Female All Students
All UHCL Students 57.90% 64.50% 65.31% 65.20%
All SCE Students 66.70% 0% 66.70% 64.10%
All Relevant Majors in SCE 10.00% 0% 50.00% 48.60%
UHCL NSF Scholars 85.7% 0% 55.6% 69.0%
The overall three-year graduation rate of NSF scholars of 69% is clearly below the
target of 85%. However, it compares favorably with the three other sample populations,
especially for Hispanic with the SCE cohort. More importantly, based on a sample of
201,588 students who entered college in 2004 at one of 326 four-year, nonprofit higher
education institutions, Higher Education Research Institute at UCLA reported that
"among students who aspired toward a STEM degree as entering freshmen, 33 percent
of white students and 42 percent of Asian Americans completed a bachelor's degree in
a STEM discipline within five years of entering college, compared with 22 percent of
Latinos and 18 percent of African Americans." [11, 9]. Thus, our scholar graduation rate
is roughly double that of the comparable national rate. Our evaluators concluded that the
program is effective but the goal of the metric was set unrealistically high. The future
new metric will be adjusted to become "degree completion within 3 years at 65% or
more." The new target should be both motivational and realistic.
We intended to collect scholar's employment data three months after their
graduation as a measure of the values of their STEM degrees and the preparedness for job
markets (M3). We had difficulty in collecting employment data in two fronts. First, we
had not been able to collect a significant percentage of employment information from the
NSF scholars three months after their graduations. Furthermore, for the comparison
cohort, the Texas Higher Education Coordinating Board (THECB) collects employment
information one year after graduation, not three months, and its sample size is not large.
That makes meaningful comparison with cohorts inaccessible. The evaluators concluded
that this metric is neither essential nor simple and suggested to remove it.
M4 is an indirect method to assess program satisfaction by using an exit survey to
be completed immediately after the scholars graduated. Continuing students were not
surveyed. This resulted in small sample sizes, lower response rates, untimely feedback
and difficult administration. We replaced the exit survey by an end-of-semester's scholar
satisfaction survey which includes sufficient details to serve not only for program
effectiveness assessment (summative assessment), but also to continuously identify
problem areas and improve the program (formative assessment). The overall scholar
satisfaction rate was found to be 92.9%, satisfying the metric. We refined the metric to
become "90% or more of Scholars will express satisfaction with the program in per
semester surveys." This includes using a better survey technique and raised target,
making the new metric more motivational and sensible.
Finally, M5 measures scholar participation. The metric is simple and sensible. The
result is a participation rate of 95.7% and no changes were recommended.
JCSC 26, 4 (April 2011)
12
5. FUTURE DIRECTIONS AND CONCLUSIONS
This paper focuses mostly on summative assessment for measuring program
effectiveness. Of equal importance, but not being discussed, is formative assessment for
identifying program problems and opportunities to seek continuous program
improvement. In our scholar program, feedback was continuously digested through
constant contact with scholars and CC and surveys of individual activities. This results
in new goals in our future proposal.
Overall, the result of our program assessment indicated that the scholar program is
effective in increasing STEM graduation rate, quickening graduation time, and ensuring
scholar participation and satisfaction. Besides the criteria of good assessment metrics
discussed in Section 3, we also learned that it pays to have a deep understanding on what
kind of data is needed for a metric and how these data can be obtained effectively.
Another lesson is that the use of a relatively large number of evaluators benefitted our
evaluation results as each provided a different lens to examine the program.
The refined metrics described in Section 4 have been integrated into a continuation
proposal for submission to the NSF S-STEM program. An additional metric is added to
measure the new goal of emphasis on undergraduate research and program dissemination:
"There will be two or more papers or presentations per year on NSF scholar's research or
the NSF S-STEM scholarship program." We believe the new set of metrics satisfy the
criteria we proposed in Section 3 and will learn more about the perceived effectiveness
of our approach by NSF.
REFERENCES
[1] ABET, Criteria for accrediting computing program, 2010-2011,
http://abet.org/Linked%20Documents-UPDATE/Criteria%20and%20PP/C001%
2010-11%20CAC%20Criteria%2011-16-09.pdf.
[2] American Association of State Colleges and Universities, Strengthening the
science and mathematics pipeline for a better America, AASCU Policy Matter,
2006, 2, (11), http://www.aascu.org/policy_matters/v2_11/default.htm, 2005.
[3] American Association of State Colleges and Universities, Leadership for
Challenging Times: Report of the Commission on Presidential Leadership and
Global Competitiveness, 2009,
http://www.aascu.org/media/publications/global_competitiveness.htm.
[4] Baker, J. G., & Finn, M. G. (2008). Can a Merit-Based Scholarship Program
Increase Science and Engineering Baccalaureates? Journal for the Education of
the Gifted, 31(3), 322-337.
[5] Bizot, B., US CS New Majors, Enrollment Both Continue Increase in 2008-2009,
Computer Research News, March 2010, Volume 22 No. 2.
[6] Bureau of Labor Statistics, Occupational Outlook Handbook, 2010-11 Edition:
Overview of the 2008-18 Projections, 2010,
http://www.bls.gov/oco/oco2003.htm.
CCSC: South Central Conference
13
[7] Chen, X. & Weko, T., Students Who Study Science, Technology, Engineering,
and Mathematics (STEM) in Postsecondary Education, US Department of
Education, NCSE 2009-161, July 2009,
http://nces.ed.gov/pubs2009/2009161.pdf.
[8] CRA Bulletin, Interest in CS and CE as Majors Drops in 2005, Feb 8, 2006,
http://www.cra.org/wp/index.php?cat=33.
[9] Eagan K., Freshmen show gains in aspirations for science degrees, but not all
arrive at finish line, UCLA Newsroom, Feb 16, 2010,
http://newsroom.ucla.edu/portal/ucla/freshmen-show-gains-in-aspirations-15372
3.aspx.
[10] Gerhardt, J., Olsen, J., Small Colleges Can Get Big NSF Grants, Proceedings of
the 21st Annual Information Systems Education, Newport, Rhode Island,
November 2004.
[11] Higher Education Research Institute at UCLA, Degrees of Success: Bachelor's
Degree Completion Rates among Initial STEM Majors, Jan 2010,
http://www.heri.ucla.edu/nih/HERI_ResearchBrief_OL_2010_STEM.pdf
[12] Martincic, C., Carlson, D., The NSF CSEMS grant program: our experience with
the proposal process and program execution, Journal of Computing Sciences in
Colleges, 19, (1), 73-82, October 2003.
[13] National Research Council, Rising Above the Gathering Storm: Energizing and
Employing America for a Brighter Future (National Research Council,
Washington, DC, 2005).
[14] NSF, NSF Scholarships in Science, Technology, Engineering, and Mathematics
(S-STEM) Program Solicitation, NSF 09-567,
http://www.nsf.gov/pubs/2009/nsf09567/nsf09567.htm.
[15] Sorkin, S., et. al., Promoting computer science, engineering, and related
programs with scholarships and student support services, Proceedings of the 35th
ASEE/IEEE Annual Conference on Frontiers in Education, S2C-21-27, October
2005.
[16] U.S. Census Bureau, 2004, U.S. Interim Projections by Age, Sex, Race, and
Hispanic Origin: Projected Population of the United States, by Race and
Hispanic Origin: 2000 to 2050,
http://www.census.gov/population/www/projections/usinterimproj/natprojtab01a.
pdf.
[17] Yue, K., Hall, S., Reflections on Proposal Writing and Management of a NSF
STEM Scholarship Grant Program, Journal of Computer Sciences in Colleges,
Volume 22, Number 4, pp244-251, 2007.
___________________________________________
* Copyright © 2011 by the Consortium for Computing Sciences in Colleges. Permission to copy
without fee all or part of this material is granted provided that the copies are not made or
distributed for direct commercial advantage, the CCSC copyright notice and the title of the
publication and its date appear, and notice is given that copying is by permission of the
Consortium for Computing Sciences in Colleges. To copy otherwise, or to republish, requires a
fee and/or specific permission.
14
WHERE ARE THE WOMEN COMPUTER SCIENCE
STUDENTS?*
Theresa Beaubouef and Wendy Zhang
Southeastern Louisiana University
Hammond, LA 70402
tbeaubouef{wzhang}@selu.edu
ABSTRACT
This paper discusses the ongoing decline in female students in computer
science (CS) and related fields. A questionnaire was developed and used to
gather information from current female computer science and other science
majors at two universities. The development and issuance of the questionnaire
is discussed, along with an analysis of the results. Suggestions related to the
motivation of female college students to pursue degrees in computer science
and related fields are made based on the results of the survey.
INTRODUCTION
Many academic professionals have noticed the decline in students in computer
science (CS) and related fields, and researchers have investigated reasons for these trends
[2, 3]. In particular, the decline in female students has far exceeded that of their male
counterparts. According to Jan Cuny [4], program office for the National Science
Foundation's Broadening Participation in Computing (BPC) program, fewer than one in
five degrees in computer science are being awarded to women. Norwegian University for
Science and Technology observed a steady decline in the number of female students in
subjects related to computer science—in 1996 only 6 percent of the students in Computer
Science were women [6]. At our university these same trends are evident. Usually there
are only a few female students at most in the majors' courses, with male students
outnumbering the females by about ten to one.
DePalma [5] suggests that women tend to avoid computer science because of the
"tinkering" aspect of the field, in spite of being attracted to the mathematical and logical
aspects of computer science. Spertis [8] suggests that "factors include the different ways
CCSC: South Central Conference
15
in which boys and girls are raised, the stereotypes of female engineers, subtle biases that
females face, problems resulting from working in predominantly male environments, and
sexual biases in language." She also believes that "women's underrepresentation is not
primarily due to direct discrimination but to subconscious behavior that tends to
perpetuate the status quo." There have been efforts to try to explain why women are not
choosing computer science [5, 8, 9] and to find ways to recruit and retain these students
[1, 8]. This research discusses our goals, the questionnaire developed, the information
obtained from the students, and analysis of the results.
GOAL OF RESEARCH
Our university is a regional university housed in a small town. There were 15,000
students enrolled in the fall of 2009, 62.8% of which are female. In spite of this large
percentage of female students, there were only 31 female CS students out of a total 286.
It is promising that most of these students perform very well in their coursework, and
those tend to remain in computer science. In spite of this, the male students outnumber
the females by about ten to one. Where are the women computer science students?
Apart from ethical concerns at women's lack of participation in computer science,
the demographics of the country are such that the United States will not have enough
engineers and scientists unless underrepresented groups increase their participation. This
research examines the influences against a woman's pursuing a career in a technical field,
particularly CS.
When we decided to try to find out what motivates the female students to become
computer science majors we discussed our concerns with professors at other local
universities. One had not realized that the problem was so pronounced, and after looking
up actual data could not believe that their numbers for female students were as low as
they were. He immediately offered his support in trying to obtain information from
current students. One of the key areas of our study was to determine whether or not
gender biases or discrimination against women exists in computer science departments.
With limited numbers of female students available, a major goal of this research was
to extract as much information as possible from each responder. Keeping this in mind,
we designed the survey to be open ended, encouraging students to write freely. We
wanted them to feel comfortable in filling out the survey, and at the same time to let them
know that we are available for future discussion. We also wanted them to be made aware
of the female faculty in the department and their willingness to serve as role models.
Questions 1, 4, 10, and 11 were designed to gather opinions about those things that
might attract students initially to computer science. Information gathered here might be
used to tailor recruiting efforts. In questions 2, 5, 6, and 9 we hoped to get some
understanding of any particular needs that these students might have, to elicit any
suggestions for making our program more welcoming to female students, and to
determine interest in establishing an organization for female CS students. We also hoped
that if there were any forces driving these students away from the department or making
their studies unnecessarily difficult that these problems might be revealed.
Questions 3, 7, and 8 addressed knowledge and skills and the perceived gender
differences that might prevail. Questions 7 and 8 ask about the responder's individual
JCSC 26, 4 (April 2011)
16
strengths and weaknesses, whereas question 3 asks about male/female differences in
general. Through these questions we hoped to learn if there were any preconceived
notions about gender and the ability to succeed in computer science, and to determine if
the responder considered herself as being like the other students or different from them.
This survey was not designed for statistical analysis or precise results. We did not
want to force students to choose among a fixed set of responses, nor did we want to limit
their ability to expound on any answers. Our goal was simply to gather as much
information as possible from current female students in an effort to better understand
enrollment trends and to identify areas in which universities can improve in the
recruitment and retention of female majors in computer science and related fields.
QUESTIONNAIRE AND SURVEY RESPONSES
Surveys began by asking the university attended, the concentration area of computer
science being studied, and the classification, i.e., freshman. Surveys were sent out by
email or hand delivered to classes at two universities. Twenty surveys were returned,
including responses from three freshmen, six sophomores, four juniors, six seniors, and
one post bachelor. There were thirteen students currently enrolled as CS majors; the other
seven majored in either physics or mathematics. The following questions were asked, and
we summarize the responses to the individual question topics.
Question 1: Why do you choose Computer Science?
The answers to this question varied widely but most revealed that the students liked
computers and technology and the challenges that go along with the use of them.
Question 2: Do you feel "welcome" in the Computer Science program? Explain.
Seventeen students felt that they were welcome in the computer science program.
Two students had mixed feelings. One student was new to computer science and felt that
unless she had a prior background in CS then there was no room for her.
Question 3: Do you feel that there are gender differences in abilities to perform well
as a Computer Science student? Yes No Please explain.
In [10], stereotypes and the untrue "notion that women aren't good at math and
computer science" were given as a perceived difference that, although untrue, has been
very slow in acceptance by some people. Thankfully our current female computer science
students do not subscribe to this notion. Sixteen students felt that there was no gender
difference in the ability to perform well in CS. They thought females could do anything
males could do and sometimes better, that gender made no difference, and "it was all
about the effort put into it." However, some thought that women did not really get
involved in computers until getting into college, whereas most men became involved with
computers as teenagers.
Question 4: What do you feel are the reasons for the decline in number of female
students entering computer science programs?
In [9] it was suggested that there were more women pursuing the field of computer
science before the male subculture of action gaming appeared, and that today there is a
"pejorative figure" of the "nerd" or "geek," and girls do not want to be identified as such.
Many of our responses relate only indirectly to these notions. Several indicated that girls
CCSC: South Central Conference
17
might feel intimidated. Others thought that girls were trained to think they weren't as
intelligent as males or "good enough to work in a man's field," Surprisingly, these
responses seem to be contradictory to those of question 3.
Question 5 and 6:
What should our university and the Computer Science Department do to encourage
women to enter our computer science program?
Would you be interested in joining and participating in an organization for women CS
students if our department established one? If so, what activities, etc., do you suggest?
The students who were not majoring in CS suggested "pushing more computer
science courses to incoming freshman" in order to encourage woman to enter the CS
program. Some students thought that the Department should try to break the stereotypical
image of CS and recruit more female students by providing scholarships. One suggested
that the university have female speakers at high schools, or even middle schools. One
student suggested that the females in the program should be taught that confidence and
willingness to learn were what is most needed to succeed in a computer science program
In [1] a spring social was held for students to meet women in computer science. It
was sparsely attended, but those that did attend had very positive reactions. They also
decided that seminars were very important, and they planned to follow the meeting with
dinner or other social event to give participants the opportunity to interact with female
role models. In our study, only nine (69%) students majoring in CS were interested in
joining and participating in an organization for women CS students. They suggested
having a study and support group where women could help each other with academic
challenges and to discuss issues such as the different areas of CS applications, the new
technologies, how to be prepared for classes, and even some "personal issues".
In [6] a major effort was made to recruit and retain female computer science
students at the Norwegian University for Science and Technology. They visited high
schools, and also arranged special courses, visits to businesses, and seminars highlighting
female role models and the relevance of computer science in business. Moreover, they
created a computer lab for women with female lab assistants and tutors—and the main
job of two of the assistants was to make sure that new female students were having a
good time! They obviously considered the social needs of their students in addition to
their academic needs. Perhaps this is what was alluded to in the inclusion of "personal
issues" for suggested group discussion by one of our survey respondents.
Questions 7 and 8:
What are your strengths, those things that help you perform well in CS, and what are
any weaknesses, those things that you feel are difficult for you in your CS courses?
In [1] the authors indicated that the most notable findings from their study showed
that female students, much more than their male counterparts, felt "less prepared to major
in electrical engineering (EE) or CS" even though both males and females considered
engineering and computer science to be very competitive majors. They also said that
there were many "superb students who are discouraged from entering EE and CS because
they are less overtly assertive and self-confident than their peers, or feel that they were
not sufficiently exposed to EE and CS in high school" [1]. In our research, students also
identified the "lack of fully understanding the logic and algorithms of programs" as a
JCSC 26, 4 (April 2011)
18
problem. Other things that made it difficult for them to deal with CS courses included
lack of time and lack of study groups.
A majority of the students in our study identified similar strengths that they said
helped them perform well in CS courses. These include such things as a strong interest
in CS, proficiency in math, a strong work ethic, determination, and persistence.
Question 9: Is the CS lab situation conducive for female students' success? Explain.
Our study did not elicit any suggestions about a separate lab for women. The
majority of students thought that the computer science lab was good for both male and
female students, and that the labs gave students the opportunity to share knowledge with
classmates and to get help when needed. Some students thought that the labs could be
better managed and have additional Help Desk made available.
Question 10: Regarding pre-college students, which do you believe influence females'
decision about majoring or not majoring in CS? For each, please explain.
(1) The media, (2 )CS role models, (3)High school counselors/teachers, and
(4) Ignorance about the CS field
The media more often than not portrays women computer scientists as strange and
different-looking. It is usually not the case that a beautiful super model type is cast in the
role requiring intelligence and technical ability. In our study, eight (40%) students
thought the media had a negative influence on females' decisions about majoring in
computer science. They indicated that the media tells girls that it is more important to
worry about things like their appearance, friends, social life, and partying. The media
does not mention any of the real world people behind all the software and hardware.
A majority of students in this study thought that CS role models were very important
in showing them the benefits of hard work and determination. The female CS role
models prove that women can do as well as men in computer science. Some students
mentioned that if there were more CS role models available to pre-college students, it
might influence females' decisions about majoring in computer science. Very few
students, two out of twenty, were influenced by their high school counselors and teachers
in deciding their majors. Some students mentioned that their high school counselors and
teachers had very limited knowledge about computer science.
In [10] several things were identified as discouraging young women from pursuing
computer science. These include "dull middle school and high school classes that portray
computer science as more of a non-challenging vocational field", an "image of computer
scientists as being nerds who spend all day in isolation," stereotypes and the untrue
"notion that women aren't good at math and computer science." Most students in our
study agreed that ignorance about the computer science field could influence a female's
decision about majoring in computer science. They mentioned that most people are
afraid of what they do not know. Some students did not think it was ignorance, but the
fact that CS is a technical and mathematical field, which is usually male dominated.
Question 11: Please tell us anything else that might help us to understand why female
students do/don't choose CS, why you think there is a decline in female CS students,
and what we should all do, if anything, to reverse this trend. Any additional comments?
In this question students mentioned things like family influence, personal
self-esteem, public ignorance about computer science, and time management and support
CCSC: South Central Conference
19
for students with children. Students suggested making more people aware of the CS field
and creating more scholarships for women. One respondent indicated that most females
thought that "computer science was too hard, so the fellow female students need to show
them that they can do it." Another related the following about many of the non-traditional
students: "some female students have families and need extra help to balance their time."
CONCLUSION AND DISCUSSION
When the survey was sent out to the students it was expected that some of them may
have no interest or time to complete the survey. What was not expected was that many
of the students had not thought it unusual that there were not more female students in
computer science. They just assumed that that was how things were and accepted it.
Providing them with this questionnaire led them to question this notion, and opened their
minds to understanding their own motivations for choosing CS as opposed to reasons of
others for not choosing it. Our results from this research have led us to consider several
new endeavors for our program for the recruitment and retention of female students.
A major consideration is the lack of education of the general public about the nature
of computer science. If female students are not made aware of the realities of the field,
then they will continue to rely on misrepresentation by the media and the ignorance of
some of their teachers and guidance counselors. To help with this, educational flyers and
posters are being developed to promote the field, to encourage and challenge students to
consider CS, to identify possible careers, and to dispel stereotypes about women and their
abilities in these areas. To do so there will be pictures of real CS students—they are
beautiful—and prominent women in the field. Information about coursework, jobs,
salaries, and trends in technology will also be included. Different posters will highlight
different facets of the field to attract students with varied interests. For example, many
students think computer science is all about gaming or robotics, but most are unaware of
other CS areas such as information systems, project management, software engineering,
support, training, human/computer interaction, and systems administration.
The establishment of an organization specifically for female CS students is also
being considered. Lastly, through the ACM meetings and departmental seminar series,
professional women in CS are being sought out as guest speakers since they are excellent
role models. This will increase ties to industry, allowing networking for our students.
Computer science programs at other universities should consider similar activities
for increasing participation by women in computer science and related fields. We expect
to continue to study student motivation and interest in the field. In future work we plan
to gather information from female students who are not computer science majors in an
effort to try to understand whether they were deterred from computer science for some
reason, or whether other majors were more attractive to them, and why.
ACKNOWLEDGMENTS
This research was sponsored in part by the NSF grant CCF-0939108.
JCSC 26, 4 (April 2011)
20
REFERENCES
[1] Abelson, H., Adams, T., Braida, L., Hunter, A., Johnson, B., Jones, M., Khan,
N., Pierce, M., Stein, L., Tucker-Kellogg, L., Yeh, S. 1995. Women
Undergraduate Enrollment in Electrical Engineering and Computer Science at
MIT. MIT EECS Report,
http://www-eecs.mit.edu/AY94-95/announcements/13.html
[2] Beaubouef, T., Mason, J., Why the High Attrition Rate in Computer Science
Students: Some Thoughts and Observations, SIGCSE Bulletin (inroads), 37, (2),
103-106, 2005.
[3] Beaubouef, T., McDowell, P. 2008. Computer Science: Student Myths and
Misconceptions. Consortium for Computing Sciences in Colleges (CCSC:SC'08),
Corpus Christi, TX, April 18-19, 2008.
[4] Cuny, J., http://www.cs.uoregon.edu/News/20070330-Cuny.php
[5] De Palma, P., Why Women Avoid Computer Science, Communications of the
ACM, 44, (6), 27-29, 2001.
[6] Gjestland, T. 1999. A Successful Effort to Increase the Number of Female
Students in Computer Science. ERCIM News No. 38.
http://www.ercim.org/publication/Ercim_News/enw38/gjestland.html
[7] Margolis, J., Fisher, A. Unlock the Clubhouse: Women in Computing, MIT Press
Paperback Edition, 2003.
[8] Spertus, E. 1991. Why are There so Few Female Computer Scientists? MIT
Artificial Intelligence Laboratory Technical Report 1315,
http://people.mills.edu/spertus/Gender/pap/pap.html
[9] Stross, R. 2008. What Has Driven Women Out of Computer Science? New York
Times, p. BU4, http://www.nytimes.com/2008/11/16/business/16digi.html
[10] Werner, L., Hanks, B., McDowell, C., 2004. Pair Programming Helps Female
Computer Science Students. J. on Educational Resources in Computing, Vol. 4
Issue 1, http://doi.acm.org/10.1145/1060071.1060075
___________________________________________
* Copyright © 2011 by the Consortium for Computing Sciences in Colleges. Permission to copy
without fee all or part of this material is granted provided that the copies are not made or
distributed for direct commercial advantage, the CCSC copyright notice and the title of the
publication and its date appear, and notice is given that copying is by permission of the
Consortium for Computing Sciences in Colleges. To copy otherwise, or to republish, requires a
fee and/or specific permission.
21
BEYOND THE COMPUTER SCIENCE CURRICULUM:
EMPOWERING STUDENTS FOR SUCCESS*
Theresa Beaubouef, Wendy Zhang, Ghassan Alkadi, Kuo-Pao Yang
Department of Computer Science and Industrial Technology
Southeastern Louisiana University
Hammond, LA 70402
(985) 549-2189
{tbeaubouef, wzhang, galkadi, kyang}@selu.edu
ABSTRACT
Students learn most of the skills they need for a career in computer science
through their college courses, especially the computer science courses.
However, there are many skills, many life lessons, and many experiences that
students can add to their repertoire in college life that are not defined as part
of any particular course or courses. In this paper, we discuss things that are
important in becoming a successful professional computer scientist, and how
we have tried to empower our students in various areas tailored to computer
science students in general, and specifically for students weak in certain areas.
In particular, we discuss real-world and hands-on projects, independent study,
internships, program verification, and the development of good
communication, research, and social skills.
INTRODUCTION
A typical computer science (CS) curriculum is made up of a variety of courses that
prepare students in those areas of computer science deemed important for graduate school
or for pursuing a career in computer science. Careers can be as varied as software
engineer, scientific programmer, database and web developer, or network administrator.
Coursework covers a broad spectrum of topics from programming to hardware and
networking. However, everything that students learn in their coursework will simply
enable them to be able to learn what they need to know later on. Moreover, there are
JCSC 26, 4 (April 2011)
22
many skills that are necessary for overall success, but are not part of actual course
material.
One thing that we consider important is the student's confidence in his or her
abilities. To increase confidence it is important to assign projects with just the right level
of difficulty, letting the students assume responsibility, and yet pushing them to new
levels. It is also important that students achieve the ability to learn something on their
own (such as a new language or platform), to do research, and to make sound decisions.
Students need to develop leadership skills, and to learn to deal with resistance, lack of
effort of some group members, and time management. These are important in
communicating with colleagues and in working in groups. Moreover, they must learn to
be effective communicators, both orally and in writing.
It is also important that students stay connected with the real world so that they have
the feeling that what they are learning is something important that they will use in the
future. This can be accomplished through guest speakers, internships, participation at
conferences, and working on real world projects for real clients. Students need hands on
projects to reinforce the connection between software and hardware, and cutting edge
projects such as those involving cell phone applications, radio frequency identification,
computer gaming, robotics, or computer visualization to maintain their interest.
In this paper we discuss a few of the more important activities that we believe makes
our program, as well as some other universities' programs, special. We describe the
incorporation of real world and group projects, internships and independent study, hands
on projects involving hardware, and the use of research, code verification, and
communication activities. We believe that these activities, as well as our personal
attention to all students as individuals with unique talents and needs lead to well prepared
graduates.
REAL WORLD PROJECTS
In our curriculum, we have included courses that are vital to the students'
improvement in programming and to their communicational and writing skills. Most of
our upper level courses, junior and senior, include small to medium scale size projects [1,
2, 3]. Such projects, not only increase students' self-assurance in tackling any problems
assigned to them, but also increase their confidence in professionally presenting their
results orally. Students' paper writing skills are also improved because of the extensive
documentation they must include in their software package. Graduates often contact us
to tell us that they felt well prepared for their careers, and were not blindsided by
technologies or practices of which they had never heard.
In addition, in the third programming language course our students are faced with
new challenges. They learn new programming languages, database tools, and different
operating systems on their own while developing a real world system. Such endeavor
requires them to do extensive research and work with other team members in developing
a software package by the end of the semester. The learning curve is steep, but the
benefits are certainly worthwhile. The majority of the students in this class are very eager
to learn and strive to prove that they are responsible. They are allowed to work in the
major's CS lab where they can get technical guidance from their peers that are juniors and
seniors. These upperclassmen are also invited to come to class to talk to the students
CCSC: South Central Conference
23
about their experience and to offer assistance. CS faculty members often act as project
managers and mentors to the students to assure that they are not lost in the expedition.
In our Information Systems class, a real-world client is assigned to the class where
students in groups compete to deliver the client's requirements specifications. The client
often requires a variety of heretofore unencountered Microsoft tools to develop the
software. A recent project, for example, required such technologies as Windows
Presentation Foundation (WPF) [7], Microsoft Model-View-ViewModel [13], and
Microsoft Silverlight [8]. Expression Blend, command patterns and repository patterns,
and Windows Communication Foundation (WCF) services were also required, and the
.Net Framework 4.0 and C# were used to develop the software. The client met with the
students on a biweekly basis. However, the students also made a few trips to the
company to elicit requirements and to see firsthand how the company operates its
business. Interestingly enough, the company was a software development company, so
the students not only learned how to deal with a customer and communicate orally and
in writing, but also learned the valuable lesson of seeing how a software company
operates. The client attended every prototype presentation and supplied instantaneous
feedback. Some prototype presentations were scheduled as a one on one basis with the
client, while others were presented in class. The project manager, a student who had
previously taken the course, kept an open channel with the students and the client via
Google groups and also Google Docs. The students were also required to use Subversion
Tortoise SVN for version control, and to estimate man hours for accomplishing specific
tasks [12]. Students were meeting using the SCRUM, which is an Agile software
development method [10].
HANDS-ON PROJECTS WITH HARDWARE/SOFTWARE
A project involving Radio Frequency Identification (RFID) is useful practice for
computer science majors to extend their software knowledge into the real hardware
domain. CS students traditionally lack adequate opportunities to work with actual
hardware although they take a series of hardware courses, where they often study these
concepts only through simulation. Recently our computer architecture course has
incorporated several general project topics in RFID technologies as group projects.
Students are interested in usages of RFID technologies in two various directions:
software and hardware. In the software direction, students use hardware packages with
device drivers. They focus on developing a graphical user interface to interact with RFID
readers and other hardware components. These RFID readers are usually controlled by
host computers through USB port connections. Students implement solutions in
programming languages such as C++ and Visual C# for the graphical interface and call
Dynamic Link Libraries (DLL) to work with hardware devices. In the hardware approach,
students hardwire RFID readers, microcontrollers, and other devices on the breadboard.
They write code in hardware description languages such as PBASIC [7] and JAL [6] for
the microcontrollers in order to operate the RFID readers and other hardware
components. The RFID system usually runs independently without any connections to
computers after downloading the hardware configuration into the microcontrollers.
These hands-on projects with hardware / software co-design are important in
introducing students to real world problems and in making them more marketable as
JCSC 26, 4 (April 2011)
24
developers. After graduation, students must face challenges not only in software, but also
in hardware, where the working environment is not necessarily known in advance.
Because students are required to work with sophisticated real-world projects involving
both hardware and software, they gain insight into the programming of devices and
confidence in their overall knowledge of the field of computer science.
INDEPENDENT STUDY AND INTERNSHIPS TO CHALLENGE STUDENTS
BASED ON ABILITY AND NEEDS
To improve the self learning and working experience, we offer a senior level
internship. Internships are advantageous to students in that they gain experience in
working with real world companies using state of the art software and hardware, yet they
are also advantageous to employers in that they have to opportunity to get to know the
abilities of a possible future employee and get work accomplished with minimal expense.
The course requires that the student must be an integral part of a software project team
in industry or some research institute.
One student, for example, was awarded a summer research internship by the Naval
Research Lab (NRL) where she worked on a research project with research scientists and
university faculty. She gained much knowledge and research experience while there and
published a paper based on her research. The following year two additional students were
awarded research internships by NRL. Still other students have worked in internships for
software development companies. These students, like many of our students who work
on internships, are immediately hired by the same company as permanent employees
upon graduation.
Another course which often requires great commitment on the part of the faculty,
but is beneficial for many students, is the independent study course. When students are
involved in independent study projects, the instructor has the responsibility of
ascertaining the student's strengths and weaknesses and assigning projects and tasks that
will encourage independent thinking and research, without overwhelming the student or
causing discouragement. Each student is different. Some need extra help with people
skills, some with writing, some with programming. Others need to develop time
management skills or be forced to take the initiative to learn something without help. The
independent study allows for individual students' weaknesses to be addressed or for them
to pursue additional study in areas which interest them. The independent study is research
intensive, with most students working with robotics, gaming, or virtual reality projects,
since these are the areas in which they are often most interested.
FORCING TO DOCUMENT, WRITE PAPERS, PRESENT WORK
Computer science students are typically not very effective communicators, yet the
field of computer science is necessarily dependent on both oral and written
communication. Many CS curricula include technical writing and speech courses.
However, these are often not enough. It is critical that students gain practice in
researching and communicating technical information to a variety of audiences, so it is
imperative that students are engaged in research and encouraged to write papers and to
make oral presentations. We have recently instituted an annual CS Symposium as a venue
CCSC: South Central Conference
25
for students to publish and present technical reports on their work in CS research and
projects.
There are numerous research opportunities in the area of computer science, so
students and faculty can easily find topics for research. In our upper level classes, such
as the survey of programming languages, artificial intelligence, or spatial database and
applications courses, for example, students gain sufficient knowledge to be able to
identify some area of study that they can easily develop as applications for research
problems. These courses prove to be very rewarding for our students, not just because of
the material covered, but also because of the projects involved.
Many students also submit their project proposals for funding through our Science
and Technology Awards for Research (STAR) program, which enhances undergraduate
education by providing funding for students engaged in research projects designed in
collaboration with Science and Technology faculty members. Proposals are reviewed and
funded by the STAR Review Committee, and awards are determined on a competitive
basis. Several students' proposals have been funded, and the students made poster
presentations on College Honor Days and at the university's Student Research, Creative,
and Scholarly Activities Showcase.
Some students went on to submit papers based on their research to regional,
national, and international conferences. Papers were accepted by several conferences [5,
11, 14, 15], which the students attended and orally presented their research results. In
addition to the research, writing, and oral presentation skills gained from these
conferences, students were also exposed to other types of research and were able to meet
other researchers in the field. They are proud to include their publications as part of their
resumes, and their experiences have fostered a greater awareness of opportunities for
further education and research.
USE OF PROGRAM VERIFICATION FOR LEARNING
Students can learn a great deal by looking at the code of other programmers. They
learn about different coding styles, and they learn to appreciate clear coding when they
themselves have to try to understand it. The importance of clear systems requirements
specification and proper code documentation is reinforced. When students examine both
good and bad documentation and requirements, it helps them to learn what constitutes
effective documentation, and perhaps more importantly what does not, especially if
ambiguity is present.
Students at all levels can benefit in other ways from program verification activities.
It helps beginning students to truly understand the effects of program language constructs,
parameter passing, and the structuring of data and objects. It is also a way to enhance
their problem solving skills [4], something that is very difficult for some students. More
advanced students learn about various testing techniques and hard to find errors such as
those involving memory management or lack of robustness in code.
We have developed several test cases for program verification activities, and are
continually developing additional case studies to use for student learning. Upper level
students have been recruited to help with the development of these test cases and the
development of a web site for the cases, their requirements specifications, descriptions
JCSC 26, 4 (April 2011)
26
of the errors introduced in the cases for students to find, and an explanation of the
solutions.
CONCLUSION
Computer science is an interesting and diverse field. It brings together many areas
of science, technology, communication, and human relations, and computer applications
today are more powerful than anyone could have imagined in years past. When all is said
and done, however, a computer is still a simple machine. It can store data, it can add, and
it can compare two values. Every other operation is built off of these basic abilities. It is
the computer scientist's job to create the highly sophisticated and user friendly
applications that the general public takes for granted every day, and it is the CS university
educators' jobs to ensure that graduates have the skills and abilities necessary for
designing and developing technology solutions in a modern world.
It is critical that faculty remain current in the field through research and continued
learning. It is also important that they keep up with current technologies and industry
trends. We annually hold an Advisory Committee Meeting where computer professionals
and managers that hire our graduates meet to inform us about what they are looking for
in new hires and directions in which the industry is heading. The feedback from this
group has led to many of the opportunities and activities discussed in this paper which
we believe empower our students for success.
ACKNOWLEDGEMENT
This research was supported in part by the NSF grant #CCF-0939108.
REFERENCES
[1] Alkadi, G., Beaubouef, T., An Experimental Group for Research and Developing
Software, Consortium for Computing Sciences in Colleges (CCSC:SC'08),
Corpus Christi, TX, April, 2008.
[2] Alkadi, G., Beaubouef, T., Introducing a Graduate Research Problem to a Junior
Level Class: A Successful Experience, Journal of Emerging Trends in
Computing and Information Sciences, vol. 1, no. 1, July, 2010.
[3] Beaubouef, T., Alkadi, G., Schroeder, R., The Sometimes Harsh Reality of Real
World Computer Science Projects, SIGCSE Bulletin (inroads), vol. 1, no. 4,
December, 2010.
[4] Beaubouef, T., Lucas, R., Howatt, J., The Unlock System: Enhancing Problem
Solving Skills in CS1 Students, SIGCSE Bulletin (inroads), 33, (2), 43-46, 2001.
[5] Hawkins, W., Zhang, W., The Effects of The Hurricane Katrina on Louisiana's
Gulf Coast, IEEE International Geoscience & Remote Sensing Symposium, July,
2008.
[6] JAL Programming Language for Embedded Microprocessors 2010. Retrieved
from: http://justanotherlanguage.org/.
CCSC: South Central Conference
27
[7] Microsoft Windows Client .NET 2010, The official Microsoft WPF and
Windows form site. Retrieved from: http://windowsclient.net/default.aspx.
[8] Microsoft Silverlight 2010. Retrieved from:
http://www.microsoft.com/silverlight/.
[9] PBASIC Programming for Microcontroller 2010. Retrieved from:
http://www.parallax.com/.
[10] Pressman, R., Software Engineering, A Practitioner's Approach, Seventh
Edition, McGraw Hall, 2010.
[11] Sherestha, R., Watts, M., Zhang, W., Yang, K., Representing Clifford Algebra
Into OMDoc Format, The Journal of Computing Sciences in Colleges, 24, (4),
124-129, April, 2009.
[12] The coolest Interface to (Sub) Version Control 2010. Retrieved from:
http://tortoisesvn.net/.
[13] Wildermuth, S., Silverlight Patterns: Model-View-ViewModel, In Silverlight 2
Apps 2010. Retrieved from:
http://msdn.microsoft.com/en-us/magazine/dd458800.aspx.
[14] Zambo, S., Create GA Content Dictionary Using OpenMath Format, LSU Triple
EX Annual Symposium for Undergraduate Research, Baton Rouge, LA, October,
2009.
[15] Zambo, S., Defining Geometric Algebra Semantics, Proceeding of the 48th ACM
Southeast Conference (ACMSE 2010), Oxford, MS, April, 2010.
___________________________________________
* Copyright © 2011 by the Consortium for Computing Sciences in Colleges. Permission to copy
without fee all or part of this material is granted provided that the copies are not made or
distributed for direct commercial advantage, the CCSC copyright notice and the title of the
publication and its date appear, and notice is given that copying is by permission of the
Consortium for Computing Sciences in Colleges. To copy otherwise, or to republish, requires a
fee and/or specific permission.
28
COMPUTING FOR SCIENCE MAJORS: A NEW COURSE*
Richard P. Simpson and Tina Johnson
Computer Science Department
Midwestern State University
Wichita Falls, Texas
richard.simpson@mwsu.edu, tina.johnson@mwsu.edu
ABSTRACT
A new computing course has been developed to specifically support majors in
the natural sciences, particularly chemistry and biology. The course is
composed of advanced features of MS Office together with other public
domain software that has direct application to these majors. A command-line
programming environment together with Perl, a well-known scripting
language, is used throughout. Other areas of emphasis include ASCII files,
image processing and associated file formats, Perl programming, text
processing using regular expressions, bibliographic software and simulation
of biological systems. The course, taught interactively in a lab, has become
popular and is used by science majors to satisfy the core requirements for their
respective degrees. This paper provides an overview of the material covered
in the course.
INTRODUCTION
Teaching computer applications at the college level can be frustrating for both
students and instructors. Many students have taken similar courses in high school and
do not feel challenged by the material or assignments. Surrounded by technology in
everyday life, students may feel bored and unmotivated in a traditionally taught computer
applications course [7]. These students gain very little new knowledge. While this issue
will never be completely resolved, courses that are designed to address problems directly
related to a student's field of study can be beneficial for everyone involved.
Computing for Science Majors was developed at Midwestern State University as an
effort to create a course that is mutually beneficial to students, the science program, and
CCSC: South Central Conference
29
to the instructor teaching the course. Advanced features of traditional programs, such as
MS Office are utilized, and assignments are related to scientific applications. In addition,
the Perl programming language is used throughout the semester for the manipulation of
large files, DNA strings and other text processing. Besides emphasizing file formats and
generalized data flow, this course teaches the necessary processing skills required for
writing scientific papers. There are a few courses of this nature being taught; GNSC 1001
at Oklahoma Baptist University [9] is similar. The primary goal of this course is to teach
computer concepts and applications which are directly applicable in the field of science.
This is an effort to facilitate students who are science majors while satisfying a core
requirement for all majors.
COURSE OVERVIEW
Students appreciate the Open Educational Resources (OER) approach of this course
[11]. OER courses are those taught using resources that reside in the public domain or
have been released under intellectual property copyright, which means a savings of
approximately $100 on the purchase of a textbook. The only divergence from the above
philosophy is the use of Microsoft Office and Windows. This has not been an issue since
these packages are readily available.
The actual course commences with a study of DOS and the command-line user
interface (Linux or virtual environments such as that generated by the Sygwin emulator
have been considered but as of yet not been tried). The DOS command- line looks quite
similar to the usual shells in Linux. Shell commands such as dir, type, move, etc. are
studied together with additional external utilities such as hexdump.
The course continues with a study of text files. This includes an in-depth
investigation of ASCII text files as well as a brief look at UTF-8 via the hexdump lens.
Since ASCII tables are often displayed in binary, octal and hex, these numerical formats
are addressed along with the usual conversion algorithms.
Biology, chemistry and other scientific fields regularly use and process large text
files. Due to the fact that the scripting language Perl has become very popular in the
areas of medicine, biology and bioinformatics [1,16], combined with its ability to perform
generalized data mining and reformatting of large text files, the authors selected it as the
main programming language of this course. The editor Notepad++ was selected for the
editor/programming environment. In addition to its support for color coded syntax of
several different languages, it has a feature that allows the student to pop up a DOS
window whose working directory is the directory that Notepad++ is using.
Rather than teach all that the students need to know regarding Perl in a consecutive
sequence of classes, the introduction to Perl is interleaved with other topics as students
progress through the semester. For example, after teaching simple data types, variables,
assignment statements and the use of conditional branching (i.e. the IF statement), the
topic is switched to a review of bibliographic software (MS Word, EndNote, JabRef and
Zotero). The built-in bibliographic support that exists in Word is growing and is
acceptable as an introduction to this type of software support. A paper in their field of
study is assigned at the start of the course and the students are required to find supporting
publications. The bibliographic support software in Word along with Bibword [5] and
Bibword Extender are used to organize their reference list.
JCSC 26, 4 (April 2011)
30
The section on bibliographic software is followed by a return to Perl and iteration
using the WHILE loop. The authors purposefully avoid the FOR loop construct until the
students' use of the WHILE loop becomes second nature. Science majors pick this up
quite readily, partly as a result of the college algebra prerequisite and partly because their
interests are more in line with the course content.
Next, Paint.net [13] is introduced. Paint.net is a free image and photo editing
software that runs on Windows. This program is really a stepping stone for the
introduction of colors, image resolutions, compression and file formats. The usual image
files .bmp, .png, .gif, and .jpg are covered together with their applications, relative sizing
and support for things like transparency. With support from an open source program
called unFREEz [17], the students can create and study the structure of animated gif files.
The next software studied is MS Excel. Although Excel is not free, it is almost
ubiquitous and deserves our attention. For readers who prefer, OpenOffice from Oracle
[12] is one alternative. It is the assumption, and this is confirmed by a class survey, that
the students in the class already know the basics of Excel. Functions, graphing and data
movement are the main focus with little time spent on the interface. Rapid data loading,
such as moving a multiple column text file into a table, is a major focus. To maintain
proficiency in Perl, sets of ordered pairs can be created via Perl and then graphed in
Excel. Dynamic table creation is also covered.
The next topic of discussion is a study of Perl regular expressions. Regular
expressions are found in many languages and are extremely useful for extracting data
from large files and reorganizing files as well as searching for patterns in long DNA
strings. The usual string patterns, character class patterns, multipliers, and alternation
operators are covered in this section. To demonstrate the power of this tool, the students
are directed to the National Center for Biotechnology Information (NCBI) web site [10]
where the Homo sapiens neanderthalensis complete mitochondrial genome can be
downloaded in Genbank format. This format is a text file that contains a complete
annotation of the genome. These files are formatted in a very precise way and as a result
are full of opportunities for data extraction. Perl programs can be written to extract
particular genes, protein translations for individual genes, or the entire genome. The
following partial Genbank file was extracted from the above Neanderthal file.
1 gatcacaggt ctatcaccct attaaccact cacgggagct ctccatgcat ttggtatttt
61 cgtctggggg gtgtgcacgc gatagcattg cgagacgctg gagccggagc accctatgtc
121 gcagtatctg tctttgattc ctgcctcatt ctattattta tcgcacctac gttcaatatt
181 acagacgagc atacttacta aagtgtgtta attaattaat gcttgtagga cataataata
Figure 1. Partial genetic code of Homo sapien neanderthalensis.
A very simple Perl program can then be written to remove the numbers and spaces,
resulting in a single string containing only DNA. Subsequent processing of this DNA
string is now considerably simplified. Figure 2 demonstrates a simple program that
dumps the genes ranges of a Genbank file.
CCSC: South Central Conference
31
# This program reads a Genbank file and prints out the genes.
open(FILE,"Neanderthal.txt");
while($line = <FILE>){
if($line =~ /^\s+gene\s+(\d+..\d+|complement\(\d+..\d+\))/){print $line;}
}
Figure 2. Code to convert to single-string DNA.
The program illustrated in Figure 2 processes the file printing all lines adhering to
one of the following formats. All other lines are skipped.
gene 5507..5574
gene complement(5582..5650)
The students quickly become aware of the text processing power of Perl when
married with regular expressions. Switching from Neanderthals to Mammoths to the
smallest known free-living bacterium, Mycoplasma genitalium, has a tendency to spice
up the project environment and make it more interesting to the students.
The power of Perl is of course quite limited without using arrays. The discussion
of arrays is intentionally avoided to this point to make it easier for the science students
to become accustomed to the programming process. Perl arrays, together with support
functions such as split( ), are introduced and used to support a variety of data
manipulation projects. There are many simple text processing problems that can be used
to make it clear to the student why Perl arrays are useful. The following text reformatting
problem is one such case.
Problem: Dr. Rattus has a class of 25 students he sent out in the field to collect data
on rat species counts in different counties. He gave the specification for typing this
information into an ASCII text file. The specification required that each species be
entered using the format in the following order, one species per line.
genus species population location
After all 25 students did this, it was discovered that the format was incorrect for the
database program being used. This program was designed to read text files in the
format
species genus : location : population
Note that the genus species is reversed and that colons are required instead of spaces
in the later two locations. Mean Dr. Rattus, not being very computer literate, told
the class to retype the 500+ line files. Rather than follow this advice, student Mr.
Awesome, having had this class, decided to write a short Perl program that would
do the conversion for them. He gave the program to the other students in the class
and became a hero. Write this program.
open(FILE,"data.txt")|| die "Sorry, I could open the file data.txt";
# for input
open(OUT,">newformat.txt");# for output
while($line=<FILE>){#<--- Remember that this reads one line at a time.
@list=split(/\s+/,$line);
print OUT "$list[1] $list[0] : $list[3] : $list[2]\n";
print "$list[1] $list[0] : $list[3] : $list[2]\n";
}
Figure 3. Text manipulation program written in Perl
JCSC 26, 4 (April 2011)
32
Figure Figure 4. RasMOL Example.
After discussing this problem, the program in Figure 3 is discussed. The application
uses the split( ) function to extract the four white-space-separated words on each line and
prints them out in the required format. This is another example of using computers to do
things fast. It has been noticed that if the faculty constantly press this concept, e.g. doing
it FAST, the students get on board quite quickly.
As the students continue to work in Perl,
PowerPoint is discussed. Since students are
already familiar with this application emphasis is
placed on embedding images, animated GIF's,
animations, inserting application/web links, videos
and smart art. This normally leads to further
discussion of mpg, avi, and mov video file types.
The desire to embed molecular animations can
also be used to investigate one of the many
molecular file formats such as the well known
PDB and MOL file formats. There are many
(free) applications on the Internet that can be used
to render and rotate these files. The faculty has
found RasMol [14], shown in Figure 4, works well
for this purpose. These programs can be used
with PowerPoint enhance presentations. A side
effect of using the MDL MOL file format is that it is simple and easy to understand. A
complete specification can be found at Symyx Technologies, Inc. [4] The Benzene MOL
file is illustrated in Figure 5 to demonstrate this.
Benzene
ACD/Labs0812062058
6 6 0 0 0 0 0 0 0 0 1 V2000
1.9050 -0.7932 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
1.9050 -2.1232 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
0.7531 -0.1282 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
0.7531 -2.7882 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
-0.3987 -0.7932 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
-0.3987 -2.1232 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
2 1 1 0 0 0 0
3 1 2 0 0 0 0
4 2 2 0 0 0 0
5 3 1 0 0 0 0
Figure 5. Benzene MOL file.
The first line in Figure 5 is a header that indicates there are 6 atoms, all carbon, that
make up this molecule. This is followed by the 3D location of these carbon atoms. The
subsequent lines specify the molecular connectivity; for example, the second line (the one
in bold) states that atom 3 is connected to atom 1 using a double bond (2).
Working with this file format continues one of the course's underlying themes, that
much of a person's work in computing is centered on file formats. It is our contention
that the mystery behind these file types can be erased by studying just a few of them. File
type knowledge typically stops at knowing just the extension, thus limiting a student's
potential to use and process the file.
CCSC: South Central Conference
33
One of the major areas of bioscience research comes under the term systems
biology, a field that focuses on complex interactions that occur within biological systems.
Much of the research in this area is supported by a variety of simulations of these
systems. Starlogo [15], an application developed at the MIT Media Lab, was chosen to
support the study of biological interaction. This system allows the user to program
systems that simulate, swarm intelligence, foraging behavior [8], flocking and other
collective behaviors observed in animal populations. Although this package is somewhat
old (early nineties) it is well suited for exploring distributed decentralized systems. In
addition, simulations are programmed using one of the first object oriented programming
languages. The language is quite simple, educational and easy to learn, giving biology
and chemistry majors another programming perspective. Using this environment projects
that simulate ants foraging, slime growing and predator/prey simulations are easy to
construct. As the program runs dynamic graphs can be displayed that show the state of
the simulation.
CONCLUSION
This course has been very exciting to develop and teach and is currently being
taught for the fourth time. The students regularly select Computing for Science Majors
over the standard computer applications course and end of semester student reviews
remain quite positive. The faculty is continuing the search for the optimal list of topics
taught since there are many more than can fit in this semester long course. There is a
desire to include curve fitting software, statistical packages and other type of software but
time constraints, as usual, force the faculty to develop a careful balance between the
number of topics discussed and the depth that they are taught. We have also found that
getting the natural sciences faculty on board from the start greatly facilitates the courses
success.
REFERENCES
[1] Berman, J. J. (2007). Perl Programming for Medicine and Biology. Jones and
Bartlett.
[2] Brewster, R. (n.d.). paint.net. Retrieved from paint.net: www.paint.net
[3] C. Hartley. (n.d.). Pictographic Maya Calendar Converter. (Ernest B. Wright
Observatory) Retrieved from
http://users.hartwick.edu/hartleyc/mayacalendar/mayacalendar.html
[4] ctfile. (n.d.). (Symyx) Retrieved from Symyx:
http://www.symyx.com/downloads/public/ctfile/ctfile.jsp
[5] Dhondt, Y. (n.d.). BibWord. Retrieved from BibWord: Microsoft Word Citation
adn
[6] Bibliography Styles: http://bibword.codeplex.com/
[7] Kimball, J. (2008). Reversing the course: A new sequence for teaching Microsoft
Office. The Journal of Computing Sciences in Colleges , 23 (4), 168-172.
JCSC 26, 4 (April 2011)
34
[8] Liu, B., Zhang, R., & Shi, C. (2007). Analysis of Foraging Behavior in Ant
Swarms Based on StarLogo Simulation. International Conference on Robatics
and Biomimetics, (pp. 810-814). Sanya, China.
[9] Malmberg, N. J. (n.d.). Computing for Science Majors I Syllabus. (Oklahoma
Baptist Univ.) Retrieved 10 12, 2010, from
http://www.okbu.net/chemistry/malmberg/gnsc1001/gnsc1001f2008.pdf
[10] NCBI. (n.d.). Retrieved from National Center for Biotechnology Information:
http://www.ncbi.nlm.nih.gov/
[11] Open Educational Resources. (n.d.). Retrieved 10 15, 2010, from The William
and Flora Hewlett Foundation:
http://www.hewlett.org/programs/education-program/open-educational-resources
[12] OpenOffice. (n.d.). (ORACLE) Retrieved from OpenOffice:
http://www.openoffice.org/
[13] Paint.net. (n.d.). Retrieved from Paint.net: http://www.getpaint.net/
[14] RasMol and OpenRasMol. (n.d.). Retrieved from http://www.openrasmol.org/
[15] StarLogo. (n.d.). Retrieved from Starlogo on the web:
http://education.mit.edu/starlogo/
[16] Tisdall, J. (2001). Beginning Perl for Bioinformatics. O'Reilly Media.
[17] unFREEz. (n.d.). Retrieved from WhitSoft: http://www.whitsoftdev.com/unfreez/
___________________________________________
* Copyright © 2011 by the Consortium for Computing Sciences in Colleges. Permission to copy
without fee all or part of this material is granted provided that the copies are not made or
distributed for direct commercial advantage, the CCSC copyright notice and the title of the
publication and its date appear, and notice is given that copying is by permission of the
Consortium for Computing Sciences in Colleges. To copy otherwise, or to republish, requires a
fee and/or specific permission.
35
A COMPARISON OF COMPACT ROBOTICS PLATFORMS
FOR MODEL TEACHING *
Anne-Marie Eubanks, Robert G. Strader, and Deborah L. Dunn
Computer Science Department, Stephen F. Austin State University
Box 13063, Nacogdoches, TX, (936) 468-2508
eubanksanne@sfasu.edu, rstrader@sfasu.edu, and ddunn@sfasu.edu
ABSTRACT
Robots motivate interest in the presentation of STEM field topics and provide
a vehicle for model teaching. The four robots recognized in this paper have
been selected for their price and applicability to model teaching. An overview
of each kit is presented and essential topics that the tutorials teach are
addressed. A comparison is provided evaluating the appropriateness of each
platform.
INTRODUCTION
Robots illustrate topics from the fields of science, technology, engineering, and
mathematics (STEM) and by their nature provide hands-on learning. Therefore, robots
are a tool in many proposals addressing the issue of lack of student interest in the STEM
fields. Robots provide an enjoyable way to address many challenging concepts that
typically discourage or hinder student interests. The student experiences basic physics
concepts hands-on when the robot loses its balance because of an imbalance in its center
of gravity or when it cannot lift an object because the gear wheel ratio is incorrect for the
object's size. Lessons on frequency now become exciting because students see how the
radio controller in their hands controls the movements of their latest handiwork.
Coordinates on a plane come to life when students have to program their robots to
maneuver through a maze. These are just a few ways that robots bring STEM concepts
to life.
While many robots on the market are available, this paper addresses four moderately
priced platforms: Boe-bot (www.parallax.com/tabid/411/Default.aspx) and Scribbler
(www.parallax.com/tabid/455/Default.aspx) from Parallax, Inc., Lego's Mindstorms NXT
JCSC 26, 4 (April 2011)
36
2.0 (mindstorms.lego.com/en-us/products/default.aspx), and VEX from Innovation One,
Inc (vex.innovationfirst.com/). These four robots are fun to work with and address areas
of STEM. Each of these robots comes in a kit that is readily available for purchase on the
Web. Each has a drag and drop GUI environment with icons that abstract hard to grasp
concepts in computer languages so that the learning can be enjoyable and objectives can
be achieved, building skills that can later be used in conjunction with more advanced
textual environments.
Boe-bot's GUI Bot has the option of a beginner or an advanced mode, where the
text-based environment is the basic stamp editor. Boe-bot's manual explains concepts of
the hardware, memory organization, computer language concepts, programming
concepts, order of operations (both mathematical and logical), and electrical concepts.
Boe-bot, in general, focuses on electrical concepts (circuits) and navigation (maneuvers,
following light and a line, and object detection) [1, 2]. Parallax offers power point slides
to go hand-in-hand with the student workbook to assist the student in learning. Boe-bot
sensors are electrical circuits, whiskers, photoresistors, and IR detectors and filters. Its
focus to the STEM field topics is on science, technology, and mathematics. Parallax's
website (www.parallax.com) hosts projects of the week, object of the week, design
contests, plus Design Contests where contestants win money to further motivate users
(www.parallax.com/tabid/271/Default.aspx).
Scribbler's GUI environment is the Scribbler Program Maker and the text editors are
the basic stamp editor and IDLE (Python). The companion textbook, Learning Computing
with Robots [4], introduces language concepts (variables, loops, if…then), senses
(reaction to touch, to light, visual presence and sound), and graphics (pictures and
drawings). The fluke camera [3] assists with graphics. While there are no parts to build
different robots, it is still applicable to STEM topic areas of technology (computer skills)
and mathematics (coordinate planes).
NXT is programmable through Lego Mindstorms NXT and any C editor. There are
four basic robots provided in the software to build, starting with a vehicle, and ending
with a humanoid. Advanced students can build on these basic blocks to create their own
robots. NXT employs sensors for touch, light, sound, and auditory. Lego's website
(mindstorms.lego.com/en-us/community/default.aspx) posts challenges for users; one
recent challenge (deadline September 30, 2010) was to build robotic pets the award
categories were in domestic, exotic, most creative, and most interactive pets. Past
challenges included Snap Bots and Arcade Games. Lego posts the winners, allowing
inspiration and future creativity to continue.
NXT is applicable to the fields of STEM through the building of the robot (taking
into account gravity and mechanics), the purpose of the robot (how a student can build
a structure to facilitate what it needs to do), and technological skills required (what
sensors will be needed, how those sensors will react to a stimulus, and how a computer
achieves that). It also teaches basic computer science skills through programs
(programming concepts of loops and conditions) and problem solving skills.
VEX's environments are easyC and a text editor for C. The Inventor's Guide [5],
VEX's manual, provides the information to build Squarebot. Each chapter includes
subsections of "concepts to understand" and "subsystems interfaces." Some of the
concepts covered include physics concepts (the center of gravity and stability), motor
CCSC: South Central Conference
37
technology (motors and speed vs. torque), and electrical circuits (dealing with batteries
and triggers). The basic kit includes bumper switches and limit switches.
Innovation One, Inc. introduces challenges for the classroom, such as soccer, and
beginning in 2007, created an all-star challenge
( robotevents.com/robot-competitions/vex-robotics-competition) for all ages (elementary
through university) and all levels (beginners to advanced). This year's all-star challenge
is the Clean Sweep games with the winners advancing to the 2010 VEX Robotics
Competition World Championship. On November 19, 2009, Innovation One announced
a partnership with Technology Student Association for competitions applicable in
learning about STEM.
MODEL TEACHING
One of the most effective and used teaching styles is the Madeline Hunter Direct
Instruction Model: input, model (present, explain, student application), and check for
student understanding [6]. Learning with robots goes hand and hand with this technique.
The instructor or manual presents and explains the concept(s), the student builds a robot,
and uses the robot to perform and complete the goal. Each of these robots is grounded in
this philosophy of presenting, explaining, and applying.
These four robots make learning enjoyable. Difficult concepts from computer
technology, mathematics, physics, and electronics are abstracted so as not to impede
interest and the quest for knowledge. Each lesson in the manuals or tutorials has a
concept to learn or goal to attain, in which the student creates the robot, and then has the
robot perform the appropriate action to achieve the goal.
Boe-bot has lessons with transistors and switches to demonstrate the concepts of
electricity, navigation to learn about plane coordinates, and sensors for interaction to
illustrate concept of cause and effect. There are a few lessons that do not work out as
shown in the book, but this adds to "life lessons" by showing imperfections as well as
successful projects. Circuits come alive when the student inserts resistors into the board,
luring the student into learning about the bands that identify it. It is humorous to watch
Boe-bot wandering around with whiskers detecting objects to avoid. Lessons of
electronics and science are translated into fun with the aid of a robot while still imparting
critical knowledge. By allowing students to manipulate memory, address memory
mapping is explained and illustrated as no textbook can. Each chapter explains the lesson,
the student builds the model, and the robot performs the task.
Scribbler's lessons include navigation, mathematics, language syntax and semantics,
using the C library, graphics, and artificial intelligence such as the subsumption
architecture, and a game playing application. Since Scribbler has the option to hold a
marker, challenges of navigation become more concrete when the student sees the trail
or shape created during the lesson. Learning syntax and semantics is more enjoyable
when the student can directly see the influence on Scribbler's performance. Manipulating
graphics becomes more engaging because the student creates his or her own image to
manipulate. The concept of subsumption materializes as the student regulates the
behavioral controls of Scribbler. Learning Computing with Robots [4] provides lessons
that explain sensors and supply an example that will activate the desired reaction,
JCSC 26, 4 (April 2011)
38
allowing the student to have direct control over the situation, as Scribbler performs the
action.
NXT provides four basic robots to build in the Robo Center: TriBot, RoboArm,
Spike, and Alpha Rex. Embedded in these tutorials is model teaching; each tutorial
explains the goals, provides programs to run, and incorporates testing at each stage
allowing the student to see the lesson in action. The TriBot is a vehicle built in six parts
with each part having a program and test phase. This simple approach teaches the student
to build, program, and test in increments, an important discipline to learn. Spike is fun;
Spike is a robot built to replicate the physical body and behavior of a scorpion,
demonstrating sensor reaction through user interaction. Alpha Rex is a humanoid robot
that the student can make walk and dance.
Vex Inventor's Guide [5] builds Squarebot, which the student then interacts with,
learning concepts of physics, motion, electronics, logic, and program language skills. The
"concepts to understand," subsection of each chapter of the guide has diagrams and
information points to master. For instance, the motion chapter has concepts instructing
the difference between the motors and servomotors, the difference between speed and
torque and how gears play a role in this interaction, pulleys, how wheel size affects
acceleration and speed, what friction does to the robot, the advantages and disadvantages
of tire treads and tire sizes, and the affects of axels. Squarebot models these concepts
allowing the student to observe firsthand the application of STEM concepts.
Table 1 provides a comparative summary of the four robots described in this paper.
Each robot has a GUI interface and a text editor interface. The table presents information
regarding the manuals provided, any available tutorials, the concepts and senses
addressed, organized challenges offered, and the price for each robot.
Boebot Scribbler NXT VEX
GUI
Interface GUI Bot Scribbler Program
Maker Lego Mindstorms EasyC
Text Editor
Interface Basic Stamp Editor Myro any C text editor EasyC
Manual Robotics! Student
Workbook
Plus PowerPoints
Basic Stamp manual
Learning Computing
with Robots Robo Center Inventor’s Guide
Tutorials
for
Introduction
Six Chapters Twelve Chapters Tribot
RoboArm
Spike
Alpha Rex
Seven Sections
Six Programs
CCSC: South Central Conference
39
Senses Circuits, Whiskers,
Photoresisters,
IR
IR, Obstacle,
Light
Touch Sensor,
Sound Sensor,
Light Sensor,
Ultrasonic Sensor
Bumper Switch,
Limit Switch
Concepts Problem Solving,
Computer
Languages,
Mathematics,
Maneuvers,
Electrical, Sensors
Problem Solving,
Computer Skills and
Languages,
Graphics, Plane
Coordinates, Sensors,
Physics
Problem Solving,
Computer Skills and
Languages,
Maneuvers, Sensors,
Physics
Problem Solving,
Computer Skills and
Languages,
Maneuvers, Sensors
Electrical, Physics
STEM Technology and
Science Technology and
Mathematics Science, Technology,
Engineering, and
Mathematics
Science, Technology,
Engineering,
Mathematics
Challenges Project of the Week,
Object of the Week,
Design Contests
N/A Individual or Team
Creations All-Star Challenge
(Team Creations)
Price
(as of
10/20/10)
Boe-Bot Robot Kit
$159.99 The Scribbler Robot
$99.99 Mindstorms NXT 2.0
$279.99 Autonomous Control
Starter Bundle
starting at $319.99
Table 1: Comparison Table
COMPARISON EVALUATION
Each of these four robotics systems have both strong and weak points and focus on
some, but not all STEM concepts. All four robots introduce navigation, but the
navigation systems overall is unreliable. These robots cannot repeatedly perform a
function perfectly or even perform some functions well; while this causes some student
frustration, it also provides real-life situations that can lead to a problems solving
situation.
While Boe-bot focuses on electronics, memory, and navigation, its strength lies in
the fact that most of the programs focus on how memory is stored and how it can be
accessed. Boe-bot might not be the best introduction to computer science because of the
limited applications presented.
Kumar's Learning Computing with Robots allows the student to learn basic and
advanced computer concepts, as well as problem-solving skills through Scribbler. In this
way, Scribbler is a great introduction robot to computer science/programming but it is
limited in its growth and conceptual coverage.
NXT is also a good introducing system; its flexible platform can be tailored to
almost any problem. NXT has weak mechanical integrity that can also provide a
problem-solving situation while creating cute, fun robots to capture and hold interest.
Vex's Inventor Guide provides a general introductory platform. Its main two
advantages are: 1) the GUI interface provides the written language to the right of the
picture icons, allowing the student to learn a language without being bogged down by the
syntax while learning; and 2) it has a great stable platform that can be expanded upon.
These two advantages make Vex the best kit for teaching and building the STEM fields.
CONCLUSION
This paper has presented four robotic platforms and compared the capabilities and
JCSC 26, 4 (April 2011)
40
educational materials supplied with each kit. Each robot kit emphasizes different aspects
of STEM fields and concepts to learn. Boe-bot is in the lower price range and provides
introductory lessons to electronics, navigation, logic, and programming. Scribbler is very
affordable and lets the student interact with several types of sensors, graphics, and basic
artificial intelligence. It is an excellent introductory robot. The NXT platform, while in
a higher price range, is a worthwhile investment; its basic nature allows students to build
and program whatever they can imagine. Lego hosts competitions for NXT users to
participate in, fostering imaginative ideas and adding to the excitement. The Vex is the
highest priced of the four but is still very competitive for what it has to offer. The
concepts introduced in the various guides provide great building blocks for STEM topics.
Robots creatively involve the student in learning critical concepts for his or her future
endeavors. Each robot kit supports the model teaching approach.
REFERENCES
[1] Robotics! Student workbook; Version1.5. (2001). Parallax, Inc.
[2] Basic Stamp Manual Version 2.0. (2000). Parallax, Inc.
[3] IPRE Fluke upgrade module.
http://wiki.roboteducation.org/wiki/images/6/61/Fluke_Quikstart_Guide.pdf
[4] Kumar, D. (2008). Learning Computing with Robots. Institute for Personal
Robots in Education. www.roboteducation.org
[5] Vex Inventor's Guide. (2004). China: Innovation One, Inc.
[6] The Madeline Hunter Direct Instruction Model.
http://www.humboldt.edu/~tha1/hunter-eei.html
___________________________________________
* Copyright © 2011 by the Consortium for Computing Sciences in Colleges. Permission to copy
without fee all or part of this material is granted provided that the copies are not made or
distributed for direct commercial advantage, the CCSC copyright notice and the title of the
publication and its date appear, and notice is given that copying is by permission of the
Consortium for Computing Sciences in Colleges. To copy otherwise, or to republish, requires a
fee and/or specific permission.
41
EVALUATING STUDENTS' SATISFACTION USING TWO SAP
ERP USER INTERFACES*
John L. Wilson, D.B.A., Ed Lindoo, Ph.D.
College for Professional Studies, Regis University
3333 Regis Blvd.
Denver, CO 80221-1099
920-869-3446
jwilson@regis.edu
ABSTRACT
Companies worldwide use Enterprise Resource Planning (ERP) systems to
effectively manage business processes across organizational departments and
information among global subsidiaries. Colleges have incorporated ERP
systems into their business curricula to provide students with a better
understanding of business process theory and information sharing concepts.
In this paper, we discuss students' satisfaction with using two end-user
interfaces for SAP's ERP software in an online/distance education classroom.
The first interface was a front-end graphical user interface (GUI) with a
client/server architecture using online transaction processing (OLTP) and an
Oracle database management system. The second interface was completely
simulated using a JAVA-based program running in a browser. From a
computer science viewpoint, we were interested in better understanding the
human-computer interaction of students with the two different interfaces.
Specifically, we wanted to determine which interface best secured students'
satisfaction as users, while learning business process theory and information
sharing concepts. Reasons for students' dissatisfaction with using SAP's GUI,
and benefits from using a completely simulated environment, are discussed.
Other colleges considering implementing SAP's ERP software into their
online/distance education curricula may benefit from "lessons learned" from
this human-computer interaction experience.
JCSC 26, 4 (April 2011)
42
INTRODUCTION
At a U.S. school of business, faculty realized the management information systems
(MIS) course needed to be revamped in their online/distance education curriculum. At
the same time, faculty became aware of an increasing global economy driving businesses
to adopt enterprise resource planning (ERP) systems. They understood companies in their
geographic area were requiring prospective employees to have an understanding of the
various roles an ERP system could play in a company to streamline business processes,
improve communication among departments, and facilitate sharing of information among
global subsidiaries and corporate headquarters. SAP is the world's largest and most
well-known vendor of ERP software. SAP created the University Alliances (UA) program
to have their SAP R/3 system included in colleges curricula. The UA program provides
member colleges access to a full suite of SAP R/3 application modules, "hands on"
student training exercises, data center support, seminars and educational resource
materials. With additional constructive feedback from students, business school faculty
encouraged revision of their online/distance education MIS course to include SAP ERP,
as many other business schools have done [1, 2, 3, 4, 6]. Recently, published guidelines
for information systems curricula have also proposed an understanding of the theoretical
and practical issues related to business process management and enterprise systems, with
the inclusion of an ERP system [5].
FIRST IMPLEMENTATION – SAP R/3 & UA PROGRAM
When the first revised MIS classes started, students began installing a 600MB GUI
on their PCs. The installations were most arduous as many unforeseen problems occurred.
Not anticipated were all the different types of PCs and versions of systems software
students used. The 600 MB GUI file was reduced to 164 MB – one-fourth the original
size, after discovering a great deal of unnecessary information within the installation file.
However, some students were still unable to get the GUI to work and were given a
different Java version. Some students had Macintosh (Mac) computers. A Mac version
of the GUI was provided for MAC users, as they could not access the Windows GUI. As
described above, the installation of SAP R/3 GUI software failed miserably, partially
because the SAP R/3 GUI required a major install on each student's PC. With a multitude
of operating systems, patch levels, etc.; it just was not feasible to expect students to do
this without a lot of hand-holding. Considering these factors, four different versions of
the GUI were implemented on a central server within the school of business, and links
to these were provided through the online/distance education classroom. Detailed
installation instructions with screen snapshots were also developed and provided for each
GUI version.
Using the GUI client installed on their PCs, students connected through the Internet
to SAP R/3 software performing online transaction processing (OLTP). The SAP R/3
software, with an Oracle database for storage, resided on servers in UCC's datacenter in
Milwaukee, Wisconsin. While access through the Internet was quite consistent, the UCC
servers were not always available, which hindered students' attempts to complete their
exercises before assignment deadlines (Sunday night due date, for example). Because the
UA did not provide an SAP help desk, help for instructors was limited, which made
supporting students a challenge. Putting an "SAP Help" link on the classroom's
CCSC: South Central Conference
43
discussion board was found to be most fruitful. Students were told to use the link to post
questions. Fellow students would assist with responses. This worked because many
students experienced the same problems and were able to help other students. The school
of business's Help Desk did agree to reset student passwords. This proved quite valuable.
Not only did students forget their own passwords, but it seemed that some students would
try logging into the wrong account and, after three failed attempts, lock another student's
password. For example, a student was assigned to login as FSUSER-22 but accidently
typed FSUSER-23. After three failed attempts, they locked out user FSUSER-23.
"Hands on" student training exercises were based on the fictitious Fitter Snackers
(FS) Company, which was also described in the accompanying textbook [8]. Using the
SAP GUI, students were required to complete the step-by-step instructions for FS
exercises, often some 60+ pages long for an exercise. It was quite easy for a student to
miss a step, or even key in the wrong data. Once a step was missed, or wrong data
entered, the average user could not go back and make changes. Students knew what
results they were supposed to achieve (as provided in the step-by-step instructions). When
they couldn't get these results, they became quite frustrated, and their emails became
quite demanding. Students were willing to do the work, and to do it over and over, to get
it right; however, datasets could not be reset. There really was no way to "fix" a mistake.
Resetting datasets was a frequent request by frustrated students, and one way to
accommodate this was to give a student an unused logon. This led to additional
administrative work – keeping track of logons that had been switched.
The inability to keep students from contaminating another user's dataset was another
issue with the SAP ERP system. For example, FSUSER-22 could login as the appropriate
student and then use dataset 23, in addition to any other dataset from 00 to 99. There was
no apparent way to prevent this from happening. Even though students were advised of
the issue and the inappropriateness of using someone else's dataset, it did continue. Of
course, this corrupted another student's dataset, leading only to more student frustration.
As a part of their final grade included FS exercise scores, students' complaints
became the norm. They directed their complaints to the lead MIS faculty member, the
Help Desk and others in the administrative section of the school of business. Some very
frustrated students directly approached the Office of the Dean to complain about the SAP
R/3 graphical user interface and FS exercises. With little support from the Help-Desk, the
start of every subsequent semester was hectic.
SECOND IMPLEMENTATION – SAP SIMULATOR
Something had to be done to rectify all the frustrations and very verbal complaints
from students. As a result, the business school opted to move away from using the OLTP
SAP R/3 system and GUI, student training exercises, and the UA Program in general.
Instead, we decided to use an SAP simulator created by Simha R. Magal and Jeffrey
Word [7] in partnership with SAP.
The simulator is a Java-based program running in a browser. It is extremely easy to
use. On every screen from the start of the simulator to the end, the student is led from
field to field, and screen to screen. The simulator instructs the student on what to do and
why, and even prompts with a red highlight on what fields or instruction set they need to
click to work their way through the process flow. For students, the simulator Website is
JCSC 26, 4 (April 2011)
44
quite straightforward. Students self-register on the Website, and then perform the
assigned fictitious company Super Skateboard Builders (SSB) exercises – once with the
simulator performing all the steps, and then three times on their own with the simulator
guiding them through the processes. A quiz measures students' comprehension of process
flow and comprehension of other information in the accompanying SSB simulation
exercise. A student's progress is recorded in their grade book. All of this grading
information can easily be downloaded to an Excel spreadsheet to perform calculations for
determining students' overall weighted grades for the simulations and quizzes.
The first step in getting started using the simulator was to contact WileyPLUS (the
publisher of the accompanying textbook) and obtain instructor access to their Website to
setup a simulator for each MIS class. Setup was straightforward and very intuitive. The
instructor creates a new class for each semester by assigning five SSB simulation
exercises and five quizzes to specific weeks of the course. After setting up the simulator
for a class, an instructor automatically has a URL to provide to students to access the
simulator Website. If students purchased a new accompanying textbook [7], they were
provided with an access code. However, if they purchased a used textbook, they had to
purchase an access code during registration on the WileyPLUS Website, with a current
cost of $8.00.
Once a student has access to the WileyPLUS Website, they self-register to class,
which means there is no involvement by the instructor in the students' registration
process. Throughout the course, students complete pre-defined SSB simulation exercises
assigned on a week-by-week basis. The WileyPLUS Website has five SSB training
exercises and five related quizzes – one for each simulation exercise. The SAP
simulation exercises are automatically graded as a percentage of completion. That is, if
a student starts a simulator exercise and completes 75% of it, then 75 is their grade. Most
students complete the simulator exercises and end up with 100 on each of five exercises.
The quizzes on the other hand can be a bit challenging. Some only have four questions,
so if a student misses two, they drop their score to 50% for that quiz. Students were
encouraged to run a simulator exercise over and over, and to take detail notes about the
exercise until they became very familiar and comfortable with the process and
information flow. That way, they better understand how SAP software can be used in a
business to improve process flow and enhance communication of information among
departments. They are also better prepared to answer quiz questions, which are designed
to measure students learning during the simulation exercises.
DISCUSSION
There are many ways to obtain feedback from users. While we did not set out to
solicit feedback, by default we found this statement to be true. Frustrated students sent
on average over 100 negative emails per semester to instructors expressing their
dissatisfaction with the SAP R/3 installation and accompanying instructions, log on
procedures, using the GUI, or the FS exercises and instructions. In contrast, students sent
less than 20 negative emails to instructors per semester about WileyPLUS registration,
using the simulator, or completing SSB exercises and quizzes. The following discussion
attempts to explain these differences in students' satisfaction levels.
CCSC: South Central Conference
45
To use the SAP R/3 GUI, students are required to understand an abstract language
in which (1) master data, (2) organization structure, (3) business rules, and (4) actions of
the system are represented with a language of symbols, signs and tokens. For example,
master data requires knowing how to use purchasing and cost element groups; business
rules use grammar associated with automatic postings and document numbering; actions
of the system include converting a planned order to a production order, or checking stock
status [4]. The complexity of the GUI's abstract language seemed to frustrate students.
In contrast to the GUI, the simulator "held the hands" of students as it guided them
through the use of the SAP system. Students appeared to be more comfortable using the
simulator and seemed less frustrated using it to perform exercises on their own.
There were other differences in complexity between the two sets of exercises that
may have caused students to be more dissatisfied with the FS exercises. The instructions
for FS exercises (60+ pages for some) were more extensive than the SSB simulation
exercises. The FS exercises included more transactions, and processing in other business
functions, such as capital expenditure budgeting and human resources, than the SSB
simulation exercises. The online/distance education MIS class was delivered through
either WebCT or Blackboard classrooms, which meant problem solving took place
through e-mails or postings on discussion boards. Delays in solving students' problems
may have increased frustration and dissatisfaction with either of the two sets of exercises.
Students were not in a lab with an instructor present to answer their questions right away.
When online students encountered a problem and could not proceed in an exercise, they
needed to wait for a response from their instructor or other classmates before they could
continue with the exercise. The relative difference in numbers of problems reported from
students ranged from exorbitant with the Fitter Snackers (FS) exercises to minimal with
the SSB simulation exercises. The delay in solving students' problems in an e-learning
environment could have partially contributed to the increased dissatisfaction from
students using the GUI in SAP R/3.
The similarity between the Fitter Snackers (FS) exercises and the SSB simulation
exercises was primarily with the two accompanying textbooks [7, 8]. The authors
explained how the two fictitious companies (FA and SSB) accomplished basic business
functions manually prior to adopting ERP systems. By describing how ERP systems were
used in the exercises, the authors explained how processing was improved by capturing
data once at the source in a central database, and how the SAP ERP system allowed
departments to share data to improve communication among departments. By reading the
accompanying textbooks, students performing either set of exercises should have had
sufficient background information to understand the bigger picture of processing in the
fictitious companies; that is, before and after using an ERP system. Neither of the
textbooks' descriptions should have caused students to be anxious while performing the
exercises. If anything, the textbooks' descriptions should have increased students'
understanding of what the exercises were trying to accomplish and reduced anxiety
levels.
CONCLUSION AND RECOMMENDATIONS
We described how two different interfaces for SAP's ERP system were incorporated
into the business school's MIS course in an online/distance education curriculum. In
JCSC 26, 4 (April 2011)
46
reviewing the objectives for the course, we asked: "With which user interface were
students most satisfied and learned best? Using a client-based GUI to access an SAP R/3
OLTP system with accompanying database, or a JAVA-based simulation of SAP running
in a Web browser?" We found students became most agitated when problems occurred
logging in through the GUI, accessing the correct dataset, or performing strict OLTP
instructions to complete the FS exercises. During the FS exercises, students became
easily frustrated with OLTP, using "live" application modules, and detailed step-by-step
instructions to complete transactions. Their focus was on obtaining the correct results at
the end of the step-by-step exercises, with little learning of processes and flow of
information. On the other hand, we found students who used the SAP simulator, and
performed the SSB exercises, were less frustrated and more receptive to learning how
communication, processing, and information can successfully flow though a business
organization. An important lesson learned about interfaces is simulation software takes
away the need for a student to know all the details about how to perform a process
transaction. Instead, the simulator takes students through processing steps with a
concentration on explaining how ERP systems allow processing to flow across
organizational functions, insuring communications take place between involved
departments, and allowing processing to be completed efficiently, timely and with fewer
errors, as compared to manual processing. Using an SAP simulator allows students the
opportunity to understand the process flows, and appreciate the benefits that occur, when
using ERP systems in businesses.
Based on our experiences in an online classroom environment, we do not
recommend students use an ERP system with a complex GUI, such as in SAP R/3. The
complexities associated with the SAP R/3 GUI appeared to dampen students' enthusiasm
for learning and caused dissatisfaction, not only with the GUI but with an online/distance
education environment as well. Instead, we recommend students in an online/distance
education environment use a simpler, more straightforward SAP simulator interface, such
as found on the WileyPLUS Website, where students appeared to be more satisfied with
using the interface and concentrated more on learning about processing flows and
communication between business functions. We also recommend additional quantitative
studies of end-user satisfaction and learning using an SAP simulator interface, such as
found on the WileyPLUS Website.
REFERENCES
[1] Becerra-Fernandez, I., Murphy, K.E., & Simon, S.J., Integrating ERP in the
business school curriculum, Communication of the ACM, 43, (4), 39-41, 2000.
[2] Cannon, D.M., Klein, H.A., Koste, L.L. & Magal, S.R., Curriculum integration
using enterprise resource planning: An integrative case approach, Journal of
Education for Business, 93-101, 2004.
[3] Corbitt, G., Integrating SAP R/3 into a college of business curriculum: Lessons
learned, Information Technology and Management, 1, (4), 247, 2000.
[4] Davis, C.H., & Comeau, J., Enterprise integration in business education: Design
and outcomes of a capstone ERP-based undergraduate e-business management
course, Journal of Information Systems Education, 15, (3), 287-299, 2004.
CCSC: South Central Conference
47
[5] IS 2010: Curriculum guidelines for undergraduate degree programs in
information systems. Communication of the Association for Information Systems,
26, 359-428, 2010.
[6] Kirkham, K., & Seymour, L., The value of teaching using a live ERP system
with resource constraints, 2005,
http://www.commerce.uct.ac.za/informationsystems/Staff/personalpages/lseymo
ur/2007/2005-WCCE-376.pdf, 2010.
[7] Magal, S.R. & Word, J., Essentials of Business Process and Information
Systems, Hoboken, NJ: John Wiley & Sons, Inc., 2009.
[8] Monk, E. & Wagner, B., Concepts in Enterprise Resource Planning, Boston,
MA: Course Technology Cengage Learning, 2009.
___________________________________________
* Copyright © 2011 by the Consortium for Computing Sciences in Colleges. Permission to copy
without fee all or part of this material is granted provided that the copies are not made or
distributed for direct commercial advantage, the CCSC copyright notice and the title of the
publication and its date appear, and notice is given that copying is by permission of the
Consortium for Computing Sciences in Colleges. To copy otherwise, or to republish, requires a
fee and/or specific permission.
48
RIGOROUS SOFTWARE ENGINEERING USING DESIGN BY
CONTRACT*
TUTORIAL PRESENTATION
Dr. Michael Kart
St. Edward's University
Austin, TX 78704
An important aspect of any software system is correctness, that is, whether the
system does what it is supposed to do. Despite this importance, it is frequently the case
that either the software specification or code is flawed. In this session, we discuss a
theory, known as Design by Contract, which can be used to improve this situation. This
theory uses the business contract as metaphor for how software components interact with
each other based on their mutual obligations and benefits. We introduce the fundamentals
of this approach, explore how to integrate Design by Contract into the undergraduate
computer science curriculum, and explain its distinct pedagogical and software
engineering advantages.
___________________________________________
* Copyright © 2011 by the Consortium for Computing Sciences in Colleges. Permission to copy
without fee all or part of this material is granted provided that the copies are not made or
distributed for direct commercial advantage, the CCSC copyright notice and the title of the
publication and its date appear, and notice is given that copying is by permission of the
Consortium for Computing Sciences in Colleges. To copy otherwise, or to republish, requires a
fee and/or specific permission.
49
DESIGNING AN UNDERGRADUATE DATA MINING COURSE
BY MATCHING TEACHING STRATEGIES WITH STUDENT
LEARNING STYLES*
Ping Chen
Computer &Math Science Dept.
University of
Houston-Downtown
1-713-221-2764
chenp@uhd.edu
Irene Chen
Dept. of Urban Education
University of
Houston-Downtown
1-713-221-8038
cheni@uhd.edu
Rakesh Verma
Dept. of Computer
Science
University of Houston
1-713-743-3348
rmverma@cs.uh.edu
ABSTRACT
Regularly integrating emerging technology to keep the curriculum up to date
is generally expected in the rapidly evolving discipline of Computer Science.
Due to the explosion of data and information data mining has become a core
area in undergraduate computer science curriculum. In this paper, we discuss
our experience to design, teach, and improve an undergraduate data mining
course by adopting the results of an Index of Learning Styles survey to assess
student learning style. Based on the survey results, course instructor fine-tuned
the organization and presentation of course materials and activities
accordingly. Course evaluation clearly showed effectiveness of our approach.
INTRODUCTION
Due to the explosion of data and information data mining has become a core area
in computer science. Data mining techniques aim to clean, analyze, and extract interesting
patterns and knowledge from large datasets, and a course aimed at the undergraduate,
upper-level Computer Science major has become both feasible and desirable. Computing
Curricula 2001 includes an elective data mining course in undergraduate Computer
Science curriculum [1]. Regularly integrating emerging technology to keep the
curriculum up to date is generally expected in the rapidly evolving discipline of Computer
JCSC 26, 4 (April 2011)
50
Science. In 2006 we developed an undergraduate Data Mining course including lecture
notes, assignments, and projects. Based on our experience we found that one major
challenge in teaching data mining at the undergraduate level is that due to high
complexity of data structures and algorithms in data mining techniques, students often
emerge with a shaky understanding and experience enormous difficulty when dealing
with complex real-world problems. As more advanced topics are introduced into
undergraduate Computer Science curriculum, how to effectively teach them has become
more general, not a unique problem to the data mining course.
In this paper, we will discuss our experience to integrate matching teaching
strategies in response to students' learning styles in an undergraduate data mining course
offered in 2009 and 2010 at University of Houston-Downtown(UHD) and University of
Houston (UH). We believe that a successful course includes not only high-quality
up-to-date courseware but also optimized teaching strategies based on the learning
characteristics of students taking the class. Hence, at the beginning of the semesters, we
conducted rigorous learning style assessment to find out more on student learning
preferences. Based on the assessment results, course instructor fine-tuned the delivery and
organization of the newly designed course materials and activities.
This paper is organized as follows. In Section 2 we will give background
information about the Index of Learning Styles that is used in our data mining course. We
will review the data collection of the learning style survey in Section 3, and discuss how
to customize teaching strategies based on the Index of Learning Styles Survey in Section
4. Course evaluation information is presented in Section 5, and we conclude in Section
6.
LEARNING STYLE ANALYSIS
Studies have shown that accommodating a student's learning style can significantly
increase his/her academic performance [6], which is especially important when
introducing advanced topics into Computer Science education. Course adaptation need
not be taken to the extreme, but often a small modification to a basic course design can
dramatically expand its utility for students with different learning styles.
The instrument we used in the second week of the data mining class is the Index of
Learning Styles (ILS) [3], which is constructed by Drs. R. M. Felder and L. K. Silverman
(available at www.engr.ncsu.edu/learningstyles/ilsweb.html). The Index consists of
forty-four multiple-choice questions, which are used to assess preferences along four
scales or dimensions (active/reflective, sensing/intuitive, visual/verbal, and
sequential/global) of a learning style model formulated by Felder and his partners.
After answering each question, students are instructed to put "1" in the appropriate
column, either the "a" or "b" column in a table, then count the columns and write the
totals in indicated spaces. For each of the four scales or dimensions (active/ reflective,
sensing/intuitive, visual/verbal, and sequential/global), students subtract the smaller total
from the larger one, write the difference (one to eleven) and the letter ("a" or "b") for
which the total was larger on the bottom line. For example, if a student answers three "a"
and eight "b", she/he would enter "5b" in the space. If a student's score on a scale is
between 1 and 3, the student is fairly balanced on the two dimensions of that scale. A
score of 5 to 7 indicates a moderate preference for one dimension of the scale. And a
score of 9 to 11 indicates a strong preference for one dimension of the scale [3].
CCSC: South Central Conference
51
Figure 1 A Screen Capture of ILS Report
DATA COLLECTION
The undergraduate Data Mining course was offered at UHD in the Fall 2009 and
Spring 2010 semester, and at the UH in the Fall 2009 and Spring 2010 semester. 37 ILS
surveys were collected from these four course offerings at the beginning of each
semester. In the rest of this section we will present campus-by-campus survey results.
1.1 ILS Survey at UH in Spring 2009
Totally twelve students in the class filled out the Index of Learning Styles survey
(See Table 1). In the Active/Reflective dimension, eight students scored higher in the "b"
category, and only four students scored higher in the "a" category. When the two columns
are totaled, the result is "64a: 67b" which is "3b". The result shows that students are
balanced on the two dimensions with a slight skew towards the Reflective side. In the
Sensing and Intuitive dimension, an even number of the students score higher in the "b"
category and in the "a" category (six students for each). When the two columns are
totaled, the result is "59a: 72b" which equals "13b". The result shows the skew toward
the Intuitive side. As for the Visual and Verbal dimension, ten students score higher in
the "a" category and only two students score higher in the "b" category. When the two
columns are totaled, the result is "92a: 38b" which can be expressed as "54a". The result
shows the skew toward the Visual side. In regarding to the Sequential and Global
dimension, eight students score higher in the "a" category and only three students score
higher in the "b" category, with one student who shows no preference for either
dimension. When the two columns are totaled, the result is "70a: 60b" which is
equivalent to "10a". The results show the skew toward the Sequential side.
JCSC 26, 4 (April 2011)
52
Table 1 ILS Report of the UH students who took the Class in Spring 2009
The ILS survey results indicate that this group of students is slightly reflective,
intuitive, and sequential, yet highly visual.
3.2 ILS Survey at UHD in Fall 2009
Surveys collected during the following semesters were analyzed systematically as
with the survey of UH collected in Spring 2009. Detailed reports for the following
semesters similar as Table 1 is omitted due to space constraint. 6 students completed the
ILS survey, the results indicate that the UHD group of students is slightly active and
global, yet highly sensing and visual.
3.3 ILS Survey at UHD in Spring 2010
8 students took part in the survey in Spring 2010 at UHD, and the results indicate
that these students are highly sensing and visual, yet slightly active and sequential.
3.4 ILS Survey at UH in Spring 2010
At UH in Spring 2010 11 students took part in the ILS survey, the results indicate
that these students are highly sequential, sensing, and visual, yet slightly active.
3.5 Comparison of UH and UHD student groups
When it comes to the differences of the UH students and UHD students (see Table
2), the survey results indicate that there is no significant difference in the ACT/REF,
VIS/VRB and SEQ/GLO categories between the two campuses. The slight contrast is in
the SNS/INT category, with the UH group being slightly sensing, while the UHD group
highly sensing.
ACT/REF SNS/INT VIS/VRB SEQ/GLO
UHD SLIGHTlY ACT HIGHLY SNS HIGHLY VIS TIE
UH TIE SLIGHLTY SNS HIGHLY VIS SLIGHLTY SEQ
Table 2 Differences of the students from UHD and UH
CCSC: South Central Conference
53
CUSTOMIZING TEACHING STRATEGIES BASED ON ILS SURVEY
As explained by Felder and Soloman, "active learners tend to retain and understand
information best by doing something active with it; reflective learners prefer to think
about it quietly first." "sensing learners tend to like learning facts; intuitive learners often
prefer discovering possibilities and relationships" "visual learners remember best what
they see – pictures, diagrams, flow charts, timelines, films, and demonstrations; verbal
learners get more out of words – written and spoken explanations" "sequential learners
tend to gain understanding in linear steps, with each step following logically from the
previous one; global learners tend to learn in large jumps, absorbing materials almost
randomly without seeing connections, and then suddenly ‘getting it'" [4][2].
In the field of education, many studies have been done on matching learning styles
and teaching strategies, but few have been applied in teaching undergraduate Computer
Science classes such as data mining. ILS survey shed light to instructors on how this
particular population of students learns and processes information. Based on these results,
the data mining class instructors implemented strategies to accommodate students'
learning strengths and weaknesses and to enhance the levels of student involvement.
To reach the thirty seven students who are highly sequential, highly visual yet
slightly active and slightly sensing, instructors may provide interpretations or theories
that link the facts, or help students find the connections to the real world. To provide
more visuals for visual learners, instructors can provide graphic display of the materials,
prepare a concept map by listing key points, or simply color code lecture notes [8]. To
better help sequential learners, instructors should avoid skipping topics or steps. Instead,
instructors can relate new topics to contents students already know to strengthen their
thinking skills [2]. Researchers suggest instructors to encourage students to stop
periodically to review what they have read and think about possible applications. Doing
so will enable students to retain the material more effectively [7].
Instructors of sensing students should provide closely relevant interpretations or
theories or aid them in finding correlations to the real world. The data mining course
instructor made an effort to demonstrate how various data mining topics fit within the
course and tie into other courses, disciplines, and everyday experience. The objective is
not so much to assist students in drawing their own conclusions but to enlighten them
how to connect their experience to it.
In classes, the instructors extensively used graphics to illustrate concepts, visualize
algorithms, and communicate complex content. Students were trained to picture
information in their heads. When they tried to recall information later, they could
visualize the pictures to remember learned information. In addition, the data mining
techniques practiced in project comprise of simulation and modeling, as well as high
dimensional data visualization; both appeal to visual learners. In these ways, the
instructors balanced concrete information with conceptual information.
For learners to consider questions beforehand, both reflective and active learners
alike, the instructor arranged schedule in such a way to provide time in class for students
to reflect on the material and also invited guest speakers to encourage active student
involvement, so students can stop periodically to review what they have read and to think
of potential questions or applications. This will enable students to retain the material
more effectively. Instructor implemented guest speeches and collaboration projects for
JCSC 26, 4 (April 2011)
54
students, hoping to raise curiosity by first presenting examples of phenomena, followed
by the underlying theory for reflective learners. Specifically, an expert of oil and gas
production modeling was invited to give a presentation and technical guidance with
students. Afterwards, projects were implemented for students to practice data mining
techniques in the domain of petroleum engineering.
Sequential learners feel a strong requirement to understand each and every section
of the problem and are often unable to see the full picture and understanding the concepts
behind the facts until they have a complete understanding of all the pieces in order [2].
When teaching new material, the data mining instructors created an outline to help
sequential learners see how the information fits together and to help them perceive the
sequence. Instructors encouraged students to ask questions to fill in the blanks and
explained the connections when they found the lectures skipped around while covering
materials. PowerPoint slideshows can help organize concepts and present them in linear
order. If the slideshows were given for students to review after class, they could even
control the pace of their own learning. However, to strengthen sequential learners'
weakness in global thinking skills, instructors need relate each new topic to things
students already know [2]. Instructors of the data mining course provided detailed
instructions for students to work through concepts step by step, but also reminded them
that if they came across situations that they did not completely understand, they are
expected to fill the gap according to what they know and move on.
COURSE EVALUATION RESULTS
With the introduction of customized teaching strategies based on ILS analysis, at
UH overall course evaluation has been improved from 3.27 (Fall 2006) to 4.44 (on the
scale of 1 to 5) in Spring 2009 and 4.16 in Spring 2010. 20% of students (3 out of 15)
dropped out of the 2006 class, while none of the students dropped in Spring 2009 and
Spring 2010. The enrollment was stable with 14 students in Spring 2009 and 15 students
in Spring 2010. Table 3 shows the detailed course evaluation questions and results
relevant to our new improvements, which clearly indicates that our customized teaching
strategies significantly improved student learning experience and efficiency.
Question Fall 06 Spring 09 Spring 10
Assignments and projects were helpful. 2.83 4.37 4.22
I would recommend this course to fellow
students. 3.00 4.25 4.33
I become more competent because of this
course. 2.83 4.25 4.33
Course activities were well organized. 3.66 4.50 4.22
This course challenged me intellectually. 3.66 4.62 4.11
Table 3 Comparison of detailed course evaluation results at UH
It is the first time that an undergraduate Data Mining course was offered in Fall
2009 at UHD. Since only 5 students took the class evaluation in Fall 2009, we combined
CCSC: South Central Conference
55
the course evaluation of Fall 2009 and Spring 2010 to weed out volatility. The overall
combined evaluation score is 4.04. Table 4 shows the detailed course evaluation results
relevant to our new improvements, and questions used in UHD course evaluation are
different from UH's.
Question Score
The course was presented in a clear and logical manner. 4.20
Information technology is employed effectively to enrich the course
materials. 4.30
Is the course interesting and exciting? 4.13
How difficult did you find this course? 3.88
Table 4 Comparison of detailed course evaluation results at UHD
CONCLUSION
In the rapidly evolving field of computer science, how to efficiently introduce
advanced and up-to-date topics into undergraduate Computer Science curriculum has
attracted a lot of interest recently. In this paper we discuss our experience in adopting the
Index of Learning Styles survey to analyze student learning styles. Based on analysis of
survey results we redesigned an undergraduate Data Mining course and customized our
teaching strategies. Evaluation shows that our approach significantly improved student
performance and learning efficiency.
REFERENCES
[1] ACM/IEEE-CS Joint Curriculum Task Force. Computing Curricula 2001. IEEE
Computer Society and Association for Computing Machinery, 2001.
[2] Dunser, A., Jirasko, M. 2005. Interaction of Hypertext Forms and Global versus
Sequential Learning Styles. Journal of Educational Computing Research 32(1)79
- 91.
[3] Felder, R., Soloman, B. 1993. ILS Scoring Sheet. Retrieved on August 16, 2009
at http://www4.ncsu.edu/unity/lockers/ users/f/felder/public/ILSdir/ILS.pdf
[4] Felder, R., Soloman, B. 1993. Learning Styles and Strategies. on August 16,
2009 at http://www4.ncsu.edu/ unity/lockers/ users/f/felder/public/ILSdir/ILS.pdf
[5] Howard S. and Taylor, L. 2005. The Implementation guide to student learning
supports in the classroom and schoolwide: New directions for addressing barriers
to learning. Thousand Oaks, CA: Corwin Press
[6] Jackson, C. J., Hobman, E., Jimmieson, N., Martin. R. 2008. Comparing
Different Approach and Avoidance Models of Learning and Personality in the
Prediction of Work, University and Leadership Outcomes. British Journal of
Psychology, 1-30.
JCSC 26, 4 (April 2011)
56
[7] Mather, J. A., Champagne, A. 2008. Student Learning Styles/Strategies and
Professors' Expectations: Do they match? College Quarterly, 11(2), pp. 1-8.
[8] Mayer, R. E., Bove, W., Bryman, A., Mars, R., Tapangco, L. 1996. When less is
more: Meaningful learning from visual and verbal summaries of science
textbook lessons. Journal of Educational Psychology, 88, 64-73.
___________________________________________
* Copyright © 2011 by the Consortium for Computing Sciences in Colleges. Permission to copy
without fee all or part of this material is granted provided that the copies are not made or
distributed for direct commercial advantage, the CCSC copyright notice and the title of the
publication and its date appear, and notice is given that copying is by permission of the
Consortium for Computing Sciences in Colleges. To copy otherwise, or to republish, requires a
fee and/or specific permission.
57
A COURSE IN ADVANCED OPERATING SYSTEMS USING
MPI FOR PROJECTS*
Michael Scherger, Ph.D., Department of Computing Sciences, Texas A&M University
- Corpus Christi, Corpus Christi, TX, 78412, michael.scherger@tamucc.edu
ABSTRACT
This paper describes the development of a course in advanced operating
systems that uses C/C++ and the Message Passing Interface (MPI) for
programming projects. While MPI has been well accepted as a programming
library for parallel and high performance computing, its acceptance in
advanced operating systems courses is varied. By providing exposure to an
accepted standard message passing library such as MPI, students can engage
in other courses or commercial applications where data communication is
required. The structure of a course advanced operating systems and a list
learning outcomes are presented. The basics of MPI are also discussed.
Project ideas in advanced operating systems utilizing MPI are also presented.
INTRODUCTION
Instructors of courses in advanced operating systems often discuss the use and
development of distributed system software in the context of a vendor's proprietary
software, or software being developed by a research group, or simply left the problems
of using and developing distributed system software as "exercises" for the students.
Furthermore, existing operating system software simulators do not address the nature of
distributed system software. As a consequence, whatever software tools a student uses
and methods a student has learned for distributed system software would very likely, be
useless or unavailable when the student went on to additional courses or went to work in
distributed software development. Furthermore, as the hardware environment for courses
changed, it is also likely that the previously used software may not run on the new
system. This is an unfortunate state of affairs exacerbated by the already extremely
difficult problems and topics in advanced operating systems and distributed computing.
JCSC 26, 4 (April 2011)
58
With the advent of carefully designed and managed standards for programming
parallel systems, C/C++ and MPI provide instructors as educators of parallel computing,
distributed systems, and advanced operating systems the opportunity to develop
algorithms in a uniform manner [1, 4, 5, 11]. It also provides educators a means to teach
the development of portable software development and to use communication libraries
in computer science courses.
At Texas A&M University - Corpus Christi (TAMUCC) the Message Passing
Interface (MPI) is used in a course in advanced operating systems. This article first
introduces the nature and curricula of a course in advanced operating systems and then
will present the basics of MPI. Next this article will discuss why MPI was chosen with
respect to other software technologies available. Finally this article will briefly present
some project ideas using MPI in a course in advanced operating systems.
A COURSE IN ADVANCED OPERATING SYSTEMS
The advanced operating systems course at TAMUCC assumes that the graduate
student has (successfully) completed an undergraduate course in operating systems and
is familiar with C/C++ programming. Topics in the advanced operating systems course
include distributed system architectures, inter-process communication, distributed mutual
exclusion, distributed synchronization and deadlock, agreement protocols, distributed
scheduling and process management, distributed shared memory, distributed file systems,
multiprocessor system architectures and operating systems, recovery and fault tolerance
[1, 4, 5, 11].
This course has the following learning objectives:
1. Define what a distributed computing system is and analyze various distributed
computing system models.
2. Comprehend and evaluate the basic fundamentals and design issues of distributed
operating systems
3. Recognize and evaluate various types of computer networks, communication
protocols, and internetworking technologies
4. Comprehend various methods and design issues for inter-process communication
using message passing and remote procedure calls in a distributed system
5. Explain the design and implementation issues for distributed shared memory,
consistency models, replacement strategies, and thrashing
6. Explain and analyze distributed operating system principles of clock
synchronization (physical, logical, and vector), event ordering
7. Explain and analyze various algorithms for distributed mutual exclusion
8. Explain and analyze various algorithms for distributed deadlock
9. Comprehend distributed system design issues for database systems and atomic
transactions
10. Explain and analyze concurrency control, scheduling, process migration, and load
distribution in distributed operating systems
11. Research specialized design issues in real-time operating systems, clusters, high
availability systems, and disaster recovery methods
CCSC: South Central Conference
59
MPI BASICS
In the MPI programming model, a computation comprises one or more processes
that communicate by calling library routines to send and receive messages to other
processes. In most MPI implementations, a fixed set of processes is created at program
initialization, and one process is created per processor [3]. However, these processes may
execute different programs. Hence, the MPI programming model is sometimes referred
to as multiple program multiple data (MPMD) to distinguish it from the SPMD model
in which every processor executes the same program [3, 4, 5].
Because the number of processes in an MPI computation is normally fixed, is on the
mechanisms used to communicate data between processes. Processes can use
point-to-point communication operations to send a message from one named process to
another; these operations can be used to implement local and unstructured
communications [4]. A group of processes can call collective communication operations
to perform commonly used global operations such as summation and broadcast [3].
MPI's ability to probe for messages supports asynchronous communication. Probably
MPI's most important feature from a software engineering viewpoint is its support for
modular programming. A mechanism called a communicator allows the MPI
programmer to define modules that encapsulate internal communication structures.
Although MPI is a large and sometimes complex library, a wide range of distributed
algorithms can be implemented using just six of its functions. They are as follows [4]:
MPI_Init( argc, argv );
MPI_Finalize();
MPI_Comm_size( comm, size );
MPI_Comm_rank( comm, rank );
MPI_Send( buf, count, datatype, dest, tag, comm );
MPI_Recv( buf, count, datatype, source, tag, comm, status );
All but the first two calls take a communicator handle as an argument. A
communicator identifies the process group and context with respect to which the
operation is to be performed. Communicators provide a mechanism for identifying
process subsets during development of modular programs and for ensuring that messages
intended for different purposes are not confused. For now, it suffices to provide the
default value MPI_COMM_WORLD, which identifies all processes involved in a
computation. Other arguments have type integer, data type handle, or status.
The functions MPI_Init and MPI_Finalize are used to initiate and shut down an MPI
computation, respectively. MPI_Init must be called before any other MPI function and
must be called exactly once per process. No further MPI functions can be called after
MPI_Finalize. The functions MPI_Comm_size and MPI_Comm_rank determine the
number of processes in the current computation and the integer identifier assigned to the
current process, respectively. Finally, the functions MPI_Send and MPI_Recv are used
to send and receive messages respectively. A call to MPI_Send specifies that a message
containing count elements of the specified datatype starting at address buf is to be sent
to the process with identifier dest. A call to MPI_Recv attempts to receive a message that
has an envelope corresponding to the specified tag, source, and comm, blocking until
such a message is available [3, 4]. When the message arrives, elements of the specified
data type are placed into the buffer at address buf. This buffer oris guaranteed to be large
JCSC 26, 4 (April 2011)
60
enough to contain at least count elements. The status variable can be used subsequently
to inquire about the size, tag, and source of the received message [3, 4].
WHY MPI
There are currently two standards for programming distributed systems that were
developed in open forums: Distributed Computing Environment (DCE) and MPI. DCE
relies on advanced compiler technology to expedite the development of client server
programs [1, 5, 9]. Thus, although it is based on C, DCE requires the construction of new
compilers. As a consequence each implementation of DCE is, to a great extent, hardware
specific, and until recently there were very few complete DCE implementations.
Furthermore most of the current implementations are proprietary and quite expensive.
On the other hand, MPI, as noted earlier, specifies a library of extensions to C and
FORTRAN that can be used to write message passing programs. So an implementation
of MPI can make use of existing compilers, and it is possible to develop more-or-less
portable MPI libraries. Thus, unlike DCE, it is relatively easy to find an MPI library that
will run on existing hardware. Indeed, there are several implementations of MPI that run
on networks of UNIX / Linux workstations and Windows PC's. Further, many of these
implementations can be freely downloaded from the internet.
Ideally, an advanced operating systems course would introduce students to both
DCE and MPI. However, it is a truism that learning to program parallel systems can be
extremely difficult, and that attempting to learn two essentially different methodologies
in one semester or one quarter will, especially for the weaker students, make it virtually
impossible to learn either. Thus in view of the difficulties involved in obtaining a DCE
compiler and the generality of MPI, the instructor of this course has chosen to use MPI.
USING MPI IN ADVANCED OPERATING SYSTEMS
This section describes various programming projects implemented in MPI used in
a course in advanced operating systems. In some cases the descriptions of the
programming project is straightforward and without further explanation. Other examples
detail distributed algorithms. Further explanation of these projects can be found at this
URL (omitted for review).
MPI Warm Up
The first programming project is typically an MPI "warm up" project designed to
introduce the students to C/C++ programming with MPI. For the first project, students
have to write three separate programs. The first program demonstrates basic message
communication using MPI_Send and MPI_Recv.
The second program involves a set of processes organized into a logical ring. The
program then prompts the user to send a message around to each process in the ring
stopping when the message arrives back at the root process.
The third program was a simulation of the game "Rock-Paper-Scissors". Students
have to design a distributed system for playing this game. One process is designated as
CCSC: South Central Conference
61
the simulation manager. Another process acts as a referee and scores the game. Two
additional processes act as players in the game. The referee sends a message to each of
the player processes to select one of rock, paper, or scissors at random. The players each
send their respective selection back to the referee. The referee will then determine the
winner. Play continues for predetermined number of games.
MPI Logical and Vector Clocks
For this assignment, students are to implement Lamport's logical clocks using MPI
[6]. This is achieved by implementing a set of primitives to maintain the state of logical
clocks distributed across the processes. To verify that the logical clocks simulation works
correctly, their program is to read in a set of simulation parameters and then print the
logical clocks associated with each event. A single manager manager process and a set
of worker processes are implemented for this process. The manager process will manage
the simulation while the worker processes will exchange messages and implement the
logical clocks. Upon successful completion of the Lamport logical clock simulation,
students can then implement vector clocks for additional credit or bonus points.
MPI Leader Election
For this assignment, you are to implement the leader election algorithms described
below and compare their performance. The comparison criterion will be the number of
messages sent needed to elect a leader. It is recommended that a single manager process
and a set of worker processes be implemented. The manager process will manage the
simulation, and the worker processes will exchange messages and determine an elected
process.
Le Lann-Chang-Roberts Leader Election Algorithm
This is perhaps the simplest of all distributed algorithms. However, it has poor
message complexity. It sends around n2 messages in the worst case. The idea of this
algorithm is that each process starts by passing its own identifier to its neighbor.
Whenever a process receives an identifier from its neighbor, it either:
1. Passes it on around the ring, if the id received is greater than its own,
2. Discards it, if the id received is less than its own, or
3. Declares itself the leader, if the id received matches its own. (Sends "elected"
messages)
Notice that the process with the greatest identifier is elected.
Peterson Leader Election Algorithm
This algorithm for leader election in a ring is more complex, but its worst case
message complexity is much better. Students are asked to determine the message
complexity of this algorithm. (Hint: notice that at least half of the processes become
relays after each round of communication.) The algorithm works as follows:
JCSC 26, 4 (April 2011)
62
1. In the first phase, each process sends its identifier two steps clockwise (so each
process sees the identifiers of its neighbor and its next-to-last neighbor).
2. Each process P makes a decision based on its own identifier and the identifiers it has
received. If P's immediate neighbor's identifier is the greatest of the three, then P
remains "active" in the algorithm and adopts its neighbor's identifier as its own.
Otherwise, P becomes a "relay".
3. Now, each active process sends its identifier to its next two active neighbors,
clockwise around the ring. Relay processes simply pass along each message they
receive.
4. Steps 2 and 3 continue repeatedly, with more and more processes dropping out as
"relays" until a process finds that its own immediate neighbor is itself, in which case
everyone else has dropped out and it declares itself the leader. (Sends "elected"
messages)
MPI Byzantine Generals Simulation
The Byzantine agreement problem was first defined and solved (under processor
failures) by Lamport in [7]. In this problem, an arbitrarily chosen processor, called the
source processor, broadcasts an initial value to all other processors. A protocol for
Byzantine agreement should guarantee that all non-faulty processors agree on the same
value. If the source processor is non-faulty, then the common agreed upon value by all
non-faulty processors should be the initial value of the source. Students create a
Byzantine generals simulation program that implements the Lamport, Shostak, Pease
algorithm for oral, non-authenticated messages.
CONCLUSIONS
The most important conclusion reached is that it is definitely possible to design a
useful, practical, one-semester course in advanced operating systems that utilizes MPI.
The key is to provide only enough material on MPI to the students, to focus on the
distributed algorithms discussed in the course.
A second, more general, conclusion is that there is a wealth of free materials and
libraries available on the web. Although most computer science instructors are familiar
with the benefits of placing material on the web, they may not be familiar with the
benefits using web searches for materials to improve their courses or their own skills as
educators.
Finally, a minor but surprising conclusion was that a distributed system does not
need the latest and greatest or fastest servers and workstations. Often obsolete machines
or "recycled" laptops are adequate for distributed system simulations.
REFERENCES
[1] Coulouris, G., Dollimore, J., Kindberg, T., Distributed Systems: Concepts and
Design, 4th ed., Harlow, England, Pearson Education Limited, 2005.
CCSC: South Central Conference
63
[2] Fidge, C., Logical Time in Distributed Computing Systems, Computer, 28-33,
August, 1991.
[3] Foster, I., Designing and Building Parallel Programs, Reading, MA, Addison
Wesley, 1995.
[4] Ghosh, Sukumar, Distributed Systems: An Algorithmic Approach, Boca Raton,
FL, Chapman & Hall, 2007.
[5] Grama, A., Gupta A., Karypis, G., Kumar, V., Introduction to Parallel
Computing, 2nd ed., Harlow, England, Pearson Education Limited, 2003.
[6] Lamport, L., Time, Clocks, and the Ordering of Events in a Distributed System,
Communications of the ACM, 21, (7), 558-565, 1978.
[7] Lamport, L., Shostak, R., Pease, M., The Byzantine Generals Problem, ACM
Transactions on Computer Systems, 20, (4), 382-401, July, 1982.
[8] Lynch, N., A., Distributed Algorithms, San Francisco, CA, Morgan Kaufmann,
1996.
[9] Pacheco, P., Parallel Programming with MPI, San Francisco, CA, Morgan
Kaufmann, 1997.
[10] Quinn, M., J., Parallel Programming in C with MPI and OpenMP, Boston, MA,
McGraw Hill, 2004.
[11] Singhal, M., Shivaratri, N., Advanced Concepts in Operating Systems:
Distributed, Database, and Multiprocessor Operating Systems, New York, NY,
McGraw Hill, 1994.
[12] Wilkinson, B., Allen, M., Parallel Programming: Techniques and Applications
Using Networked Workstations and Parallel Computers, 2nd ed., Upper Saddle
River, NJ, Pearson, 2005.
___________________________________________
* Copyright © 2011 by the Consortium for Computing Sciences in Colleges. Permission to copy
without fee all or part of this material is granted provided that the copies are not made or
distributed for direct commercial advantage, the CCSC copyright notice and the title of the
publication and its date appear, and notice is given that copying is by permission of the
Consortium for Computing Sciences in Colleges. To copy otherwise, or to republish, requires a
fee and/or specific permission.
64
SELF-SUPPORT COMPUTER SCIENCE LAB*
Jenq-Foung "JF" Yao, PhD
Computer Science
Georgia College & State University
478 445-5483
jf.yao@gcsu.edu
James Carlisle, MS
Computer Science
Georgia College & State University
478- 445-8137
james.carlisle@gcsu.edu
ABSTRACT
This paper shares our experience in setting up and maintaining a self-support
computer Science lab. It discusses the funding resource first. The introduction
of how to utilize a cloning mechanism to deploy multiple computers is next.
How different computer science classes utilize the lab is then described.
Related works are discussed subsequently. The experience outcome is thus
shared. The paper concludes with pros and cons of the self-support lab.
INTRODUCTION
This paper shares an experience of setting up a self-support computer science lab
in details along with all of the benefits and pitfalls. Our experience may help readers to
set up their own self-support computer science lab.
A computer science lab typically needs a full-time system administrator (sysadmin)
to maintain the lab. Regrettably, many small programs that only offer undergraduate CS
degree, such as ours, cannot afford to hire a full-time sysadmin. They often results in
using undergraduate students, who are not as reliable as graduate students, to maintain
the lab. This paper provides one version of the solution in supporting a computer science
lab by itself without professional or student help.
METHODOLOGY
The first step of setting up a computer lab is to obtain the needed computer
equipment. In our university system, an institution is allowed to collect student
technology fees for technology equipment. Our institution requires all enrolled students
  • ... Another project [7] involved using a hybrid of word puzzles and mathematical puzzles to emphasize the idea that math is just another language to be learned. Their puzzles focused more on mathematical operations rather than simply using mathematical vocabulary words in a word puzzle. ...
    ... Figure 2. Hexadecimal jumble puzzle. Image from [7] ...
    Article
    There have been many ways that teachers have tried to make mathematics more interesting for their students. Innovations include interactive television shows, a hybrid of word and math puzzles, hands on activities, and expression of mathematics through movement. Before trying to introduce a new way to make mathematics interesting, we wanted to first determine if there is a relationship between a person's ability to solve puzzles and their mathematic skills. Puzzles were chosen whose solution's could be arrived at through common sense or trial and error as well as through problem solving techniques that become crucial in complex mathematics and proof writing. The puzzles we chose ranged from permutation puzzles to Tangrams. In addition to learning what techniques people use to solve problems, we also asked them to take an optional mathematics evaluation to get an idea of their mathematic skills.
  • Article
    Engineering education in the 21st century faces multiple obstacles including limited accessibility of course resources due, in part, to the costs associated with acquiring and maintaining equipment and staffing laboratories. Another continuing challenge is the low level of participation of women and other groups historically underrepresented in STEM disciplines. As a partial remedy for these issues, we established a Virtual Engineering Sciences Learning Lab (VESLL) that provides interactive objects and learning activities, multimedia displays, and instant feedback procedures in a virtual environment to guide students through a series of key quantitative skills and concepts. Developed in the online virtual world Second LifeTM, VESLL is an interactive environment that supports STEM education, with potential to help reach women and other underrepresented groups. VESLL exposes students to various quantitative skills and concepts through visualization, collaborative games, and problem solving with realistic learning activities. Initial assessments have demonstrated high student interest in VESLL's potential as a supplementary instructional tool and show that student learning experiences were improved by use of VESLL. Ultimately, the VESLL project contributes to the ongoing body of evidence suggesting that online delivery of course content has remarkable potential when properly deployed by STEM educators.
  • Article
    This paper describes about converting mathematical expressions from the Clifford Algebra textbook into Open Math Document (OMDoc) format. OMDoc is used to define mathematical theorems and semantics of mathematical objects and present the mathematical theorem in XML format over the Internet. OMDoc is an extension of OpenMath standard. The content dictionaries of OMDoc provide semantics to a rich set of mathematical expressions. OMDoc allows defining our own set of content dictionaries and symbols to express any mathematical expressions. Clifford's geometric algebra, one of the mathematical theorems applied in Physics, is defined by a set of axioms that explain the definitions and identities of mathematical properties. In this paper, several mathematical expressions of Geometric Algebra are presented into OMDoc format. This research initiates OMDoc approach in the Physics field and will continue defining symbols that are not yet defined in the content dictionaries of OpenMath in the future.
  • Article
    Real world projects for senior level software engineering courses offer many advantages for students and others involved. Because of the nature of the projects and the people involved, however, many problems can arise during the design and implementation of such projects. This paper discusses in depth the issues that computer science students sometimes face when they take on one of these real world projects.
  • Article
    The impact of Auto-ID in the supply chain management is discussed. Auto-ID is supply chain management affects all the three levels, which include strategic, tactical, and operational. Auto-ID will enable process automation in picking, shelving, cross-docking, and implementing consolidation operations. It will reduce mistakes such as, sending an item to a wrong destination and not dispatching the right item at right time. These measures will reduce the cost of operations for manufacturers and distributors and cut transportation and distribution lead time and lead-time variability.
  • Article
    This article illustrates successful strategies for helping novice programming students understand the use of parentheses (Ps) and quotes (Qs) in LISP. Based on detailed analysis of students working programming problems, we designed lab exercises to address typical difficulties. Rather than emphasizing correct answers, our approach, inspired by the scaffolded knowledge integration (SKI) framework, required students to take the role of investigator and critic. In particular, the intervention required students to critique incorrect calls, identify the incorrect rule being applied in the incorrect call, and correct the call. It also required students to identify causes of error messages we identified as difficult. These exercises had a positive effect not just on the calls to functions, which the intervention specifically addressed, but also on writing function definitions and predicting results, which were not specifically addressed by the intervention. The exercises improved students’ understanding of LISP and increased the efficiency of future instruction.
  • Article
    Full-text available
    This article uses a critical evaluation of research on student misconceptions in science and mathematics to articulate a constructivist view of learning in which student conceptions play productive roles in the acquisition of expertise. We acknowledge and build on the empirical results of misconceptions research but question accompanying views of the character, origins, and growth of students’ conceptions. Students have often been seen as holding flawed ideas, which are strongly held, interfere with learning, and which instruction must confront and replace. We argue that this view overemphasizes the discontinuity between students and expert scientists and mathematicians, making the acquisition of expertise difficult to conceptualize. It also conflicts with the basic premise of constructivism, that students build more advanced knowledge from prior understandings. Using case analyses we dispute some commonly cited dimensions of discontinuity and identify important continuities that have been previously ignored or underemphasized. We highlight elements of knowledge that serve both novices and experts, albeit in different contexts, and under different conditions. We provide an initial sketch a constructivist theory of learning that interprets students ’ prior conceptions as resources for cognitive growth within a “complex systems ” view of knowledge. This theoretical perspective aims to characterize the interrelationships among diverse knowledge elements rather than identify particular flawed conceptions; itMisconceptions Reconceived 3 emphasizes knowledge refinement and reorganization, rather than replacement, as primary metaphors for learning; and it provides a framework for understanding misconceptions as both flawed and
  • Article
    THE SEARCH for simple abstract techniques to be applied to the design of switching systems is still, despite some recent advances, in its early stages. The problem in this area which has been attacked most energetically is that of the synthesis of efficient combinational that is, nonsequential, logic circuits.
  • Article
    Females and males show different average patterns of academic achievement and scores on cognitive ability tests. Females obtain higher grades in school, score much higher on tests of writing and content-area tests on which the questions are similar to material that was learned in school, attain a majority of college degrees, and are closing the gap in many careers that were traditionally male. By contrast, males score higher on standardized tests of mathematics and science that are not directly tied to their school curriculum, show a large advantage on visuospatial tests (especially those that involve judgments of velocity and navigation through three-dimensional space), and are much more knowledgeable about geography and politics. A cognitive-process taxonomy can shed light on these differences.