SoDIS Project AuditorTM 4.0 A decision support tool using the SoDIS process What is SoDIS? “Software Development Impact Statement” Developed by experts in Computer Ethics Don Gotterbarn of East Tennessee State University and Simon Rogerson of DeMontfort University in the UK., in conjunction with SEERI the Software Engineering Ethics Research Institute Overview Software development failures are common and expensive (eg, INSYS) Minimising the risk of failure in software projects can be managed in two ways 1. 2. Improved project management Analysis of the impact of the process on stakeholders Project Management Widely studied and understood Builds on existing engineering knowledge Many standards and tools available PMBOK MSProject, Gantt charts etc Defined methodologies (eg, SDLC, CMM) Stakeholder Impact Analysis ??? Successful software Does what it is designed to do Timely Affordable Excellent software Positive effect on stakeholders What is a stakeholder? Those directly and indirectly affected by the project and its product SoDIS uses stakeholder impact analysis to identify, evaluate and mitigate risks in the software development process. encourages the developer to think of • people, • groups, or • organizations related to the project and how they are related to the proposed project and its products or deliverables. The SoDIS Project Auditor TM a software package that uses SoDIS to facilitate the process of auditing projects. SoDIS Project Phases 1. 2. 3. Feasibility Analysis Requirements Analysis Detailed Analysis 1. Feasibility Environment section Task Analysis Section Stakeholder Analysis Section Stakeholder/Task Analysis Section 1. Feasibility Environment Section Asks about the presence of those things that will improve the chances for a successful project. Methodology defined Project team selected Deliverables defined Stakeholders identified 1. Feasibility Task Analysis Section Allows user to evaluate the tasks in the project plan Deliverables defined Agreement among stakeholders Risk plan 1. Feasibility Stakeholder Analysis Section Asks about items related to the various stakeholders in a project. The stakeholders in a project need to first be identified. Is project plan acceptable to stakeholder? Is project understood by stakeholder? 1. Feasibility Stakeholder/Task Analysis Section Asks questions about the relationship between each task and each stakeholder. Does this task have an impact that is acceptable to this stakeholder? Etc for all tasks, all stakeholders 2. Requirements Analysis The purpose of the Analysis form is to help identify every requirement where there is an ethical issue potentially compromised for some stakeholder by the completion of that requirement. 2. Requirements Analysis 2. Requirements Analysis Questions are formed for each requirement-issue-stakeholder triple. This form is designed to help identify every requirement where there is a potential ethical issue compromised for some stakeholder by the completion of that requirement . Requirements Analysis 2. Requirements Analysis Having identified any risks Enter concerns/solutions Generate reports for discussion/action 3. Detailed Analysis Considers the impact of the project on stakeholders using a Work Breakdown Structure (WBS) eg MS Project Similar process to Requirements Analysis but in more detail Stakeholder identification Task breakdown SoDIS analysis Conclusion Most software projects are run on an ad hoc basis. Rigorous stakeholder analysis is a new concept for software engineering. SoDIS can help avoid software development failures help produce better software