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
614-292-9358
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.