Assessing Risk Impact Factors affecting the consequences Nature Scope Timing Risk Exposure RE = Prob. x Cost
Recap
Software Engineering II Lecture 20 Fakhar Lodhi
Example Risk Identification Only 70% of the software components scheduled for reuse will, in fact, be integrated into the application. The remaining functionality will have to be custom developed. Risk Probability 80% likely
Risk impact 60 reusable software components were planned. If only 70% can be used, 18 components would have to be developed from scratch. Since the average component will cost 100,000, the total cost will be 1,800,000. RE = 0.8 * 1,800,000 = 1,440,000
Analyze and refine the risk into more detailed risks Risk Refinement Analyze and refine the risk into more detailed risks Example Certain reusable components were developed by a 3rd party with no knowledge of internal design standards Design standards for component interfaces have not been solidified and may not conform to certain existing components
Risk Refinement Certain reusable components have been implemented in a language that is not supported on the target environment
Mitigation/Monitoring Contact 3rd party to determine conformance with design standards Press for interface standard completion; consider component structure when deciding on interface protocol Check to determine if language support can be acquired
Management/Contingency Plan RE computed to be 1,440,000. Allocate this amount within project contingency cost. Develop revised schedule assuming 18 additional components will have to be custom-built Allocate staff accordingly
Risk Mitigation, Monitoring, and Management (RMMM) Assists the project team in developing strategy for dealing with risk An effective strategy must consider: Risk avoidance Risk monitoring Risk management and contingency plan Remember - ‘Avoidance is always the best strategy’
Example Risk rj - High turnover i.e. the rate at which employees are leaving the company is high Likelihood lj = 0.7 or 70% Impact xj projected at level 2 (critical)
Mitigation Strategy for Reducing Turnover Meet with current staff to determine causes for turnover (e.g. poor working conditions, low pay, competitive job market) Mitigate those causes that are under our control before the project starts Once the project commences, assume turnover will occur and develop techniques to ensure continuity when people leave
Mitigation Strategy for Reducing Turnover Organize project teams so that information about each development activity is widely dispersed Define documentation standards and establish mechanisms to be sure that documents are developed in a timely manner (to ensure continuity) Conduct peer reviews of all work (so that more than one person is up to speed) Assign a backup staff member for every critical technology
Monitoring Risk Factors General attitude of team members based on project pressures The degree to which the team is jelled Interpersonal relationships among team members Potential problems with compensation and benefits The availability of jobs within the company and outside it