- 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.
- The SPICE program: In order to define a consistent framework for Software Process Improvement, through
our international coordination role, we are gathering some valuable data we expect to publish soon. We are also
starting a training program based on a strong involvement of our industry specialists.
- A self assessment approach: The ExpressProject is aimed at helping you to benchmark your organization.
The framework is already available and a consistent reference database will be available by summer time.
- 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:
- individual aspects of software development and maintenance (i.e.,
design, coding, verification, validation)
- planning of software development projects (i.e., choose appropiate methods, techniques, and
tools and integrate them into project plans)
- performing development, project management, and quality assurance activities according to the
plan.
- This definition implies that software engineering:
- requires learning (based on experiments and case studies) in
order to develop useful models
- requires reusing in order to make software development efficient
and effective
- is not vastly different from other engineering disciplines
- 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:
- The Industry-As-Laboratory Approach: Research problems and solutions are
identified and validated through industrial pilot projects.
- Composition of Technology: Introduced techniques are expressed in a
composable way so that the can be easily combined for developing complex
software systems.
- Software Production: Proposed techniques aim at efficient and effective
industrial software production and maintenance.
- 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:
- Software maintenance is the set of activities, both technical and
managerial, that ensures that software continues to meet organisational and
business objectives in a cost effective way.
The mission of the CSM is to address both the issues of maintaining current systems, and
building maintainability into new software.