Advance Program: Faculty Presentations Session 1
|9:45 - 11:05
||Faculty Presentations, Session 1
Session Chair: Richard N. Taylor
|9:45 - 10:05
||"Topics, Search, and the Crowd: Next-Generation Software Tools"
André van der Hoek, Informatics Dept. Chair
Abstract: How we develop software today is very different from how we developed software even just a decade ago. Disruptive forces include sites such as StackOverflow where we can get answers to some of the most intricate questions in seconds, the billions of lines of code freely available on the internet that we can access, reuse, and mine, and new development models that leverage the crowd through sites such as TopCoder. As a result, people and organizations make very different choices, and we need to rethink the tooling that surrounds their work. This talk highlights the trends, discusses the implications, and introduces several novel tools that we are developing for this new reality.
Bio: Andre van der Hoek serves as Chair of the Department of Informatics at the University of California, Irvine. He holds a joint B.S. and M.S. degree in Business-Oriented Computer Science from Erasmus University Rotterdam, the Netherlands, and a Ph.D. degree in Computer Science from the University of Colorado at Boulder. He heads the Software Design and Collaboration Laboratory, which focuses on understanding and advancing the roles of design, collaboration, and education in software development. He has authored and co-authored over 100 peer-reviewed journal and conference publications, and in 2006 was a recipient of an ACM SIGSOFT Distinguished Paper Award. He is a co-author of the 2005 Configuration Management Impact Report as well as the 2007 Futures of Software Engineering Report on Software Design and Architecture. He has served on numerous international program committees, is a member of the editorial board of ACM Transactions on Software Engineering and Methodology, was program chair of the 2010 ACM SIGSOFT International Symposium on the Foundations of Software Engineering, and is program co-chair of the 2014 International Conference on Software Engineering. In 2009, he was a recipient of the Premier Award for Excellence in Engineering Education Courseware. He is the principal designer of the B.S. in Informatics at UC Irvine and was honored, in 2005, as UC Irvine Professor of the Year for his outstanding and innovative educational contributions.
|10:05 - 10:25
||"What is Your Code's Behavior Telling You? Using Evidence to Automate Software Maintenance"
(no slides will be made available; an MP4 video is available.)
James A. Jones, Assistant Professor, Informatics
Abstract: In this talk, I will explain how our research can provide automatic recommendations for common and costly software-maintenance tasks — tasks that involve answering questions such as "what is the bug causing this error?", "where is the bug in my code?", "how did the code evolve to cause this bug?", and "who should fix it?". For each such question and the software-maintenance task that it supports, our techniques provide automatic recommendations based on analysis of concrete evidence — evidence such as revision history, source-code structure, test-case execution, and customer usage.
Bio: James A. Jones is an Assistant Professor at the University of California, Irvine. He obtained the Ph.D. in Computer Science at Georgia Institute of Technology in 2008. Jones is interested in improving the quality of software and the efficiency with which it is developed and maintained. To this end, his research interests are in the areas of software analysis, testing, and visualization to enable software developers to fathom the complex internal workings of their software, specifically for finding and fixing software errors.
|10:25 - 10:45
||"Object-Orientation Meets Big Data: Language Techniques towards Highly Efficient Data-Intensive Computing"
Harry Xu, Assistant Professor, Computer Science
Abstract: Modern computing has entered the era of Big Data. The massive amounts of information available on the Internet enable computer scientists, physicists, economists, mathematicians, political scientists, bio-informaticists, sociologists, and many others to discover interesting properties about people, things, and their interactions. Analyzing data from Twitter, Google, Facebook, Wikipedia, or the Human Genome Project requires the development of scalable platforms that can quickly extract useful information from an ocean of records collected from customers, clinical trial participants, program execution logs, or the Internet. Many large-scale, data-intensive applications are written in Java, an object-oriented language known for its simple usage, easy memory management, and large community resource. In Java, developers are freed from the burden of manually managing memory and they no long need to worry about program bugs that result from the inappropriate memory usage. However, this automated support comes at a cost. Both extra memory space and computation effort are needed to realize automated memory management, leading to severe inefficiencies and redundancies. Poor performance is not uncommon in large-scale object-oriented applications used by thousands of businesses throughout the world.
When object-orientation meets Big Data, performance problems that appear insignificant are magnified, making data-intensive systems fail to scale to large data sets. I will first talk about our recent study on memory problems in popular Big Data applications such as Hadoop and Giraph. To solve the problem, we propose an object-free design that uses a combination of buffer-based memory management and accessor-based programming model to reduce the number of objects created in a Big Data application. Using our approach, the number of objects can be statically bounded and does not grow proportionally with the cardinality of the input dataset. I will also talk about our going research on the development of compiler support to automatically transform regular Java programs into object-free programs under the proposed programming model.
Bio: Harry Xu is an assistant professor in computer science. He joined UCI in August 2011 immediately after obtaining his Ph.D. from Ohio State University. His research interests are, in general, programming languages, compilers, software engineering, and runtime systems. Recently, he has been interested in software bloat analysis and developed static and dynamic program analysis tools to help programmers find performance bottlenecks in real-world large-scale application. His publications are primarily in PL/SE conferences such as PLDI, ECOOP, ISSTA, and ICSE.
|10:45 - 11:05
||"Challenges in Developing an Informal Music Learning Game Environment: A Project with The San Francisco Symphony"
Walt Scacchi, Research Professor, ISR
Abstract: In this presentation, I will identify and examine a number of software engineering challenges that arose during the development of a new, informal music learning game environment, in conjunction with the San Francisco Symphony. The environment is targeted to public school students ages 8-13, and is aligned with the National Standards for Music Education. Some of the challenges include design and development of game software with few functional requirements and mostly non-functional requirements; iterative development and testing of game software and playful user interfaces; design of gesture controls for basic computers that lack new gesture input devices; providing real-time and digital signal processing services within Web browsers; game engine design and development using domain-specific scripting languages; and providing support for persistent user interactions without database or content management support services. The highlight of the presentation will be a live demonstration of the game environment by ISR's lead game software developer and artist, Alex Szeto.
Bio: Walt Scacchi is senior research scientist and research faculty member at ISR, and also Director of Research at the Center for Computer Games and Virtual Worlds. He received a Ph.D. in Information and Computer Science at UC Irvine in 1981. From 1981-1998, he was a professor at the University of Southern California. He returned to UC Irvine in 1999. His research interests include open source software development, computer game culture and technology, virtual worlds for modeling and simulating complex processes, and software acquisition. Dr. Scacchi is an active researcher with more than 150 research publications, and has directed more than 60 externally funded research projects. He also has had numerous consulting and visiting scientist positions with more than 25 firms or institutes, including five start-up ventures. He served as General Co-Chair for the 8th. Intern. Conference on Open Source Systems in 2012, Co-Chair of the 3rd. Games and Software Engineering Workshop at the 2013 Intern. Conf. On Software Engineering, and ICS Distinguished Alumnus of 2012. His recent activities and research publications can be found at http://www.ics.uci.edu/~wscacchi