190 likes | 197 Vues
A Qualitative Approach Towards Reliability Estimation of OO System Design. Aiman Rasheed 220306 Research paper presentation as partial fulfillment of ICS-519, Software Metrics. Outline. Introduction Reliability Models Approaches Problem with Traditional Reliability Models
E N D
A Qualitative Approach Towards Reliability Estimation of OO System Design Aiman Rasheed 220306 Research paper presentation as partial fulfillment of ICS-519, Software Metrics
Outline • Introduction • Reliability Models • Approaches • Problem with Traditional Reliability Models • Proposed Approach • Conclusion • Future Directions
Introduction • What is Reliability? “Reliability of software is the probability over a given period of time that the system will correctly deliver services as expected by the user”
Introduction • Why we need Reliability? • Estimate or predict effort/cost of development processes • Estimate or predict the quality of the software
Reliability Models • Reliability Growth Model • Time/ Structure Based Model • Error Seeding Model • Markov Model • Bayesian Network Model
Approaches • Blind approach • Autopsy approach
Problems with Traditional Models • Reliability Growth Models • Huge history of defect data is required • Assumption of representative test coverage • Assumption that fault removal is successful i.e. absence of ripple effect
Problems with Traditional Models • Reliability Growth Models • Assumption of independence of successive software failures during successive software runs • Increasing the reliability level increases the length of the test series required until it becomes infeasible
Problems with Traditional Models • Time /Structure based Model • Test path space is very large • We don’t know the paths to be executed because of dynamic nature of applications.
Problems with Traditional Models • Error Seeding Model • Number of counts do not matter much as compared to the severity of faults • Defect data is needed
Proposed Approach • Design level reliability estimation • Qualitative approach • Higher granularity reliability level • Incremental approach
Proposed Approach • Breaking the System Design into Smaller Components • Efficient software engineering paradigm. • System restoring involves only the specific component. • Easy to maintain and • Helps in overall system reliability estimation.
Proposed Approach • Early Phase Estimation • Use of BBN for reliability estimation of each component System Analyst Opinion System Engg Opinion Other factors Component reliability
Proposed Approach • Early Phase Estimation • For construction of BBN, we can use • DIT • NOC
Proposed Approach • Rank Assignment to Error Prone Classes, Using Heuristics: Key-Class • Distance = f(coupling, size-complexity, ) • Where is angle from x-axis
Proposed Approach • Redesigning of Higher Order Ranked Classes • First to see the component with high failure probability • Secondly, redesign the class that has the highest rank
Proposed Approach • Non-probabilistic Confidential Level Design Analysis Through Coupling • Drawing out factors that affect Reliability • Drawing out factors that affect coupling • Analyzing the overlapping factors
Conclusion • Achievement of highly reliable system by attaining high design level reliability. • Precise reliability achievement by addressing high ranked classes • Independent of defect data in the beginning. • Incremental approach.
Future Directions • Kind of coupling is not specified for calculating the distance. Different kinds of coupling can be tested for better estimation. • Empirical validation can be done.