Software Engineering and Information Technology Research

Analysis and Testing

This research is directed toward the integration of formal specification methods and analysis with software testing and selective regression testing. Capabilities to support analysis and testing throughout the software lifecycle, from early requirements analysis through operational use are being pursued, as well as extending specification-based testing techniques to be applicable at the level of software architecture.

Computer Supported Cooperative Work

The widespread adoption of Internet technologies and the integration of communication networks into everyday organizational work has led to an increasing interest in the role that information systems and communication technologies can play in supporting collaboration. The center's research in Computer-Supported Cooperative Work (CSCW) takes a broad-based approach that focuses as much on the social and organizational factors affecting successful adoption as on the technical challenges for applications and infrastructures. Topics of current interest include the role of technology in supporting distributed and mobile work; the use of virtual meeting technologies in large organisations; infrastructures for group information management; expertise recommendation; virtual worlds supporting working communities; and awareness technologies.

Configuration Management

Research in configuration management (CM) is aimed at extending support beyond traditional source code CM to provide ubiquitous CM across all phases of the software life cycle. Using the central abstraction of configurable software architecture, many specific problems are addressed on an individual, yet coordinated basis, including advanced repository support for the creation of large-scale, distributed, and development-time CM systems, supporting automated software release, install, and update, providing run-time CM, and managing product line architectures as sets of versioned components, connectors, and interfaces.

Environments

Environments research is pervasive in India and US. The fundamental objective of the environments work is to develop technically rich solutions across the breadth of the problem (developer support, product architectures, tool technologies) that are technically compatible, functionally comprehensive, and mutually reinforcing. The focus areas include interoperability, process, analysis and testing, user interfaces, and understanding. In a very real sense the topic of environments is the bringing together of the results of the research in the other focus areas.

Human-Computer Interaction

This area focuses on the design, development and evaluation of interactive software systems. We are interested in foundational questions of interaction and usability as well as practical aspects of building effective interactive systems. Current application domains and concerns include evolutionary software development, expert finding, information visualization, fluid information management, personalized systems, and medical information systems.

Hypermedia

Hypermedia can be an effective technology for helping manage the myriad of heterogeneous artifacts, systems, and relationships which exist in large-scale software engineering projects. Pursuing this objective, the hyperware group is developing open, heterogeneous, distributed hyperprogram technology. The group's focus is on developing Internet-scale event-based protocols; mechanisms and standards to integrate link-server hypermedia functionality with the WWW; support for hyperweb configuration management, semantically-rich link generation, cooperation agents, and semi-automated rationale capture of software development processes.

Information Visualization

Research in information visualization focuses on the development and empirical analysis of methods for presenting abstract information in visual form. The visual display of information allows people to become more easily aware of essential facts, to quickly see regularities and outliers in data, and therefore to develop a deeper understanding of data. Interactive visualization additionally takes advantage of people's ability to also identify interesting facts when the visual display changes, and allows them to manipulate the visualization or the underlying data to explore such changes. The center faculty explore success factors of effective information visualization.

Internet-Scale Event Notification

The asynchrony, heterogeneity, and inherent loose coupling that characterize applications in a wide-area network (such as the Internet) promote event interaction as a natural design abstraction for a growing class of software applications. An emerging building block for such systems is an infrastructure called an event notification service. The center's work in this area includes an investigation of distributed architectures and efficient processing algorithms for the design and implementation of event notification middleware, using a variant of the publish-subscribe style as the client API. We are also investigating a new kind of network service called content-based routing, which can be used as the underlying networking basis for event notification services. Finally, we are investigating the fundamental security aspects of publish-subscribe communication.

Open Source Software Development

The center research in open source software development focuses on empirically-based studies of the processes, practices, and communities that develop open source software. Ethnographic and virtual enthnographic research methods are employed in the field studies of open source software development in communities that include those centered on Internet infrastructure, networked computer games, and academic software design research.

Privacy and Security

Privacy and security are issues that are central to the center's research mission, since they lie at the intersection of software design, human factors, and policy concerns. We are pursuing a number of projects that explore different aspects of these problems as they relate to current and future information systems design and use. In the area of privacy, we are exploring the question of privacy and personalization from a perspective that combines policy analysis, user evaluation, and intelligent interface architectures. In the area of security, we are exploring the use of distributed event monitoring and visualization to provide end users with systems that disclose aspects of their security configuration for examination, exploration, and control.

Software Acquisition and Electronic Commerce

The center research in software acquisition and electronic commerce is aimed at developing a radically new approach for the acquisition of software-intensive systems. Software-intensive systems include those fielded on platforms such as military aircraft, battleships, and distributed multi-site enterprises. New approaches being explored include virtual system acquisition (VISTA), knowledge web management systems (KWMS), modeling and simulating of software acquisition process architectures, software acquisition simulators, reengineering the acquisition process life cycle , and the introduction of open source software concepts to large acquistion efforts.

Software Architecture

The center's research in software architecture is directed at reducing the cost of application development by focusing attention on high level design issues and increasing the potential for reuse among systems in closely related product families. The center's work in software architecture provides style-based design guidance, component-based architectural composition, architectural visualization and analysis, system generation capabilities, modification of systems at runtime, and architecture-based rationale capture and delivery.

Open Source Software Development

The center research in open source software development focuses on empirically-based studies of the processes, practices, and communities that develop open source software. Ethnographic and virtual enthnographic research methods are employed in the field studies of open source software development in communities that include those centered on Internet infrastructure, networked computer games, and academic software design research.

Software Engineering Education

The center research in software engineering education focuses on the application and adaptation of simulation game technology, such as SimCity or The Sims, to the classroom. Complementing traditional software engineering teaching practices that are heavily focused towards projects, we are designing a simulation environment in which students play to study and learn software engineering. Specific goals of this research are to introduce to students decision making, tradeoff analysis, and an overall view of software engineering and its fundamental laws.

Software Understanding

Researchers at The center are investigating a variety of techniques for both capturing information about software that can later be used to help in its understanding as well as techniques to assist directly with the task of software understanding and development. Support for the cognitive aspects of software development, inter-team communication, and organizational memory are being pursued.

Digital Solutions for Academic Instiutions

Analysis and Testing

This research is directed toward the integration of formal specification methods and analysis with software testing and selective regression testing. Capabilities to support analysis and testing throughout the software lifecycle, from early requirements analysis through operational use are being pursued, as well as extending specification-based testing techniques to be applicable at the level of software architecture.

Learning Center

Visit the NEW and IMPROVED Discussion Forums!!

  • Improved Navigation
  • Personalization Options
  • Seven Languages Available
  • Intelligent User Ranking System
  • Flexible Email Notifications