Software Engineering
Centers and Institutes

UVa Software Engineering

Software engineering research at UVa is currently directed at software safety and dependability, and architectural design and evolution of integrated systems.

Software Engineering Research Group - Michigan State Univ.

The Software Engineering Research Group in the Department of Computer Science at Michigan State University performs research in the area of formal methods for systems development. There are two major components making up SERG. First, there are a group of projects whose objective is to develop techniques and tools that support the use of formal methods in the different phases of software development. Second, there are a group of projects that involve the use of formal approaches to multimedia, embedded systems, hardware, parallel processing, networking, distributed systems, and visualization.

Centre for Software Reliability, University of Newcastle

The Centre for Software Reliability (CSR) is a research centre within the Department of Computing Science at the University of Newcastle upon Tyne; it conducts research on how to achieve improved levels of dependability from computing systems. Current primary areas of research include software and system requirements (their representation, evolution and analysis); formal specifications; dependable architectures; socio-technical engineering issues encompassing cost and dependability trade-offs.

Centre for Software Reliability,City University, London, U.K.

The Centre for Software Reliability (CSR) at City University is an independent research centre based in the School of Informatics. The Centre is internationally renowned for its research achievements. These are notable in the areas of software reliability modelling and prediction, software metrics, and theoretical issues for safety critical systems. In the Government's 1992 assessment of each University Department's Research record, the research of CSR (which was grouped within Informatics) was singled out as being of very high repute. The unifying theme of CSR's research interests is the need for quantification in software engineering.

ESPRIT

The main objectives of ESPRIT Basic Research are to replenish the reservoir of new knowledge and expertise from which industrial research can draw to ensure tomorrow's innovation, and to secure the environment for training tomorrow's researchers through research itself. From the perspective of ESPRIT as a whole, Basic Research is an "upstream" activity, whose results feed into several of the more industrially oriented (downstream) sectors of the programme. Basic Research contributes to the building of a solid research infrastructure throughout Europe, which underpins a strategy to help European industries retain their competitivity in global markets.

University of Bern
Institute of Computer Science and Applied Mathematics

Research groups include distributed systems and software composition. The software composition group is headed by Prof. Oscar Nierstrasz.

University of Geneva
Centre Universitaire d'Informatique

The Centre Universitaire d'Informatique groups together researchers from the Faculty of Sciences and the Faculty of Economic and Social Sciences. Summaries of the research activities and the members of each group are available. Research groups are active in object systems and software engineering.

Swiss Federal Institute of Technology
Software Engineering Laboratory

The Software Engineering Laboratory is doing research in software engineering with emphasis on development methods, tools, and environments. Our work focuses on object-oriented approaches covering the complete range of development activities: analysis, formal specifications, design, programming and testing. The laboratory has a large body of experience with the Ada programming language and participated actively in the ISO language revision. A library of reusable Ada components, including Abstract Data Types, text processing utilities, language parser generators, and system interfaces to Unix and POSIX, has been implemented; it is available by FTP.

Software Engineering at the University of Washington

We are interested in ensuring that complex software systems exhibit specific properties. Recently, the three properties that we have focused on are: software safety ( Nancy Leveson), which concerns how to guarantee that systems with embedded software cause no harm to human life, the environment, or property; ease of evolution (David Notkin), which concerns reducing the costs and complexity of changing software systems over time; and real-time attributes (Alan Shaw), which concerns understanding and guaranteeing that certain timing constraints are satisfied. In addition to continuing work on these and related properties, our current work is characterized in two ways. First, we are interested in understanding how properties interact: for instance, how does one (or can one) build safe systems that can be modified easily? Second, what are the problems that arise in the construction of real software systems? We have a history of working on such systems; our group has had interactions with the FAA on TCAS, the collison avoidance system now found on all planes of over 30 passengers, with Microsoft on helping them with an experimental restructuring of their 1.2 million line Excel product, and with local medical device companies who need to demonstrate that their products satisfy both safety and timing requirements.

European Software Institute
The European Software Institute is a major industry initiative, founded by leading European companies, to improve the competitveness of the European Software Industry, including both suppliers and users. To this and ESI promots and disseminates good software management practice. Two of their current projects relate directly to the issue and strategies for software process improvement.

Irvine Research Unit in Software
IRUS was chartered by the Chancellor of the University of California at Irvine in 1990 to promote interaction between academia and industry on current software issues, to facilitate cooperative problem-solving, and to provide information sharing in the field of software engineering. The primary goal of IRUS is to create an alliance by developing a local software community and fostering synergy between university faculty and regional software indistry. IRUS provides organizational infrastructure and support to advance the state of the art and the state of the practice in computer software.

Irvine Research Unit on Computer Systems Design

This research unit supports activity in three primary areas: computer systems design, design science, and computer networks.

Applied Software Engineering Centre - Centre de Recherche Informatique de Montrèal
CRIM was created in 1992, its activities have focused on promoting knowledge and technology tranfer with a view to improving the quality of software. These activities have fostered technological awareness and provided training and support to various organizations during software process assessment and identification processes. The ultimate goal is to ensure that the necessary people, methods and tools are integrated into the entire range of software engineering activities.

Software Engineering at the Univ. of Kaiserslautern
Software Engineering is concerned with the definition, refinement, and quantitative evaluation of principles, methods, techniques, and tools to support:
This definition implies that software engineering:
However, the state of the practice shows a different picture: Today, software systems are typically not developed in a systematic way (from an engineer's point of view).
It is our goal to develop and introduce software technologies which will enable companies to develop software systematically.

New York State Center for Advanced Technology in Computer Applications and Software Engineering
The CASE Center is a research organization focused on computer technology, sponsored by the New York State Science and Technology Foundation, government, private industry, and Syracuse University. As one of New York's Centers for Advanced Technology, it combines traditional academic strengths in research and education with the University's more recent role as an economic development partner. Over its first ten years our program has demonstrated that campus and corporate sectors can work together effectively for their mutual benefit while enhancing the state's economic climate.

Major functions of the CASE Center include basic and industrially significant research and related activities, and facilitating the transfer of research results to the marketplace. We serve both as a gateway to University resources and as a vehicle for introducing leading edge technology more quickly to commercial use.

STARS
The Software Technology for Adaptable, Reliable Systems (STARS) program is sponsored by the Advanced Research Projects Agency (ARPA), contracted through the Air Force Electronic Systems Center (ESC), and involves three cooperating prime contractors -- Boeing and Loral -- and a large number of subcontractors. The STARS goal is to increase software productivity, reliability, and quality by integrating support for modern software development processes and reuse concepts within software engineering environment (SEE) technology.

STARS is focused on accelerating a change in the way software is developed within the DoD. This change represents a shift to a megaprogramming paradigm that is process driven, domain specific, reuse based, and technology supported.

Software Engineering Laboratory
The SEL is an organization sponsored by the Flight Dynamic Division (FDD) of NASA's Goddard Space Flight Center. The SEL was created in 1976 to investigate the effectiveness of software engineering technologies as applied to the FDD. The goals of the SEL are to understand the local software development process; to measure the effect of various methodologies, tools, and models on this process; and to identify and then apply successful practices. The SEL is made up of three member organizations: GSFC's Software Engineering Branch (code 552), Computer Sciences Corporations Software Engineering Operation, and the University of Maryland's Computer Science Department.

The SEL is the proud recipient of the 1994 IEEE Computer Society/Software Engineering Institute Software Process Achievement Award. This international award honors the SELs software process improvement approach which has resulted in demonstrated sustained improvement in both software reliability, functional cost and development cycle time -- which has been measured on over 100 projects over the past 15 years.

Experimental Software Engineering Group
The Experimental Software Engineering Group (ESEG) of the University of Maryland has the original view of software engineering as a laboratory science. Specific research projects are centered around formalizing various aspects of (a) the Quality Improvement Paradigm ( QIP (compressed postscript)), (b) the Goal/Question/Metric approach (GQM) (postscript) and (c) the Experience Factory ( EF (compressed postscript)). The QIP is aimed at building descriptive models of software processes, products, and other forms of experience, experimenting with and analyzing these models, in order to build improvement-oriented, packaged, prescriptive models. The EF is an organizational approach for packaging reusable software experiences and supplying them to projects.

Software Engineering Group Sweden
Working primarily on the development of software environments and technologies for declarative programming. They are exploring the use of knowledge-based techniques such as structural synthesis of programs and constraint programming for automatic program construction and visual programming.

The Software Productivity Consortium
Through its technologies and aggressive technology transfer programs and services, the Consortium offers American industry, government, and academia a means of leveraging the strategic investments required to improve U.S. software and systems engineering practices. This group was founded in 1985 by a group of companies in the aerospace, defense, electronics, and systems integration industries. The goal is to provide technological and service-based solutions to the many problems inherent in software-intensive systems development.

Lockheed Software Engineering
Lockheed's Software Engineering Quality Action Team is assembling a collection of resources for those interested in software engineering. Included in theif offering is information related to software productivity, software process modeling and process improvement, and, hopefully, results and examples of applying software engineering in the large. Lockheed is working on process improvement using SEI's Capability Maturity Model, and therefore, have some information on this model with ramifications on their corporate goals.

Software Engineering Research Center
SERC is one of the Industry-University Cooperative Research Centers funded by NSF. It is the only one of these centers devoted to software engineering. This center has two primary sites: one at Purdue University and the other at the University of Florida in Gainesville. Other affiliates are Ball State University, University of Oregon (They are developing a Software Engineering Group Page., but currently there is nothing available to indicate what research activity they are engaged. (1/95)), Oregon State University, and Oregon Graduate Institute of Science and Technology. )

Kestrel Institute
Non-profit computer science research institute focusing on formal and knowledge-based methods for incremental automation of the software process.
Kestrel fosters cooperative research and development through its KEEP (Kestrel Educational Exchange Program) program. Through this program Kestrel licenses prototype systems for academic research and education. Currently (9/94) Kestrel is touting its KIDS (Kestrel Interactive Development System) and Reasoning Systems, Inc.'s Software Refinery. Links to both systems can be found on at the above URL.

Software Engineering Lab - National University of Athens
Two documents that may be of interest: Programming in C++, Rules and Recommendations and Notes on Writing Portable Programs in C.

Software Tools Group at CERN
Maintains a collection of software development tools and CASE products. They conduct research/evaluation on some of these productions and make the evaluation available. This is a searchable archive.

Electronics Research Group - University of Aberdeen
Work group on software engineering and re-engineering.

Reverse Software Engineering Using Artificial Neural Networks.

US Army Construction Engineering Research Laboratory Advanced Simulation and Software Engineering Technology
Conducts basic and applied research into software engineering techniques, methodologies, and tools to aid in the development and implementation of large-scale simulation models and virtual reality simulations.
There is a concurrent engineering team working with Stanford, MIT, CMU, and UIUC on agent collaboration. This project is an off-spring of the knowledge sharing effort (and ontologies) conducted at Stanford.

Dublin City University - Centre for Software Engineering
READ their Mission statement.

Software Engineering Laboratory - Institute for Information Technology, National Research Council of Canada
The laboratory performs research and development in software engineering. The object of the research is t odevelop tools and techniques to assist Canadian companies whose principal product is software to improve their processes and products.

Department of Computer Science and Engineering - Oregon Graduate Institute of Science and Technology
The descriptions of the centers here looked interesting. One center, Pacific Software Research Center called PacSoft, is working on topics relevant to the design, implementation, and maintenance of software systsms. Particular areas of interest include generator based program development, formal methods of program development, program transformation techniques, functional programming, reflection, and algebraic programming.

Software Engineering Institute
The SEI is a federally funded research and development center operated since 1984 by Carnegie Mellon University. Through the sponsorship of the Defense Department's Advanced Research Projects Agency the objective is to provide leadership in software engineering and the transition of new technology into software engineering practice.

Resource Based Software Engineering

Laboratory for Advanced Software Engineering Research
The goal of software engineering environments is to reduce the development and maintenance costs of software engineering while improving the quality of the software produced. The Arcadia consortium is developing techniques that support the creation of software engineering environments intended for the development , analysis, and maintenance of large, complex software systems, particualrly those with high reliability requirements. Additionally, Arcadia is committed to a highly distributed, tool-based architecture that supports flexible enviromnet evolution, heterogeneous tools, and organizatinoally dispersed software engineering.

The research being done is LASER falls into the following categories: process, object management, analysis of software systems, and software architecture.

Reusable Software Research Group
This research group has developed an engineering approach to the reusable software. The method, RESOLVE, includes specification and programming notation in a single uniform framework.

Software Engineering Research Centre (Netherlands)
SERC is a platform for applied scientific research in teh area of software engineering. The existence of SERC is one the one hand motivated by the immediate existing and potential demand for independent and objective research on software-engineering in the market and on the other hand by the available means for fundamental research in the academic world. (currently all Dutch pages)

Computer Systems and Software Engineering
- Research Institute for Computing and Information Systems, University of Houston - Clear Lake

Design Methodology Research Group University of Twente
Method engineering, defined to be the engineering discipline of methods, techniques and tools for information systems development, is the overall research theme of the Design Methodology Research Group (DMRG). Main emphasis is on development of so-called Situational Methods, i.e. structured information systems development approaches that have been constructed specifically for the project at hand. A Computer Aided Method Engineering tool (CAME tool) based on existing meta-CASE technology is currently being realized. Dedicated specification techniques and advanced database support are being developed for the area of Cooperation Support Systems, involving complex procedures and workflow management. Furthermore, an object-oriented design method for industrial Process Control Systems is being developed.

The Design Methodology Research Group is one of the initiators of the integration of the work in the field of method engineering and co-chairs the IFIP WG 8.1/8.2 task group on Method Engineering. A series of international summer schools has been set up to disseminate recent research results in the area of method engineering and meta-modelling. The group also plays an important role in the conference series on advanced information systems engineering ( CAiSE.) and the workshop series on the Next Generation of CASE Tools (NGCT). Both CAiSE and NGCT provide a forum for European researchers in the area of Information Systems development and CASE tools.

Twente Research and Education on Software Engineering
THE TRESE project aims at performing activities related to research on compositional object technology. This research includes the development of object-oriented frameworks, models, methodologies and supporting tools for creating and maintaining adaptable software.

One of the essential characteristics that we intend to bring to TRESE is that all research is based on relevant, real-world problems. This is stimulated by the industry-as-laboratory approach, which requires a number of practical projects and cooperations with industrial software development efforts.

Research Initiative on Compositional Object Technology
RICOT aims at providing composable object-oriented techniques for developing large and complex software systems. RICOT has three major characteristics:

Software Engineering Georgia Tech
Research in software engineering at the College of Computing includes work in a broad spectrum of technologies, including programming environments, multimedia, object-oriented design and programming, formal specifications, and information management. Over a dozen academic and research faculty conduct software engineering research and are affiliated with the Center for Information Management Research (CIMR).

List of Research Projects

Center for Software Engineering
Dr. Barry Boehm founded the center at Univeristy of Southern Californica in 1993. The purpose is to provide an environment for research and teaching in the areas of large-scale software design and development processes, generic and domain specific software architectures, software engineering tools and environments, cooperative system design and the economics of software engineering.

SRI International
The engineering research group of SRI has a number of projects of interest. Included in these are the collaborative environment for concurrent engineering design and the computer science laboratory (others should be available soon) . The computer science laboratory page contains links to projects on formal methods, multimedia, and intensional programming. Those interested in formal methods should also consider SRI Cambridge Computer Science Research Centre as a source.

Systems and Software Technology Division
Operating under the auspices of the National Institute of Standards and Technology, this division is working on standards-based vendor neutral open systems. The goal support the development of tools and methods that allow software acquired from different sources to be integrated successfully. Current efforts include work on Open Systems Environments, multimedia, and IDEF data definition standards.

The Centre for Software Maintenance, University of Durham, UK
The Centre for Software Maintenance was established in April 1987, at the University of Durham, England. It is the first such Centre world-wide to concentrate its research on software maintenance.

Informally, software maintenance refers to all those activities that take place after a software product has been delivered to the customer, but the more formal definition used by the CSM is:

The mission of the CSM is to address both the issues of maintaining current systems, and building maintainability into new software.

Additional Resources


To UMass Dartmouth
To CIS Department at UMass Dartmouth

Comments may be mailed to:

RUpchurch@UMassD.edu

This document
Created: September 15, 1994
by RLU
Last Modified: May 2, 1997