Dr. Rajiv Ramnath
Department of Computer Science and Engineering
The Ohio State University
291 Dreese Laboratories
2015 Neil Ave.
Columbus, Ohio 43210
Ramnath (dot) 6 (at) osu (dot) edu
I am a Professor of Practice in the Computer Science and Engineering Department at THE Ohio State University. I extensively collaborate with industry and other academic units on research, education and workforce programs, and teach several industry-relevant courses. I recently returned from a 3+ year rotation as a Program Director in the Software cluster in the Division of Advanced Cyberinfrastructure, in the Computer and Information Science and Engineering directorate at the National Science Foundation. Prior to this I worked for many years in industry, leading government-funded research and commercial product development. My industry R&D lab turned into a startup, so for a short while I ended up as an entrepreneur. In addition to my academic work, I have also advised large and small businesses and startups on computing and information technology strategies.
This web page describes my work and contains materials as follows:
- My curriculum vitae (CV), item (A) below.
- Selected recent publications and book synopses, item (B),
- Book synopses, item (C), and
- A summary of educational program development, item (D).
Relevant documents are linked into this web page; all in PDF format.
A. To view the CV, click here.
B. Clickable links to selected publications are presented below along with explanatory narratives.
The work presented in these publications represents 4 areas of research and practice: (i) Intelligent Systems, (ii) Systems, Networking, and Signal Processing, (iii) Software Engineering and Software Applications, and (iv) Enterprise Strategy, Engineering and Management. An additional area of my work, namely, Computer Science Education and Cyberlearning is presented in section (C) on education program development below.
Much of the work results from collaborations with industry, through projects where computing is applied towards developing or improving products and services. This is problem driven research, that is, research that goes to wherever the problem is. Such research therefore spans multiple areas of Computer Science as opposed to being niched into a single area. In my case, my research spans the gamut from information retrieval to systems to software engineering and applications to enterprise strategy and operations.
I. These first 2 papers are in the Intelligent Systems category, and present research on the application of information retrieval techniques on enterprise data in order to answering business questions.
1. TopChurn: Maximum Entropy Churn Prediction Using Topic Models Over Heterogeneous Data Sources, Manirupa Das, Micha Elsner, Arnab Nandi, Rajiv Ramnath, World-Wide Web (WWW) Conference 2015, WebScience track, Florence, Italy, May 16th-24th 2015. Link.
The paper above describes experiments over data from The Columbus Dispatch, a mainstream daily newspaper, and presents a novel system that uses topic models as a means of extracting dominant features from user complaints and Web data to identify features that are most indicative of subscribers likely to drop their subscription within a specified period of time.
2. Identifying Knowledge Brokers and Their Role in Enterprise Research through Social Media, Xu Zhe, Jayashree Ramanathan, Rajiv Ramnath, IEEE Computer, Special Issue on Collaborative Information Seeking, March 2014. Link.
Knowledge brokers serve an essential function within complex enterprises, serving as humans in the loop holding the intrinsic enterprise knowledge to mediate between information seekers and expert sources. All future collaborative information-seeking system designs should take this existence of brokers into account.
II. This next paper presents work done in the Systems area to enable the timely processing of enterprise data. A unique aspect of the paper is that the application domain often determines the subsampling boundaries.
3. Managing Tiny Tasks for Efficient, Data-Parallel Subsampling, Sundeep Kambhampati, Christopher Stewart, William C.L. Stewart, Jaimie Kelley, Rajiv Ramnath, 2nd IEEE Conference on Cloud Engineering (IC2E 2014), 2014. Link.
Our work in this paper, done in collaboration with Nationwide Childrens Hospital, showed that subsampling workloads that benefit from tiny tasks - i.e., tasks comprising few samples - reduce cache misses and per-task running time. However, they have higher scheduling overhead. Our research compared the scheduling overheads of various Hadoop implementations. Further, we improved a low-overhead Hadoop implementation named BashReduce by allowing it to size tasks according to knee-points on an empirically identified miss-rate curve, thus completing short jobs almost as efficiently as long jobs.
III. This paper in the Software Engineering and Software Applications area is a collaboration with the Social Innovation and Commercialization Initiative at The Ohio State University, College of Engineering. This paper is included to show that interesting problems have to be solved even in what appears to be a straightforward application of technology.
4. Implementation Considerations in Enabling Visually Impaired Musicians to Read Sheet Music Using a Tablet, Lynch, T., Housley, L., Ramnath, R., Ramanathan, J., short paper, IEEE Computer Software and Applications Conference (COMPSAC), Kyoto, Japan, July 16-20, 2013. Link.
This paper presents practical solutions to issues in implementing a mobile application for reading and displaying musical scores enhanced to assist the visually impaired in reading and perform the pieces. The development challenges fall into three categories: variable visual impairment driven requirements, musical notation complexity, and screen real estate limitations. This innovative application is contrasted with traditional, competing solutions.
IV. This publication in the Enterprise Strategy, Engineering and Management area resulted from our long-term collaboration with the City of Columbus (and discussions with personnel working with IBM Global Business Solutions on the operational management of service-based enterprises).
5. Method for Continuous Generation of Component Business Model Heat Map using Execution Data for a Complex Service Enterprise, Shivade, C., Mukri, F., Rajiv Ramnath, R., Ramanathan, J., 6th IEEE International Symposium on Service-Oriented System Engineering, December 12-14, 2011, Irvine, CA, USA, 2011. Link.
Component Business Models (CBM) and manually synthesized heat maps are being used by IBM Global Business Solutions to develop logical models that assist strategic decision-making in service-based enterprises. A key aspect of CBM is a layered approach that identifies execution, control and tactical directives. In this paper, we developed a meta-model drawn from theory on microeconomics and activity based costing to algorithmically relate operational execution data to CBM heat maps, and used production data from the City of Columbus 311 system (a one-stop request handling system for city services) to illustrate the value of this algorithm in generating the heat map to help service investments and other dashboard type applications.
C. Book Synopses
The three books presented below are examples of converting theory and research to practice and education. The first two books aim to make the development of mobile applications accessible to beginning software developers. In addition to demonstrating the technological aspects of iOS and Android development respectively, these books uniquely explain how object oriented principles, concepts, patterns, and techniques may be applied in the context of a software framework, which essentially dictate a dominant architecture into which the application-specific design must fit. The books appear to have been well received. One reader commented about the iOS book, Superb book, by a very skilled author... an unusually clear overview of object-oriented programming concepts É practically nuts-and-bolts, and just as clear ... great package of theoretical and practical guidance.
A reader of the Android book wrote: Well-explained concepts, not only from Android point of view but also using best software development practices. Helped me write my first Android app :)
This book is used as secondary reference for CSE 5236 Mobile Application Development, a highly popular class in Computer Science and Engineering curriculum at OSU.
This book is used as the primary reference for CSE 5236, the Mobile Application Development class.
The third book (below, with the lead author being my respected colleague Dr. Jay Ramanathan) builds a descriptive theory of co-engineering Enterprise Architecture (EA) and shows how to put co-engineering into practice. Service organizations and enterprises have the dual challenge of embracing externally driven variation while simultaneously evolving the enabling of information technology operations and systems. Our co-engineering methods provide powerful tools for interdisciplinary decision-making necessary for managing complex interactions between layers of external and enabling services. This book is intended for practicing professionals, advanced students, and academicians seeking understanding of the deeper issues and challenges in applying IT to solve business problems.
This book is used as primary reference for CSE 5235 Enterprise Architecture, a Computer Science and Engineering course at OSU.
D. Educational program development
My goal with educational program development is to create learner centered programs that seek to engage with and be driven by the needs of the learner. Almost inevitably, learner centered programs must involve active learning; it is only through application in practice can gaps in learning be identified (anyone who, after an hour of lecture, has asked any questions? of her class and been met with complete silence, will know exactly what I mean!). In order to make the time for active learning we are converting several classes to the inverted lecture format, in which pre-recorded lectures are moved out of in-class hours with class time being used for active learning with complementary techniques
Further, deep active learning requires reflection during and on application. Thus, all the programs I have helped develop have a large component of reflective practice where a framework of practice is proposed as base, and the reflection during practice leads to clarification and refinement of the concepts of the framework by the individual learner.
Our use of active and reflective learning has been reported in the papers below:
1. Student and Instructor Experiences in the Inverted Classroom, Herold, M., Lynch, T., Ramnath, R., Ramanathan, J., Frontiers in Education Conference (FIE 2012), Seattle, Washington, October 2012. Link.
This paper discusses our ongoing experiences with teaching software engineering through an inverted classroom, which moves traditional lectures out of in-class hours and into the personal study time of the student with prerecorded lectures and reserves class time for active learning with complementary techniques - structured discussions, short quizzes, an innovative Lego-based workshop, a project, and guest lectures.
The Lego-based Agile workshop is an engaging (and most popular!) exercise in the software engineering class. It is reported upon here:
This paper presents an immersive approach to learning agile software engineering concepts using LEGOR bricks. Students construct a physical product over several Agile-like iterations. Over each iteration, students learn agile concepts through hands-on experiences and mistakes. We assessed this approach using a combination of quantitative and qualitative methods to show that the students demonstrated positive attitudes toward this approach compared to lecture-based instruction.
We have recently added conflict-based learning, essentially another active-learning and reflection element, to one of our courses, and report on it below:
3. Collaborative and Cooperative-Learning in Software Engineering Courses, Swaroop Joshi, Neelam Soundarajan, Rajiv Ramnath, Joint Software Engineering Education and Training (JSEET) conference, Florence, Italy, May 16th-24th 2015. Link.
This element was added in recognition of the definite risk in collaborative learning of the individual learning being lost in the focus on the success of the team in completing the project(s). We developed a novel approach that exploits the affordances of mobile and web technologies to help the individual students in teams in SE courses develop a thorough understanding of the relevant concepts and practices while working on team projects; indeed, the team contributes in an essential manner to the learning of each member of the team.
Although very effective, practice-based learning is time consuming, requires tremendous confidence and significant practice oriented knowledge in the instructor, and difficult to scale. Case studies drawn from practice serve to codify, compress practice-based learning into a form suitable for scalable delivery by lecture. Research and development projects done by our group (outlined in my CV) serve as sources for the case studies incorporated into classroom material. Our technique for building rich, accessible case studies is described in the paper below:
In this paper, we summarize our experience with an approach for constructing case study teaching materials that are integrative and deep in content, but also carefully aligned to the core principles and format of a senior-level software engineering course. Our approach sought to ensure that the cases are complex enough to retain their realism and intrinsic appeal, while mirroring the format and objectives of the course such that the cases reinforce key points in a familiar and consistent fashion to the students.
It must be noted again that much of this curriculum relied on content in the form of real examples and case studies extracted from collaborative projects with industry. These projects in turn relied on students who had been trained through this curriculum, with the projects themselves being an integral part of the curriculum of our Masters program! The paper below described how this process was made to work:
Here we present an interdisciplinary curriculum comprised of three components: a service interaction blueprint for framing the industry problem, agile principles being used to manage the project as well as develop the solution, and descriptive theory-building to frame the next iteration of research. The environment for this work was an National Science Foundation Industry-University Cooperative Research Center (described here). The feedback from a pilot graduate-level class was very positive and provided insights for further research.
Most, if not all of these ideas were actually laid out in a NSF-CCLI proposal (awarded in 2009,and which ran for 3 years) whose summary can be read here. The work aimed at creating curricular material for enterprise software engineering education to meet the requirements of the entry-level workforce (students with undergraduate and masters degrees in computing related disciplines). The core elements of the proposal were (a) the conversion of industry project work-products to curricular material and (b) the development of a set of real enterprise applications, once again for use in teaching.
Over the past several years, the above efforts have translated into the formation or complete revamping of a set of backbone classes that make up the core of the professionally oriented curriculum of the CSE program at Ohio State. These classes, all developed under the aegis of the NSF grant, are as follows:
1. Distributed Enterprise Computing: Course description: Characteristics, and functional and non-functional requirements of large-scale enterprise systems. The technologies used in enterprise systems. Application of XML toolkits, AJAX, Enterprise Java (Enterprise Java Beans, Java Server Faces and Java Server Pages), the Google Web Toolkit and the Enterprise Services Bus, to build elements of an enterprise scale application. Click here for the syllabus.
2. Mobile Application Development: Course description: Mobile application development frameworks; Architecture, design and engineering issues, techniques, and methodologies for mobile application development. Click here for the syllabus.
3. Software Engineering: Learning outcomes are: understanding of frameworks, i.e. tools, techniques and processes for (a) the business context of enterprise software engineering (b) the software development lifecycle, (c) enterprise software architecture (d) software project management (e) enterprise software design, (f) infrastructure management of enterprise systems. This class has been a pioneer of an inverted or flipped classroom format now for several years. Click here for the syllabus.
4. Enterprise Architecture and Services: Modeling/analysis of complex enterprise architectures; enterprise patterns (workflow, broker, warehousing); methods for service performance (lean, ontologies, data mining, etc.); emerging topics in semantic cyberinfrastructures, social computation. Click here for the syllabus.
5. Software Applications Capstone: Students applied the tools and techniques learned in their CSE program in the context of an industry-sponsored enterprise-scale project. Click here for the syllabus.
Several of the above classes are also taught (or will be taught as the program develops) in the Enterprise Architectures and Systems track in the new Masters of Global Engineering Leadership program (click here).
Finally, my work in education has extended beyond Computer Science, as exemplified by the papers below:
Here we present our work with games that are played on top of online geographic maps, using the real world as the game world. We show the innovative potential for technology-enabled, geographic-inquiry-based, learning through play, which through the Internet can reach a massive audience. The major part of the paper describes a web GIS architecture in which the game is implemented. Results from user testing, and its potential for use in cyber-learning research are presented.
7. Culturally Relevant Literature: What Matters Most to Primary-Age Urban Learners, Gwen Cartledge, Susan Keesey, Jessica Bennett, Rajiv Ramnath, Morris Council, Reading & Writing Quarterly, pp. 1-28 | DOI: 10.1080/10573569.2014.955225, January 2015. Link.
The ratings and rationales primary-age urban learners gave culturally relevant reading passages were the foci of this descriptive study. We discuss these findings in terms of their implications for literacy development. A point to note is that the students are interacting with a computer-based tutor that uses speech recognition to interact with the students. The speech recognition aspects of this system are the basis for ongoing research.