Software Engineering


Configurability, Extensibility, and Software Composition

Software Engineering

Customizable Standards-based MDD Platform

Configurability, Extensibility, and Software Composition

Embedded Software Research

Model Driven Integration of Enterprise Data

Program Analysis

Requirements Engineering

Software-as-a-Service

Software Maintenance

Software Reverse and Re-Engineering

Software Testing

Process Engineering

Granular Material Modeling

Minerals and Materials Processing

Nanotechnology

Process Modeling and CFD

Thermal Processing of Materials

Virtual Manufacturing

Systems Research Lab

Initiatives

Analytics-led Simplify and Transform of IT Plants
Data Privacy
Improving Operational Efficiency using Corporate Historical Repositories

Exploratory Projects

Control System for Multi-Sensor Actuator System
Enterprise Data Management
Operational Risk Modeling

We view customizability along two dimensions, namely, configurability and extensibility. In essence, Configurability is making choices along pre-defined dimensions of variations, and Extensibility is adding a new variant along an existing dimension of variation and/or adding a new dimension of variation.

We will be extending the existing 'building block' abstraction (with bi-directional mapping to feature models) and building on top of Jet technology to address these needs. Modeling variability of real-life successful enterprise applications will be an important case study for this work and will also help in its migration to open platforms, if desired.

The ultimate goal is to organize TCS business products as a family of product-lines and support their delivery in the form of a repository of business components and a customization toolset that end-users can use with little external help.