Visible to the public Collaborative: Development and Testing of a Secure Programming ClinicConflict Detection Enabled

Project Details

Lead PI

Performance Period

Aug 15, 2014 - Jul 31, 2018

Institution(s)

University of California-Davis

Award Number


This capacity building project will create Secure Programming Clinic to enhance student learning and expertise in writing robust, secure software, analogous to a writing clinic in an English department or law school. It provides continual reinforcement of the mechanisms, methods, technologies, and need for programming with security and robustness considerations throughout a student's undergraduate coursework. The clinic would augment courses, not replace them or their content. The clinic can be tailored to meet the needs of specific groups, such as beginning students or students in a particular class. The students will likely retain and use some of these skills after they graduated, thereby improving the quality of software overall. In addition, the development of the assessment instruments to evaluate the impact of initial learning, abstraction, feedback, and meta-cognition on transfer will be a valuable contribution to computer science education researchers. The NSF's CyberCorps(r) SFS program funds projects that address cybersecurity education and workforce development. The Scholarship Track provides funding to award scholarships to students in cybersecurity. In return for their scholarships, recipients will work after graduation for a Federal, State, Local, or Tribal Government organization in a position related to cybersecurity for a period equal to the length of the scholarship. The Capacity Track seeks innovative proposals leading to an increase in the ability of the United States higher education enterprise to produce cybersecurity professionals.

The project will test the clinic's effectiveness by developing and validating measures that reflect the ability of learners to write robust, secure software. The clinic will be tried in several different ways to gather data, and use that data to evaluate each particular clinic. The clinic procedures, instructional modules and measures will be disseminated to the educational community. This project brings to bear research in learning in conjunction with methods used in other disciplines, particularly the humanities, which have proved successful in augmenting existing courses to provide reinforcement of basic skills. From this grounding, the Secure Programming Clinic seeks to build and assess expertise in an area that spans many aspects of programming. The project further studies how to deliver this information and practice; how to frame the information so students at different levels of programming experience and skill can benefit from them; and how to use the results of the evaluation to tune the clinic and materials.