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.