CSE USC Fraunhofer USA Center for Experimental Software Engineering, Maryland February 6, 2001 2 Outline Motivation Examples of Existing.

Slides:



Advertisements
Similar presentations
Chapter 3 Process Models
Advertisements

1 Brief Descriptions of CMM KPAs CEN 6070 Summer 2004.
CLEANROOM SOFTWARE ENGINEERING
Sixth Hour Lecture 10:30 – 11:20 am, September 9 Framework for a Software Management Process – Artifacts of the Process (Part II, Chapter 6 of Royce’ book)
THE PROCESS OF INTERACTION DESIGN
The Experience Factory May 2004 Leonardo Vaccaro.
University of Southern California Center for Software Engineering CSE USC 12/6/01©USC-CSE CeBASE: Opportunities to Collaborate Barry Boehm, USC-CSE Annual.
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
Software Engineering Metrics for Object Oriented Programming Developed by – Shrijit Joshi.
2/13/07(c) USC-CSSE1 An Empirical Study on MBASE and LeanMBASE Supannika Koolmanojwong Center for Systems and Software Engineering CSSE- Annual Research.
Modeling and Validation Victor R. Basili University of Maryland 27 September 1999.
The Process of Interaction Design. What is Interaction Design? It is a process: — a goal-directed problem solving activity informed by intended use, target.
Empirically Evolving Software Engineering Techniques Victor R. Basili University of Maryland and Fraunhofer Center - Maryland.
CSE USC Fraunhofer USA Center for Experimental Software Engineering, Maryland February Empiricism in Software Engineering Empiricism:
University of Southern California Center for Software Engineering C S E USC Agile and Plan-Driven Methods Barry Boehm, USC USC-CSE Affiliates’ Workshop.
Embedding Security into a Software Development Methodology April 5 th, 8:30 AM Jonathan Minter Director, IT Development and Engineering Liberty University.
WHAT DO WE KNOW ABOUT AGILE SOFTWARE DEVELOPMENT? Author : Tore Dyba and Torgeir Dingsoyr Reporter : 卓卿安.
Capability Maturity Model
Functional Testing Test cases derived from requirements specification document – Black box testing – Independent testers – Test both valid and invalid.
University of Southern California Center for Software Engineering C S E USC August 2001©USC-CSE1 CeBASE Experience Base (eBASE) -Shared Vision Barry Boehm,
© Copyright 2007 Fraunhofer Center MD 1 Life at Fraunhofer Center - Maryland Dr. Forrest Shull Division Director, Measurement & Knowledge Management.
Chapter 2 The process Process, Methods, and Tools
CLEANROOM SOFTWARE ENGINEERING.
N By: Md Rezaul Huda Reza n
ISERN Open Issues, Grand Challenges or Have we made any progress and where are going? Vic Basili 2001.
College of Engineering and Computer Science Computer Science Department CSC 131 Computer Software Engineering Fall 2006 Lecture # 1 (Ch. 1, 2, & 3)
1PBI_SAS_08_Exec_ShullSeptember 2008MAC-T IVV Dr. Forrest Shull, FCMD Kurt Woodham, L-3 Communications OSMA SAS 08 Infusion of Perspective-Based.
Management & Development of Complex Projects Course Code - 706
Using Experiments to Build a Body of Knowledge Victor R. Basili Experimental Software Engineering Group Institute for Advanced Computer Studies Department.
Evaluation of software engineering. Software engineering research : Research in SE aims to achieve two main goals: 1) To increase the knowledge about.
Lessons Learned from Empirical IESE Dieter Rombach ISERN WS 2005 Noosa Heads, 14 November 2005.
Contents 1 Description of 1 Description of Initiative Initiative 3 Results: 3 Results: Characterization Characterization 2 Description of 2 Description.
Software Quality Assurance SE Software Quality Assurance What is “quality”?
Basic of Project and Project Management Presentation.
BSBPMG505A Manage Project Quality Manage Project Quality Project Quality Processes Diploma of Project Management Qualification Code BSB51507 Unit.
Eloise Forster, Ed.D. Foundation for Educational Administration (FEA)
1 Introduction to Software Engineering Lecture 1.
Assessing the influence on processes when evolving the software architecture By Larsson S, Wall A, Wallin P Parul Patel.
Towards an Experience Management System at Fraunhofer Center for Experimental Software Engineering Maryland (FC-MD)
Notes of Rational Related cyt. 2 Outline 3 Capturing business requirements using use cases Practical principles  Find the right boundaries for your.
University of Southern California Center for Systems and Software Engineering Metrics Organizational Guidelines [1] ©USC-CSSE1 [1] Robert Grady, Practical.
Review of Software Process Models Review Class 1 Software Process Models CEN 4021 Class 2 – 01/12.
Process Improvement. It is not necessary to change. Survival is not mandatory. »W. Edwards Deming Both change and stability are fundamental to process.
Software Product Line Material based on slides and chapter by Linda M. Northrop, SEI.
Search Engine Optimization © HiTech Institute. All rights reserved. Slide 1 What is Solution Assessment & Validation?
Software Engineering COSC 4460 Class 4 Cherry Owen.
Apply Quality Management Techniques Project Quality Processes Certificate IV in Project Management Qualification Code BSB41507 Unit Code BSBPMG404A.
Computing and SE II Chapter 15: Software Process Management Er-Yu Ding Software Institute, NJU.
March 2004 At A Glance NASA’s GSFC GMSEC architecture provides a scalable, extensible ground and flight system approach for future missions. Benefits Simplifies.
J. Scott Hawker p. 1Some material © Rational Corp. Rational Unified Process Overview See and use the RUP Browser on lab machines.
Software Architecture Evaluation Methodologies Presented By: Anthony Register.
BSBPMG404A Apply Quality Management Techniques Apply Quality Management Techniques Project Quality Processes C ertificate IV in Project Management
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
SAS_08_Full Life-cycle Defect Management_inspections & tests_Shull 09/2008 Executive Briefing 1© 2008 Fraunhofer USA Inc. Dr. Forrest Shull (PI) Ms. Sally.
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
Contents 1 Description of 1 Description of Initiative Initiative 3 Defining Inspection 3 Defining Inspection Perspectives Perspectives 2 Overview of 2.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Lectures 2 & 3: Software Process Models Neelam Gupta.
Contents 1 Description of 1 Description of Initiative Initiative 3 Year 2: Updated 3 Year 2: Updated Training/Metrics Training/Metrics 2 Year 1: NASA 2.
Software Development Module Code: CST 240 Chapter 6: Software Maintenance Al Khawarizmi International College, AL AIN, U.A.E Lecturer: Karamath Ateeq.
Advanced Software Engineering Dr. Cheng
Lecture 3 Prescriptive Process Models
Identify the Risk of Not Doing BA
The Systems Engineering Context
Goal, Question, and Metrics
Software Engineering I
Capability Maturity Model
Capability Maturity Model
Metrics Organizational Guidelines [1]
Presentation transcript:

CSE USC

Fraunhofer USA Center for Experimental Software Engineering, Maryland February 6, Outline Motivation Examples of Existing Empirical Results Center Vision and Approach Center Organization Track Record Expected Benefits

Fraunhofer USA Center for Experimental Software Engineering, Maryland February 6, Motivation for the Center Software too fragile, unpredictable –(Presidential Commission Report) “No-surprise” software development –(NSF Workshop Report)

Fraunhofer USA Center for Experimental Software Engineering, Maryland February 6, Motivation for the Center Software development teams need to understand the right models and techniques to support their projects. For example: –When are peer reviews more effective than functional testing? –When should you use a procedural approach to code reviewing? –How should you tailor a lifecycle model for your environment? Too often, such decisions are based on anecdote, hearsay, or hype Developers are often surprised to learn that 25 years of empirical software engineering research has provided usable answers to these and numerous related questions.

Fraunhofer USA Center for Experimental Software Engineering, Maryland February 6, Examples of Useful Empirical Results Technique Selection Guidance “Under specified conditions, …” Peer reviews are more effective than functional testing for faults of omission and incorrect specification (UMD, USC) Functional testing is more effective than reviews for faults concerning numerical approximations and control flow (UMD, USC)

Fraunhofer USA Center for Experimental Software Engineering, Maryland February 6, Examples of Useful Empirical Results Technique Definition Guidance “Under specified conditions, …” For a reviewer with an average experience level, a procedural approach to defect detection is more effective than a less procedural one. (UMD) Procedural inspections, based upon specific goals, will find defects related to those goals, so inspections can be customized. (UMD) Readers of a software artifact are more effective in uncovering defects when each uses a different and specific focus. (UMD)

Fraunhofer USA Center for Experimental Software Engineering, Maryland February 6, Examples of Useful Empirical Results Lifecycle Selection Guidance Lifecycle Selection Guidance The sequential waterfall model is suitable if and only if –The requirements are knowable in advance, –The requirements have no unresolved, high-risk implications, –The requirements satisfy all the key stakeholders’ expectations, –A viable architecture for implementing the requirements is known, –The requirements will be stable during development, –There is enough calendar time to proceed sequentially. (USC) The evolutionary development model is suitable if and only if –The initial release is good enough to keep the key stakeholders involved, –The architecture is scalable to accommodate needed system growth, –The operational user organizations can adapt to the pace of evolution, –The evolution dimensions are compatible with legacy system replacement, –appropriate management, financial, and incentive structures are in place. (USC)

Fraunhofer USA Center for Experimental Software Engineering, Maryland February 6, CeBASE Vision and Approach Goal: An empirically based software development process –covering high-level lifecycle models to low-level techniques –necessary step toward a scientific foundation for software engineering in which the effects of development decisions are well understood –we can’t improve without a empirical base A first step is an empirical experience base –validated guidelines for selecting techniques and models –ever-evolving with empirical evidence to help us –identify what affects cost, reliability, schedule,... To achieve this we are –Integrating existing data and models –Initially focusing on new results in two high-leverage areas...

Fraunhofer USA Center for Experimental Software Engineering, Maryland February 6, CeBASE Approach TechniquesLifecycle models Investigates a spectrum of activities... Initially we will focus on... Defect Reduction COTS-based development... Empirical Software Engineering Research

Fraunhofer USA Center for Experimental Software Engineering, Maryland February 6, Center Organization Research center sponsored by –NSF Information Technology Research Program Co-Directors –Victor Basili (UMD), Barry Boehm (USC) Co-PI’s –Marvin Zelkowitz (UMD), Rayford Vaughn (MSU), Forrest Shull (FC-MD), Dan Port (USC), Ann Majchrzak (USC), Scott Henninger (UNL) Initial 2-year funding: $2.4 M

Fraunhofer USA Center for Experimental Software Engineering, Maryland February 6, Industry Benefits To advance software development, industry needs –a basis for choosing and customizing development approaches We will support industry by developing –an understanding of defects (and a means to minimize them) grounded in careful empirical analysis instead of folklore –empirical metrics and predictive models for process selection and project monitoring

Fraunhofer USA Center for Experimental Software Engineering, Maryland February 6, Research Benefits To advance software engineering research, we must –identify and solve significant software development problems –validate the solutions We will support SE researchers to –engage in collaborations with industry –enable integration of results for more robust conclusions –evaluate, refine, and extend results and methods –package and disseminate results via educational materials and activities

Fraunhofer USA Center for Experimental Software Engineering, Maryland February 6, Educational Benefits To advance software engineering education, we must –teach high-impact methods –offer courses with relevant and timely results –give students experience with realistic artifacts –educate a stronger community of empirical researchers We will support SE educators by –providing material for training students on how to select and tailor, not just apply, the right SE methods and tools –providing realistic artifacts as teaching materials –designing SE educational techniques supporting experimentation

Fraunhofer USA Center for Experimental Software Engineering, Maryland February 6, Long-term Goal We are looking for collaborations with –development projects and support groups –research organizations –educational institutions To help –build, evaluate, and share the empirical experience base –build and validate design principles Evolve the software engineering discipline from fad-based to –empirically-based –scientifically-based –engineering-based

Fraunhofer USA Center for Experimental Software Engineering, Maryland February 6, Results So Far Defect Reduction –Built Top Ten List as evidence of empirical results from inspections –Began combining results of several PBR and Reading vs. Testing experiments, along with further replications at USC, and U of San Carlos (Brazil), NASA Goddard and JPL –Expanded domain of study to identify environmental, experience, and process factors contributing to success; e.g., COQUALMO Experience Base –Experimenting with ways to provide sufficient information to simplify the replication of experiments and contribute to the knowledge base –Developing ways to make knowledge base usable for various user classes –Building cebase.org as a national repository of SE experiences COTS based development –Identifying data from the NASA SEL for the COCOTS model –Characterizing, comparing and integrating the SEL COTS development model, the SEL integration model, and COCOTS/MBASE model –Identifying WBS in the three COTS models