Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos...

15
Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos [email protected] http://www.cos.ufrj.br/~ght System Engineering and Computer Science Department

Transcript of Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos...

Page 1: Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos ght@cos.ufrj.br ght System Engineering.

Empirical Software Engineering at COPPE/UFRJ

UFRJCOPPE

ISERN Candidate

Guilherme Horta Travassos

[email protected]://www.cos.ufrj.br/~ght

System Engineering and Computer Science Department

Page 2: Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos ght@cos.ufrj.br ght System Engineering.

ISERN 2001 presentationG. H. Travassos

UFRJCOPPE

COPPE/UFRJ

COPPE - http://www.coppe.ufrj.br - is the graduate (MSc and DSc) School and research in Engineering Institute at the Federal University of Rio de Janeiro - http://www.ufrj.br)

12 Engineering departments organize the Institute Civil, Chemistry, Electrical, Mechanical, Product, Biomedical, Nuclear,, Metallurgic,

Transport, Energetic Planning, Ocean and Computer Science and Systems Engineering.

Interdisciplinary Areas High Performance Computing and Applications, Environmental Engineering,

Composite Materials, Technology for Explotation of Marine Resources and Petroleum Systems, History of Science and Techniques and Epistemology

Nuclei of Excellence (PRONEX-MCT) Electrical Systems and Power Electronics, Technology for the Explotation of Marine

Resources, Surface and Catalysis, Signal Processing, Computer Modeling and High Performance Computing, Geotechnical Engineering and hydrology in the Hillslope-Coastal Plain System

COPPETEC Foundation manages the linkage academy x industry

Page 3: Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos ght@cos.ufrj.br ght System Engineering.

ISERN 2001 presentationG. H. Travassos

UFRJCOPPE

System Engineering and Computer Science Department - PESC

PESC - (http://www.cos.ufrj.br) is ~35 years old. 36 Ph.Ds working full-time 270 students: 160 MSc and 110 DSc students

most of them working full-time 35% supported by CNPq and CAPES (research grants)

Master and Doctoral courses have received A concept (high quality) from the Brazilian Research Councils (CAPES and CNPq)

9 main research motivational areas: DataBases, Computer Architecture and Operating Systems,

Computer Graphics, Computer Networks, Algorithms and Combinatorics, Social Aspects of Computing, Artificial Intelligence, Optimization and Software Engineering.

Research projects supported by the Industry, Brazilian Research councils (CAPES, CNPq, FINEP,…) or “joint ventures” between Brazil and other Countries (NSF/CNPq, …)

Page 4: Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos ght@cos.ufrj.br ght System Engineering.

ISERN 2001 presentationG. H. Travassos

UFRJCOPPE

The Software Engineering Group at COPPE/UFRJ

3 associate professors working full-time: Ana Regina C. da Rocha, D.Sc., 1983 (head) Claudia M. L. Werner, D.Sc., 1992 Guilherme H. Travassos, D.Sc., 1994

28 MSc and 13 DSc students (55% full-time students) LENS – The Laboratory of Software Engineering –

http://lens.cos.ufrj.br supports the research activities regarding: Software Quality Assurance (process and product) (since 1985) CASE Tools and Software Engineering Environments (since 1987) Software Reuse (since 1992) Medical Software (1994) Experimental Software Engineering (since 2000)

Applied research with the industry (Brazilian Oil Company, IBM, Brazilian Telecom/MCI, Brazilian Air Force, ...) and collaborative research with the academy (UFBa/FBC, USP/São Carlos, UFJF, PUC-RS, University of Maryland, ...)

Page 5: Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos ght@cos.ufrj.br ght System Engineering.

ISERN 2001 presentationG. H. Travassos

UFRJCOPPE

Software Engineering and Empirical Studies

Research Activities explore Experimentation and Experiment Processes

Courses and Seminars regarding Empirical Software Engineering

Collaborative research regarding: Reading Techniques COTS Model for Experiment Packaging Enterprise Oriented Software Engineering Environments Risk Analysis Non-Functional Requirements and Software Architecture

Examples...

Page 6: Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos ght@cos.ufrj.br ght System Engineering.

ISERN 2001 presentationG. H. Travassos

UFRJCOPPE

Object Oriented Reading Techniques

•Team:Guilherme H. Travassos - COPPE/UFRJJeffrey Carver, Victor R. Basili - UM/ESEGForrest Shull - Fraunhofer/Maryland

OORT’s

a family of reading techniques that can be used to inspect object oriented high level design

Oort, Jan Hendrik (1900-1992), Dutch astronomer, noted for his determination that the earth's galaxy, the Milky Way, rotates, and for his contributions to comet theory. Born in Franeker, he was educated at the University of Groningen. Associated with the Leiden University and its observatory, Oort, with his colleagues, established the Milky Way's rotation in the 1920s; they also worked out the mass of the galaxy and the distance of its center from the sun. Oort pioneered in Dutch radio astronomy. He proposed in 1950 that a cloud of cometary material surrounds the solar system at an enormous distance, a concept now generally accepted.

"Oort, Jan Hendrik," Microsoft® Encarta® Online Encyclopedia 2000http://encarta.msn.com © 1997-2000 Microsoft Corporation. All rights reserved .

Page 7: Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos ght@cos.ufrj.br ght System Engineering.

ISERN 2001 presentationG. H. Travassos

UFRJCOPPE

Reading Techniques for OO Design

OORT’s (Object Oriented Reading Techniques)a family of (7) reading techniques that can be used to read OO design artifacts against

1. themselves, and 2. requirements descriptions and use-cases

within a domain in order to identify defects among them.It’s a traceability based family reading approach

RequirementsDescriptions

Use-CasesRequirementsSpecification

High LevelDesign

ClassDiagrams

ClassDescriptions

State MachineDiagrams

InteractionDiagrams

(Sequence)Vert. readingHorz. reading

Page 8: Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos ght@cos.ufrj.br ght System Engineering.

ISERN 2001 presentationG. H. Travassos

UFRJCOPPE

What experimentation has shown

Techniques are feasible and work Techniques help find design defects

Vertical reading finds more defects of omission and incorrect fact Horizontal reading finds more defects of inconsistency and ambiguity

Domain Knowledge did not seem to help the readers Development expertise seem to help the readers Previous Knowledge of the requirements did not help in the design

inspection

Feasibilitystudy

Fall/98

Pilot Study ofObservational studies

Summer/99

Observationalstudies

Fall/99

Case Study: Use in theSoftware Process

Spring/00

OORTs Series of Experiments

Controlled experiment:Use in the IndustrialSoftware Process

Is the idea sound?

Are the techniques well-constructed?

Can we use them in asoftware process?

Can we use them in anindustrial software process?

(Summer/01)

Page 9: Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos ght@cos.ufrj.br ght System Engineering.

ISERN 2001 presentationG. H. Travassos

UFRJCOPPE

Project Status

A set of 7 techniques incorporating modifications to deal with all problems revealed by the experiments is available

Data from last experiment (Spring 2000) is still under analysis techniques used to inspect and support system evolution (maintenance) techniques used in the context of a full software process

Experiment has been replicated at NTNU (Observational Study using a modified version of OORT’s)

An experiment regarding the application of reading techniques in different development contexts has been accomplished in Brazil (first semester 2001). Data is under analysis.

Some papers describing the techniques and the experimentation process were published (OOPSLA, NASA/SEL Workshop, Advances in Computers vol. 54, ESEC/FSE, Technical Reports, ...)

Page 10: Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos ght@cos.ufrj.br ght System Engineering.

ISERN 2001 presentationG. H. Travassos

UFRJCOPPE

A Collaborative Research to Develop, Validate and Package Reading Techniques for Software Defect Detection

Team:José C. Maldonado- University of São Paulo

Victor Basili, Jeffrey Carver - UM/ESEG Sandra Fabri - UFSCar

Manoel Mendonça - UNIFACSGuilherme H. Travassos – COPPE/UFRJForrest Shull – Fraunhofer/Maryland

This research focus on developing techniques to analyze software documents for defect detection. More specifically, mutation testing and document reading techniques will be tailored to detect defects in software formal specifications and source code at Brazilian and American academia and industries. This family of software analysis technologies will be empirically validated in controlled experiments, and packaged in tailorable and reusable software engineering laboratory packages.

Page 11: Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos ght@cos.ufrj.br ght System Engineering.

ISERN 2001 presentationG. H. Travassos

UFRJCOPPE

A Comprehensive Reuse Model For COTS

Team:

Daniil Yakimovich, Victor Basili – UM/ESEGG. H. Travassos – COPPE/UFRJ

To justify the use of a commercial off-the-shelf (COTS) product in software development, one must evaluate the cost of using the product, i.e. integrating it into the requirements. Ideally, this should take place during the COTS selection phase, i.e., the estimated cost of integration should be a factor in COTS selection. Thus, our goal is to design characterization schemes that would allow us to describe integration requirements for COTS products and evaluate them in the context of the system to be built. Then a COTS reuse process including evaluation, integration and the necessary additional activities must be defined.

Page 12: Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos ght@cos.ufrj.br ght System Engineering.

ISERN 2001 presentationG. H. Travassos

UFRJCOPPE

Project Status

An experiment (case study) was planned and executed to evaluate the feasibility of such model Some results

heuristics to guide the identification and classification of COTS integration mismatches

model seems to be useful, mainly for developers with medium level of expertise

improvements in the model to capture “pseudo” incompatibilities (e.g. training effort)

PublicationsD. Yakimovich, G. H. Travassos, V. R. Basili. "A Classification of Software Components

Incompatibilities for COTS Integration". 24th Annual Software Engineering Workshop - NASA/SEL, Greenbelt, 1999.

Page 13: Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos ght@cos.ufrj.br ght System Engineering.

ISERN 2001 presentationG. H. Travassos

UFRJCOPPE

Towards a Lab Package Standard

Team:Victor Basili, Jeffrey Carver - UM/ESEGReidar Conradi - NTNU Forrest Shull - Fraunhofer Center/MarylandGuilherme Horta Travassos, Edgar Gurgel – COPPE/UFRJ

This work intends to describe the major roles (processes) and documents for designing, running, analyzing, synthesizing, recording and disseminating information from controlled experiments. This information will reside in a web-based and thus distributed Experience Library.

Page 14: Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos ght@cos.ufrj.br ght System Engineering.

ISERN 2001 presentationG. H. Travassos

UFRJCOPPE

Project Status Technical description available as a Technical report (draft) some experiments have been packed using this standard (cmsc735 and cmsc435

courses experiments) An UML model describing the concepts has been produced

A packaging process and supportative tool is under developmentModel evaluated by external researchers and CeBase people

PublicationsReidar Conradi (scribe), Victor R. Basili, Jeff Carver, Forrest Shull, and Guilherme H. Travassos: "Pragmatical Documents Standard for an Experience Library: Roles, Documents, Contents and Structure", draft Technical Report (V1.54), Univ. Maryland, April 15, 2000, 50 p.

Page 15: Empirical Software Engineering at COPPE/UFRJ UFRJ COPPE ISERN Candidate Guilherme Horta Travassos ght@cos.ufrj.br ght System Engineering.

ISERN 2001 presentationG. H. Travassos

UFRJCOPPE

Benefits regarding ISERN membership

To enlarge collaboration on research methods and research issues

To be in touch with well-established and improved experimentation approaches and experimentalists

Planning, Sharing and Replication of experiments

Guest researchers from the ISERN community and students exchange

To get Scientific Advisory Support while seeding Empirical Software Engineering activities in Brazil