A general cause based methodology for analysis of common cause and dependent failures in system risk and reliability assessments