David Mills


David Mills is an NSF Fellow at the University of Memphis, where he is pursuing the MS degree in Mathematical Sciences with a concentration in computer science. He holds both a BS degree in computer science and a BA in Digital Arts from Stetson University. His research interests are in software engineering, data mining, biotechnology, and computer science education.


Something For Everyone: Fun AgentSheets Projects
Thursday & Friday

Over the last few years, enrollments for students pursuing computer science degrees has dropped about 30% nationwide. Most academicians believe this phenomenon is due to the recent dot-com bust along with the media's focus on software development outsourcing to foreign nations (Chabrow, 2004). At the University of Memphis, we are working in local high school programming classes to encourage students to major in computer-related fields. Through the NSF-funded project Tri-P-LETS (Three P Learning Environment for Teachers and Students) (2005), computer science graduate students help design and present new curriculum modules. Particular attention is given to three P foundation areas: analytical and problem solving skills, programming concepts as opposed to syntax, and the use of a disciplined process to develop software. The overall goal is to provide students with the knowledge to make informed decisions about their future careers.

Traditional high school programming classes often merely emphasize the syntax of a particular programming language. However, students have the most difficulty with problem solving and developing their own algorithms. Furthermore, students often develop poor software development habits in these early courses because programming assignments are small, and the students are able to successfully develop their code without using formal designs. This means that students with significant programming experience are often the most resistant to software engineering principles when they enter college (Sherrell & Shiva, 2005). In order to motivate students, we use the game-authoring and simulation tool AgentSheets (AgentSheets. 2005; Repenning & Ionnadu, 2004), while emphasizing the foundation areas described above.

In AgentSheets, users construct programs in a graphical environment with built-in coding templates. Programs consist of worksheets containing user-defined agents who react to a list of rules (condition/action pairs). Due to the interactive development environment, students can focus on problem solving without struggling with the syntax of a high-level language such as Visual Basic or Java. Even more importantly, students are able to develop and implement interesting simulations and games much earlier.

This interactive exhibit highlights several of the AgentSheets projects that we have used this past year. Conference participants will have the opportunity to play games and interact with simulations such as the following.

  • Spiderman - Introduces conditions and actions by having Spiderman maneuver around a warehouse while collecting points and battling villains.
  • Horse Race - Random number generation and character mapping are used to create a race against time.
  • Permutations - Allows students to generate permutations of figures representing emotions to recognize patterns and discover formulas (Sherrell, Robertson, & Sellers, 2005).
  • Thermometer - Uses formulas for temperature conversion and value-color mapping to enforce the importance of algebra through a deceivingly simple example.
  • Mr. Potato Head - Introduces simple animation cycles by having the main character avoid falling tiles.
  • Dungeon Crawl - Agent interactions, user-input, and level loading all come together in this game, which is an adaptation of the AI classic Wumpus World.
  • Hidden Maze - An extension of Dungeon Crawl to teach scope (local vs. global variables) where one level is blacked out so that the only visible squares are those surrounding the hero.


    This material is based upon work supported by the National Science Foundation under Grant No. DGE-0338324. We would like to thank all Fellows and students who have designed and/or implemented AgentSheets programs associated with this grant.


    Chabrow, E. (2004). Declining computer science enrollments should worry anyone interested in the future of the U.S. IT industry, Information Week, August 16

    Tri-P-LETS (2005). Tri-P-LETS Homepage.

    Sherrell, L. B. & Shiva, S. S. (2005). Will Earlier Projects Plus a Disciplined Process Enforce Software Engineering Principles Throughout the CS Curriculum?, Twenty-Seventh International Conference on Software Engineering (ICSE 2005),St. Louis, MO, May.

    AgentSheets. (2005). AgentSheets Homepage.

    Repenning, A. & Ionnadu, A. (2004). End-user development: Tools that empower users to create their own software solutions, Communications of the ACM, 47(9), 43-46.

    Sherrell, L.B., Robertson, J.J. & Sellers, T. W. (2005). Using software simulations as an aide in teaching combinatorics to high school students, Journal of Computing Sciences in Colleges, April.

    This material is based upon work supported by the National Science Foundation under Grant No. DGE-0338324.

  • Click here to close the window.