Benjamin J. Deaver Advisor – Dr. LiGuo Huang Department of Computer Science and Engineering Southern Methodist University.

Slides:



Advertisements
Similar presentations
Nursing Diagnosis: Definition
Advertisements

Configuration management
Configuration management
Verification and Validation
New Technologies Supporting Technical Intelligence Anthony Trippe, 221 st ACS National Meeting.
1 Requirements and the Software Lifecycle The traditional software process models Waterfall model Spiral model The iterative approach Chapter 3.
© 2005 by Prentice Hall Appendix 2 Automated Tools for Systems Development Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F.
Case Tools Trisha Cummings. Our Definition of CASE  CASE is the use of computer-based support in the software development process.  A CASE tool is a.
The Experience Factory May 2004 Leonardo Vaccaro.
Funding Networks Abdullah Sevincer University of Nevada, Reno Department of Computer Science & Engineering.
Automatic Classification of Accounting Literature Nineteenth Annual Strategic and Emerging Technologies Workshop Vasundhara Chakraborty, Victoria Chiu,
Software Quality Metrics
School of Computing, Dublin Institute of Technology.
Computer Engineering 203 R Smith Requirements Management 6/ Requirements IEEE Standard Glossary A condition or capability needed by a user to solve.
Copyright 2002 Prentice-Hall, Inc. Chapter 4 Automated Tools for Systems Development 4.1 Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer.
Automated Requirements Traceability Study of the Analyst Presented by Jeff Holden Advisor Alex Dekhtyar.
Fundamentals of Information Systems, Second Edition
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Verification and Validation.
Software Engineering Tools and Methods Presented by: Mohammad Enamur Rashid( ) Mohammad Rashim Uddin( ) Masud Ur Rahman( )
Handouts Software Testing and Quality Assurance Theory and Practice Chapter 11 System Test Design
1CMSC 345, Version 4/04 Verification and Validation Reference: Software Engineering, Ian Sommerville, 6th edition, Chapter 19.
© 2005 by Prentice Hall Appendix 2 Automated Tools for Systems Development Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F.
What is Business Analysis Planning & Monitoring?
Chapter : Software Process
OOSE 01/17 Institute of Computer Science and Information Engineering, National Cheng Kung University Member:Q 薛弘志 P 蔡文豪 F 周詩御.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
More on Data Mining KDnuggets Datanami ACM SIGKDD
Appendix 2 Automated Tools for Systems Development © 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 2 Slide 1.
9 Closing the Project Teaching Strategies
Verification and Validation Yonsei University 2 nd Semester, 2014 Sanghyun Park.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Verification and Validation.
Project Management: Still More Art Than Science Presented By Donald W. Larson AC Bronze, CL June 6, 2007.
Chapter 2 The process Process, Methods, and Tools
System Analysis and Design
Why Use MONAHRQ for Health Care Reporting? May 2014 Note: This is one of seven slide sets outlining MONAHRQ and its value, available at
1 ISA&D7‏/8‏/ ISA&D7‏/8‏/2013 Systems Development Life Cycle Phases and Activities in the SDLC Variations of the SDLC models.
Testing : A Roadmap Mary Jean Harrold Georgia Institute of Technology Presented by : Navpreet Bawa.
Bloom's Taxonomy: The Sequel (What the Revised Version Means for You!)
Product Documentation Chapter 5. Required Medical Device Documentation  Business proposal  Product specification  Design specification  Software.
Software Engineering Spring (C) Vasudeva VarmaClass of 32 CS3600: Software Engineering: Process and Product* *Most of the Content drawn.
Yazd University, Electrical and Computer Engineering Department Course Title: Advanced Software Engineering By: Mohammad Ali Zare Chahooki 1 Machine Learning.
Software Product Line Material based on slides and chapter by Linda M. Northrop, SEI.
Configuration Management and Change Control Change is inevitable! So it has to be planned for and managed.
Software Architecture Evaluation Methodologies Presented By: Anthony Register.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
HNDIT23082 Lecture 06:Software Maintenance. Reasons for changes Errors in the existing system Changes in requirements Technological advances Legislation.
Information Systems System Analysis 421 Chapter 3 Managing the Information Systems Project.
Chapter 4 Automated Tools for Systems Development Modern Systems Analysis and Design Third Edition 4.1.
Requirements Engineering
1 Experience from Studies of Software Maintenance and Evolution Parastoo Mohagheghi Post doc, NTNU-IDI SEVO Seminar, 16 March 2006.
Thomas L. Gilchrist Testing Basics Set 3: Testing Strategies By Tom Gilchrist Jan 2009.
Software Configuration Management SEII-Lecture 21
ANALYSIS PHASE OF BUSINESS SYSTEM DEVELOPMENT METHODOLOGY.
DevCOP: A Software Certificate Management System for Eclipse Mark Sherriff and Laurie Williams North Carolina State University ISSRE ’06 November 10, 2006.
Toward a New ATM Software Safety Assessment Methodology dott. Francesca Matarese.
Systems Development Process and Methodologies Dr. T. Ravichandran.
Appendix 2 Automated Tools for Systems Development
Lecture 3 Prescriptive Process Models
Modern Systems Analysis and Design Third Edition
CSC 480 Software Engineering
CGS 2545: Database Concepts Fall 2010
Business System Development
Software Requirements
Verification and Validation
Trace requirements. What do we mean by the term “Trace”? Why should we trace? 2 Requirements Life Cycle Management Trace Requirements.
Requirements and the Software Lifecycle
Modern Systems Analysis and Design Third Edition
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
System Analysis and Design:
Presentation transcript:

Benjamin J. Deaver Advisor – Dr. LiGuo Huang Department of Computer Science and Engineering Southern Methodist University

 The Requirements Traceability Matrix (RTM) is utilized to: ◦ Link deliverables to requirements ◦ Identify Overlap ◦ Ensure fulfillment  Critical Change Management Tool ◦ Highly effective in identifying collateral impact of change  In dynamic landscapes, the RTM can easily fall out of a known validity ◦ Rapid Change

 One of the major challenges facing the implementation of traceability is the cost. ◦ Systems grow in size and complexity ◦ Systems become more dynamic ◦ Manual generation of RTM is a tremendous undertaking  When the is manual generation required?  “After each change” may not be feasible.  “Allowing multiple changes may result in missed overlaps

 Dynamic Landscapes ◦ Rapidly changing requirements ◦ New requirements being generated ◦ Concurrent development being implemented  Identifying Overlap before problems arise  Growth in Size and Complexity ◦ Over time, a system being constructed has a tendency to grow larger. ◦ With growth comes complexity. ◦ Size and Complexity can generate overlap and reuse.

 What is the value of knowledge about the changing Requirements Traceability? ◦ We can certainly understand the cost associated with the RTM.  The value of understanding the impact of change to a System / System of Systems  The value of understanding the impact of change to a RTM

 How is the problem being solved today? ◦ Many different areas of research focus on the effective utilization of the RTM. ◦ Not a significant amount of research built around determining confidence in the RTM and determining the need for regeneration.  Automated RTM Management  Manual Generation and Management  IR Techniques

 Automated RTM Management ◦ Software with the purpose of maintaining the links between requirements and deliverables. ◦ Effective for the mining of information from an RTM. ◦ Ineffective at generating the RTM. ◦ Highly ineffective at identifying the effectiveness of the RTM as systems evolve without additional assistance.

 Manual Generation of the RTM. ◦ Intensely time consuming. ◦ Requires high levels of expertise and knowledge of the system in question. ◦ Based on the effort required for generation, a risk of being outdated before full generation exists.  Research is being conducted in the area of speeding the delivery of the RTM. ◦ Significant increases, but still significant effort. ◦ Value Based RTM Generation.

 Information Retrieval Methods ◦ Several areas and methods are being researched ◦ Latent Semantic Analysis of artifacts ◦ Clustering of artifacts ◦ Effectiveness varies greatly  ~50% precision and ~50% recall are median results.  Precision or recall can be increased at the expense of the other.  Not effective enough to make decisions regarding change management.

 Identify the confidence in an RTM based on changes since generation. ◦ All changes will be classified according to some generated taxonomy of change. ◦ Based on this taxonomy of change, what changes will have the greatest impact on the RTM? ◦ What combinations of changes will indicate a loss of confidence in the RTM?

 Taxonomy of Change ◦ All change can be broken into set categories. ◦ Taxonomy may be different for  Software Engineering  Systems Engineering  Systems of Systems Engineering

 Requirements Engineers are familiar with ◦ Deliverables ◦ Requirements ◦ The RTM linking the two  Based upon the changes applied since the last generation of the RTM ◦ Changes are classified via their respective Taxonomy of Change ◦ The order of change may have an impact as well  Interesting follow up questions generated from this model.

 Develop a tool which will mine changes from version management systems and identify changes. ◦ Attempt to automate the classification of change in a taxonomy of change.  Results in a system which will ◦ Rapidly identify the types of changes taking place ◦ The order of the changes taking place ◦ The statistical likelihood of the RTM being impacted by change  Confidence in the RTM is derived from this data.

 Based on the number of changes seen in a system, the confidence in the RTM will diminish ◦ Confidence being the likelihood of correctness ◦ We expect different types of change to have different impact

 Utilize OSS projects with a substantial version history ◦ Gantt ◦ ReactOS ◦ jHotDraw  Utilize validated traces as a starting point for further analysis.  Identify and classify changes between known versions.  Retrace at major (stable) releases.  Based on the impact of changes between traced versions, we will derive the statistical model.

 Utilize Traces Generated by Institute for Software Engineering and Automation ◦ Reuse methods for creation of additional traces for additional releases of software ◦ Working closely with Dr. Alexander Egyed  Utilize Software Engineering Graduate Students to create Taxonomy of Change  Tool to Automatically Mine Changes and classify them.

 Examine the totality of changes between versions. ◦ Based on the types of changes that have taken place, evaluate the total impact. ◦ Identify the impact of individual changes. ◦ Based on the types of change identified, identify the impact of changes.  Other interesting questions. ◦ Do some changes appear together? ◦ Are certain combinations more impactful? ◦ At some number of changes, does it no longer matter what kind of change is being made?

 Requirements for tracing have been identified and documented in all three OSS projects.  Initial Traces have been collected.  Data gathering exercises have begun with Gantt versions. ◦ > ◦ >  Examination of change repository data for projects is being conducted.

 Our research is still in the preliminary phases. ◦ Initial examination of results (Gantt) is scheduled for the end of ◦ Taxonomy of change has been identified. ◦ Frequency and Impact of different types of change is being analyzed. ◦ Original hypothesis will be tested based on collected Gantt data.  Results of this experiment will drive the continuation of research in this area.

 Modification of taxonomy will allow for rapid scaling between: ◦ Software Engineering ◦ Systems Engineering ◦ Systems of Systems Engineering  Knowledge of RTM Reliability  A greater understanding of the impact of specific types of change to a System / SoS.  A greater understanding of the impact of specific types of change to the RTM

 Few conclusions at this time. ◦ The Taxonomy of Change has been established.  Initial research shows that all change can be accounted for.  New categories may be uncovered with additional research.  Future Work ◦ Should all change be included in the research?  Changes that are later reversed?  Delta of change to a version is 0, but what if other changes occur between the initial and reversal?

 Follow up questions or comments can be directed to Benjamin Deaver 