Research Projects
1.Innovative, non-conventional approaches for Software Engineering education
Kirti works on creating effective environments for Software Engineering education by using
innovative, non-conventional approaches that are deep rooted in Learning and cognitive
sciences and are driven by the multi-disciplinary nature of SE and requirements of industry. Her
motivation lies in the fact that by merely changing the way one teaches can have long term
and profound impact on the work quality of a Software Engineer, which in turn would affect
the organization and which in turn will affect the economy. Designing learning environments
for an ever-evolving, multi-disciplinary and complex field like SE is not easy.
Her current work involves rigorous scientific enquiry of suitability of different learning
environments. The proposed approaches are being tested in academic setups as well as an
industrial training setup.
2. ALP Factory
Adult Literacy Program (ALP) is an initiative to improve literacy rate of TCS through computer-
based functional literacy (CBFL). The goal is to develop multimedia learning software for all
Indian languages. This means that 2000 (25 languages * 25 languages * 3 dialects) products of
ALP have to be developed for this initiative. Through these products, you can teach any
language using any other language. Developing 2000 products manually is a daunting task and
current methodologies of developing software cannot be applied to such a mass-scale.
Sridhar is working on developing a factory-based approach to building these products. His work
is to automate building these products (completely or partially) such that software can be
manufactured. Standardization of product structure and production processes are two crucial
aspects that are being done during this work. This project yields two significant outputs. One is
the methodology of building software at a mass scale or a factory-based approach to building
software and the other is the application of this methodology to a mass-scale industrial and
social-welfare project.
Prof. Kesav Nori is driving him in building the factory for ALP and in generalizing the concepts
such that they can be applied to other product lines/domain.
3. project Mapcode
There are two approaches to claiming that programs are right - Testing or Proving. In software
development, we tend to invest 70% of the development time in testing. There is no limit to
the number of test cases that can be designed and tested but one can never be sure that a
program would work for all the possible combinations. That is where program proving becomes
vital. Using theorem provers and model checkers, we can ensure that some aspects of the
programs will work under any condition thereby eliminating the need of testing for those
respective properties.
Swathy is collaborating with TCS, where she is working on a mathematical notation (the idea of
which has been conceived by Prof. K. Vishwanath) that provides a whole new approach of
understanding and writing the programs without the help of any technology. This notation is
based on simple mathematics and has already been converted into an interpreter based on
eclipse environment which will check whether the specification of the program and the
computation rule given to it are commuting or not and lays down a trace of the computations
performed.
Currently, Swathy is trying to understand and analyze how the other available tools
for theorem proving work so as to find one which is easy enough to be interfaced with the
already developed interpreter.
4. Evaluation of Service oriented Architecture
Amit Sangroya is working on the problem of Evaluation of Service Oriented Architectures.
The problem is significant in today's Software Development Paradigm, where the focus has
been changed from traditional development methods to Service Orientation. While there
are some proven methods for evaluating traditional software architectures, nothing
significant has been achieved in the Service Oriented Architectures Domain.
The Evaluation at the architecture level of Software Development Life Cycle can lead to a
lot of benefits to all the stakeholders involved in the process.
He is being guided by Bhudeb
Chakrawarty and Vasudeva Varma.
5. Computer Assisted Learning System for Software Engineering
This interactive learning system is being developed by M.Tech. students. The objective is to
help students know, understand and practice SE knowledge and skills. Students will be able to
work on SE problems, case studies and apply the knowledge form class to simulated situations.
The interactive learning environment will be in accordance with Learning sciences principles
especially scaffolding, reflection and constructivism. They can work on problems with different
levels of difficulty and that affect different cognitive aspects of learning. Students as well as
the faculty can track their progress.
6. Testing of Multilingual portals
A Satyam sponsored project. Ilzam and Rachita worked extensively on coming up with a testing
for e-commerce multilingual portals. The aim was to increase the efficiency and effectiveness
of the testing process by applying system.s thinking principles. The focus is on the sites that
are having a web engine, data and templates in different languages.
7. Model based analysis of Software Security requirements
This is a recent work being done in collaboration with the Centre for Data Engineering. Kirti and Ritesh are examining the possibilities of coming up with a formal specification based meta-model to represent software requirements, especially software requires. The forma meta-model can help to specify the requirements as well as
analyze and evaluate them for consistency. Further this opens avenues for evaluating the
correctness of design in accordance with the requirements.
8. Reuse in Software Architecture
Bhudeb has been trying to use his many years of work experience to make a contribution
towards reuse in software architecture b using Service oriented Architectures. He is using
many of the ideas in the current SOA implementations he is involved with.