Adina Crainiceanu Associate Professor Department of Computer Science United States Naval Academy 572M Holloway Road, Stop 9F Annapolis, MD 21402 http://www.usna.edu/Users/cs/adina Email: adina@usna.edu Phone: (410) 293-6822 Fax: 1-410-293-2686 EDUCATION Ph.D. in Computer Science, Cornell University, Ithaca, NY Thesis Title: Answering Complex Queries in Peer-to-Peer Systems M.S. in Computer Science, Cornell University, Ithaca, NY May 2006 January 2004 M.S. in Computer Science, University of Bucharest, Bucharest, Romania July 1999 B.S. in Computer Science. University of Bucharest, Bucharest, Romania July 1997 EMPLOYMENT US Naval Academy, Annapolis, MD December 2005-present Associate Professor with tenure, Computer Science Department, since August 2014 Assistant Professor, Computer Science Department, December 2005- August 2014 • • Teach undergraduate courses in the Computer Science field: Database Management, Web and Internet Programming, Introduction to Computer Science, Object-Oriented Programming, Cyber Security, Web and Databases for Cyber Operations Perform research. My research interests lie at the intersection of databases and distributed systems, with a focus on finding information in dynamic, large, decentralized systems. I am also interested in data mining and computer science applications to life sciences. Cornell University, Ithaca, NY Cornell University Fellowship, 8/2000-8/2001 Research Assistant, 9/2001-12/2005 Teaching Assistant, 8/2003 - 12/2003 • • • • • • May 2000 – December 2005 Investigated, created, and developed new methods and algorithms for answering complex queries in large, distributed, decentralized database systems. Implemented new algorithms, built, debugged and deployed a peer-to-peer system called Pepper on a network of more than 300 computers distributed throughout the world (Planet Lab). The code is written in C++ and has more than 60,000 lines. Designed experiments to test system performance. Collected test data, analyzed and interpreted results. Head Teaching Assistant for ComS 432 - Introduction to Database Systems and ComS 433 - Practicum in Database Systems. Coordinated the other teaching assistants: scheduled office hours, assigned grading and recitation duties, ensured that homework assignments are graded and returned on • • • time, ensured that the questions posted by students online, on the class newsgroup, are answered within 24 hours. Created the assignments, posted the solutions. Graded homework assignments and exams. Held office hours and answered questions send by email or posted on the newsgroup. IBM Almaden Research Lab, San Jose, CA Research intern • Researched, designed and implemented an infrastructure allowing users to easily enhance their web content with dynamic capabilities. The infrastructure facilitates the development and deployment of new distributed applications. The infrastructure was immediately used to support critical aspects of the YouServ system, a web hosting system currently deployed within the IBM intranet and used by over 1400 users. Reliable Network Solutions, Ithaca, NY Research Intern • • • Summer 2001 Discussed with senior members of the team to determine application requirements. Designed and set up an SQL database to collect test data for Mariner/Astrolabe software for distributed system monitoring, management and data mining. Devised and implemented tools to analyze the data and produce the reports. Iowa State University, Ames, IA Research Assistant • Summer 2002 Spring 2000 Investigated algorithms for mining association rules from distributed databases. Kepler, Bucharest, Romania March 1996 – December 1999 Software Engineer, 3/1996 - 12/1999 Project Manager, 6/1997 - 9/1997 • Analyzed, designed, implemented and tested large software products, as part of teams of 3 to 15 people. Some of the projects: maintenance and upgrade of banking software, migration of a huge warehouse management application from AS400 to client-server environment. • Taught SQL language in a 1 day course organized by IBM in Romania. • • • • • In charge of the management of a 4-month project with a team of 3 people. Assigned tasks and oversaw the members of the team. Discussed with the client and planned the project infrastructure. Ensured product compliance and timely delivery. Produced technical documentation for the project. Transiciel, Lyon, France Software Developer • June 1998 - August 1998 Developed part of the Advertising Module of a commercial application for large distribution companies (team of 4 people). PROFESSIONAL ACTIVITIES • Session chair for International Conference on Data Engineering (ICDE) 2012 Conference • Program committee member for International Conference on Data Engineering (ICDE) 2012, demo track • Reviewer for Very Large Databases Journal (VLDBJ), IEEE Transactions on Parallel and Distributed Systems, IEEE Communications Magazine, ACM Transactions on Database Systems (TODS), IEEE Transactions on Knowledge and Data Engineering (TKDE), Data and Knowledge Engineering (DKE) • • Upsilon Pi Epsilon International Honor Society for the Computing and Information Disciplines (UPE) member Association for Computing Machinery/Special Interest Group in Management of Data (ACM/SIGMOD) member REFEERED PUBLICATIONS • • Bloofi: Multidimensional Bloom Filters. Adina Crainiceanu, Daniel Lemire. Information Systems, Volume 54, December 2015, pp. 311-324 SPARQL in the Cloud using Rya. Roshan Punnoose, Adina Crainiceanu, David Rapp. Information Systems, Volume 48, March 2015, pp. 181-195 • Quantifying the reliability of image replication studies: The image intraclass correlation coefficient (I2C2). Haochang Shou, Ani Eloyan, Seonjoo Lee, Vadim Zipunnikov, Adina Crainiceanu, Mary Beth Nebel, Brian Caffo, Martin Lindquist, Ciprian Crainiceanu. Cognitive, Affective, and Behavioral Neuroscience (Journal), December 2013, Volume 13, Issue 4, pp. 714-724 • Bloofi: A Hierarchical Bloom Filter Index with Applications to Distributed Data Provenance. Adina Crainiceanu. 2nd International Workshop on Cloud Intelligence (Cloud-I 2013) collocated with the 39th International Conference in Very Large Data Bases VLDB. Riva del Garda, Italy, 2013 Rya: A Scalable RDF Triple Store for the Clouds. Roshan Punnoose, Adina Crainiceanu, David Rapp. 1st International Workshop on Cloud Intelligence (Cloud-I 2012) collocated with the 38th International Conference in Very Large Data Bases VLDB. Istanbul, Turkey, 2012 Load Balancing and Range Queries in P2P Systems Using P-Ring. Adina Crainiceanu, Prakash Linga, Ashwin Machanavajjhala, Johannes Gehrke, and Jayavel Shanmugasundaram. ACM Transactions on Internet Technology (TOIT). 10, 4, Article 16, March 2011. Bootstrap Bayesian Analysis with Applications to Gene-Environment Interaction. Adina Crainiceanu, Kung-Yee Liang, Ciprian M. Crainiceanu: 24th International Symposium on Computer and Information Sciences (ISCIS 2009). Guzelyurt, Cyprus, 2009. P-Ring: An Efficient and Robust P2P Range Index Structure. Adina Crainiceanu, Prakash Linga, Ashwin Machanavajjhala, Johannes Gehrke, Jayavel Shanmugasundaram: ACM SIGMOD International Conference on Management of Data. Beijing, China, 2007. Guaranteeing Correctness and Availability in P2P Range Indices. Prakash Linga, Adina Crainiceanu, Johannes Gehrke, Jayavel Shanmugasundaram. ACM SIGMOD International Conference on Management of Data. Baltimore, 2005. Querying Peer-to-Peer Networks Using P-Trees. Adina Crainiceanu, Prakash Linga, Johannes Gehrke, and Jayavel Shanmugasundaram. International Workshop on the Web and Databases (WebDB). Paris, 2004. An Indexing Framework for P2P Systems. Adina Crainiceanu, Prakash Linga, Ashwin Machanavajjhala, Johannes Gehrke, Jayavel Shanmugasundaram. ACM SIGMOD International Conference on Management of Data. Paris, 2004. Demo. • • • • • • • • • • P-Tree: A P2P Index for Resource Discovery Applications. Adina Crainiceanu, Prakash Linga, Johannes Gehrke, and Jayavel Shanmugasundaram. World Wide Web Conference (WWW). New York, 2004. Poster paper. A Storage and Indexing Framework for P2P Systems. Adina Crainiceanu, Prakash Linga, Ashwin Machanavajjhala, Johannes Gehrke, and Jayavel Shanmugasundaram. World Wide Web Conference (WWW). New York, 2004. Poster paper. Peer-to-Peer Sharing of Web Applications. Roberto J. Bayardo, Adina Crainiceanu, Rakesh Agrawal. World Wide Web Conference (WWW). Budapest, 2003. Poster paper. TECHNICAL REPORTS • • • • Answering Complex Queries in Peer-to-Peer Systems. Adina Crainiceanu. Doctoral dissertation. May, 2006 P-Ring: An Index Structure for Peer-to-Peer Systems. Adina Crainiceanu, Prakash Linga, Ashwin Machanavajjhala, Johannes Gehrke, Jayavel Shanmugasundaram. Cornell University Computing and Information Science Technical Report TR20041946, July 2004 Querying Peer-To-Peer Networks Using P-Trees. Adina Crainiceanu, Prakash Linga, Johannes Gehrke, Jayavel Shanmugasundaram. Cornell University Computing and Information Science Technical Report TR2004-1926, 2004. Peer-to-Peer Sharing of Web Applications. Roberto J. Bayardo, Adina Costea, Rakesh Agrawal. IBM Research Report RJ 10268, Nov. 2002. TEACHING a. Courses taught at USNA Course Course Title Number SI110 Cyber Security I Credit Level Hours 2-2-3 4/C Course Status IC210 Introduction to Computer Science Object Oriented Programming Introduction to Computer Science Programming for Engineers Web and Internet Programming 3-2-4 3/C 2-2-3 3/C 3-2-4 3/C 1-2-2 3/C 2-2-3 2/C Required for SCS/SIT after 2008 Required for SCS/SIT Required for SCS/SIT before 2008 Required for ESE before 2010 Required for SIT Applied Database Systems 2-2-3 2/C IC211 SI204 SI283 IT350 IT360 Core course Required for SIT after 2008 Semesters Taught Spring AY2014 Fall AY2010 My Role Spring AY2010 Fall AY2007 Instructor Fall AY2009 Instructor Fall AY2007, AY2008, AY2009, AY2010, AY2011, AY2012, AY2013, AY2014, AY2015 Spring AY2008, AY2009, Instructor, Course Coordinato r (AY2010, AY2011, AY2012, AY2013, AY2014, AY2015) Instructor, Course Coordinato Instructor Instructor Instructor r Each Year Instructor, Course Coordinato r Instructor, Course Coordinato r IT420 Database 2-2-3 Management and Organization 2/C SY306 Web Databases Cyber Operations and 2-2-3 for 2/C IT462 Advanced Database Systems 2-2-3 1/C SI440 Database Management 3-0-3 1/C SI495A Clustering 3-0-3 Systems using Kolmogorov Complexity and MapReduce Distributed 3-0-3 Indexing for XML Data 1/C 1/C Elective for SCS (Independent Research Course) Fall AY2014 Implementation 3-0-3 and Evaluation of Ordered Paths Index for Distributed Computing Research 1-4-3 Seminar/Capston e 1/C Elective for SCS (Independent Research Course) Spring AY2014 1/C Required for SCS/SIT Spring AY2012 SI495A SI496C IC480 Required for SIT before 2008 AY2010, AY2011, AY2012, AY2013, AY2014 Spring AY2006, AY2007 Instructor, Course Coordinato r Each Year Required for SCY Spring Creator, AY2015 Instructor, Course Coordinato r Elective for Spring Creator, SIT/SCS AY2009, Fall Instructor, AY2012 Course Coordinato r Each Year Elective for Fall AY2008 Creator, SCS/SIT Instructor, Course Coordinato r Elective for SCS Fall AY2011 Instructor, (Independent Course Research Course) Coordinato r b. Course coordination IT350 Web and Internet Programming – Fall AY2010 through AY201 IT360 Applied Database Systems – Spring AY2008 through AY2014 SY306 Web and Databases for Cyber Operations – Spring AY2016 IT420 Database Management and Organization – Spring AY2006 through AY2007 Technical Adviser SI440 Database Management - Fall AY2008 SI495A Clustering Systems using Kolmogorov Complexity and MapReduce - Fall AY2011 SI495A Distributed indexing for XML data - Fall AY2014 SI496C Implementation and Evaluation of Ordered Paths Index for Distributed Computing Spring AY2014 c. Course and laboratory development Creation of SY306 - Web and Databases for Cyber Operations: SY306 is a new course, required for the Cyber Operations majors, in their 2/C Spring. The course covers basic client side and server side web applications development, as well as database development and SQL language. The course expands on some of the topics introduced in SI110 such as cookies, session tokens, web authentication, secure web protocols (HTTPS), and attack and defense of web-based applications with a database back-end (cross-site scripting attacks, SQL injections). Creation of IT462 - Advanced Database Systems: In Spring AY2009 I created IT462, a new advanced elective course for the Information Technology (IT) and Computer Science (CS) majors. I completely re-designed the course in Fall AY2012 to avoid overlap with SI440 - Database Systems and include material on the latest advancements in distributed systems and databases. I designed and developed this entirely new course from scratch. Due to the advanced nature of the course and the dynamic nature of the field, no textbook was really suitable, so developing the course required significant work. I decided the content of the course, developed the materials for lectures and class exercises, developed lab assignments, and exams. My goal for the class was to introduce students to a wide variety of leading-edge database technologies and prepare students for the highly dynamic world of database software engineering. The topics covered in class and the associated labs ranged from the basic relational database, to data mining and data warehousing, to distributed computing on the high performance USNA cluster using Hadoop, the state-of-the-art open-source software framework that supports data intensive distributed applications, including database software. Creation of SI440 - Database Systems: In Fall AY2008 I created SI440, a new advanced elective course for the CS and IT majors. As opposed to the Applied Database Systems (IT360) required course for the IT majors, this course focuses on the fundamentals of how the database systems are implemented, rather than how to use database systems. I designed and developed this entirely new course, decided on the material to be taught, selected a textbook, prepared slides, created class exercises, homework assignments, exams, and a project. The materials I developed for this course were subsequently used by other instructors teaching the class. Improvements to IT420 – Database Management and Organization: In Spring 2006 I substantially changed IT420, a required course for IT majors at that time. I added new course content to introduce object-oriented PHP, data storage, indexing, and query processing in relational database systems. I changed the lecture material and added many active learning exercises so that students can practice the new concepts in class. I modified labs to better tailor the problems to the students’ interests. I created a semester-long project that gave students the opportunity to create a real database application, to be used by a non-profit organization. Improvements to IT360 – Applied Database Systems: In Spring AY2011 I started changing the structure of the course and started with "how to use" a database rather than "how to design" a database. I fine-tuned the changes over the years, to improve student learning and create a coherent syllabus, with smooth transitions between different portions of the course. Having learned what a database is and how it can be used, the students were better able to design new databases later in the course. This change in the course structure also allowed for early introduction of SQL, the database language that is critical to any database developer. SQL use was reinforced throughout the semester. The change in course structure led to better learning and improvements in the students' scores for the database portion of the in-house version of the Major Field Assessment Test for IT majors. I created handouts to promote note-taking by the students. Each year I created new projects for IT360, with real customers wherever possible, so students were able to work in teams and get real life experience in creating and deploying large software projects. Improvements to IT350 - Web and Internet Programming: In Fall AY2012 I introduced new content related to web server administration and web security. Due to the increased importance of cyber security education at USNA I expanded this content in AY2013 and AY2014. In AY2014 I also updated the course content and course materials to introduce and use HTML5 instead of XHTML. I created challenging and educational team projects that allowed students to work towards implementing solutions for real-world scenarios. d. Pedagogical Seminars attended / Short Courses Teaching Portfolio Workshop, USNA, May 2012 The 42nd ACM Technical Symposium on Computer Science Education, Dallas, TX, March 2011 Effective College Teaching Workshop, USNA, May 2006 Designing Learning-Centered Assignments, Quizzes and Exams Workshop, USNA, August 2005 Active Learning and Classroom Assessment Techniques Workshop, USNA, August 2005 ACADEMIC AWARDS Class of 1951 Faculty Research Excellence Award - Computer Science Department nominee, USNA, 2013 Apgar Award for Excellence in Teaching - Computer Science Department nominee, USNA, 2012 Cornell University Fellowship, Cornell University, 2000-2001 Premium for Academic Excellence Award, Iowa State University, 2000 Emeritus Romanian National Fellowship, University of Bucharest, Romania, 1994-1997