CEN 4021 Software Engineering II Adjustments and Actions

  • Slides: 22
Download presentation
CEN 4021 Software Engineering II Adjustments and Actions (POMA) Instructor: Masoud Sadjadi http: //www.

CEN 4021 Software Engineering II Adjustments and Actions (POMA) Instructor: Masoud Sadjadi http: //www. cs. fiu. edu/~sadjadi/ sadjadi@cs. fiu. edu CEN 4021 17 th Lecture

Acknowledgements Dr. Onyeka Ezenwoye Dr. Peter Clarke CEN 4021: Software Engineering II 17 th

Acknowledgements Dr. Onyeka Ezenwoye Dr. Peter Clarke CEN 4021: Software Engineering II 17 th Lecture 2

CEN 4021: Software Engineering II 17 th Lecture

CEN 4021: Software Engineering II 17 th Lecture

Agenda Adjustments and Actions (POMA) – Planned – Unplanned CEN 4021: Software Engineering II

Agenda Adjustments and Actions (POMA) – Planned – Unplanned CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Software projects are subject to changes, imperfect planning, and necessary trade-offs.

Adjustments and Actions Software projects are subject to changes, imperfect planning, and necessary trade-offs. The manager should not be afraid to take action and make adjustments when necessary. Examples of staff beliefs and attitudes that may warrant change are: – Believing or hoping that a problem will go away by itself – Believing that making changes is a sign of weakness and lack of commitment – Not realizing that changes and actions are needed CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions – Being afraid of changes – Not knowing what options are

Adjustments and Actions – Being afraid of changes – Not knowing what options are available and what adjustments to make If actions are not taken when needed, several unpleasant outcomes may result: – Projects may fail – Projects may barely get completed while taking a great toll on the organization CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Adjustments are often necessary due to: Changing software requirements Discovery of

Adjustments and Actions Adjustments are often necessary due to: Changing software requirements Discovery of an unfeasible design Loss of skilled team members Financial constraints It is very important to do a thorough risk analysis during the planning stage of the project. CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Project managers must first recognize the need to take action and

Adjustments and Actions Project managers must first recognize the need to take action and evaluate the risks of not taking action. It is essential to document why an adjustment is needed and the risk of not taking action. After an adjustment the monitoring process dictates if further adjustments and modifications are necessary. CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Taking Actions Some changes are planned for deliberately, others occur in

Adjustments and Actions Taking Actions Some changes are planned for deliberately, others occur in response to an event (unplanned). Key metrics and measurements are defined during the planning activity. Analyzing the measurements during the project will indicate if an adjustment and action is to be taken. It is a good idea to monitor deviations from the project plan at regular meetings. Problems should not drag on to other meetings. CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Steps in Taking Actions Recommended approach to dealing with situations requiring

Adjustments and Actions Steps in Taking Actions Recommended approach to dealing with situations requiring urgent actions: 1. Clearly state the problem. 2. Communicate the problem while working on the potential solutions to it. 3. Seek out the root cause of the problem and any relevant solutions. 4. Gain the necessary agreement for the chosen solution. 5. Act on the solution. CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Steps in Taking Actions 6. Communicate the actions 7. Report on

Adjustments and Actions Steps in Taking Actions 6. Communicate the actions 7. Report on the status of the problem’s resolution. manager must always exhibit good leadership and set the proper tone. The above 7 steps may involve sub-steps. CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Change management – A set of activities directed towards controlling changes.

Adjustments and Actions Change management – A set of activities directed towards controlling changes. – May include identifying, assessing, measuring and tracking changes. – May not include the actual solution discovery process. CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Change management Once a solution is chosen the manager must ensure

Adjustments and Actions Change management Once a solution is chosen the manager must ensure that all stakeholders agree on it. Implementing a particular solution may require: – acquiring more resources – changing assignments – changing schedules – Scaling back features All of the above alternatives will call for the cooperation of the team members, including managers. CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Change management In some situations the customers may be consulted, particularly

Adjustments and Actions Change management In some situations the customers may be consulted, particularly concerning deliverables and budget. If the solution necessarily involves dramatic changes to the project’s schedule, functionality, or resources, then the manager must consult both executives and customers as early as possible to win their support for the proposed solution. CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Change management List of potential targets for change: – The product's

Adjustments and Actions Change management List of potential targets for change: – The product's functional and nonfunctional requirements – A process methodology – Schedule – The customer’s expectations – Tools CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Planned adjustments managers should regularly plan on making adjustments throughout the

Adjustments and Actions Planned adjustments managers should regularly plan on making adjustments throughout the project cycle. Management team may decide to have a planned adjustment at the end of each of the project activities e. g. , requirements analysis, design, implementation and coding, testing, and integration. Key metrics are always reviewed before potential adjustments are made – functionality, resources, and schedule. CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Unplanned adjustments Unplanned activities usually come in response to unanticipated requests

Adjustments and Actions Unplanned adjustments Unplanned activities usually come in response to unanticipated requests or incidents. Most of these unplanned requests and incidents involve high-priority or crisis-level problems. For example a customer suddenly requests a tighter schedule or a key member of the project team leaves, causing direct changes to one of the three main parameters: – functionality, resources, schedule. CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Unplanned adjustments Any change in one of the three main parameters

Adjustments and Actions Unplanned adjustments Any change in one of the three main parameters of functionality, resources, or schedule should evoke a corresponding adjustment in one or both of the other two parameters. This adjustment should not be delayed, and the actions must be taken with urgency. CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Unplanned adjustments Functionality changes: – Changes in functionality takes more effort

Adjustments and Actions Unplanned adjustments Functionality changes: – Changes in functionality takes more effort and time than defining changes in resources or schedule. – The cumulative effect of these simple changes can topple and entire project. – Changes made in the earlier stages of software development require less effort and have smaller effects on the project schedule and resource costs. – A problem found during testing may require multiple changes and rework in previous completed areas such as design, code, test cases, and test analysis. CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Unplanned adjustments cont Functionality changes: – Adjusting functionality, resources and schedule

Adjustments and Actions Unplanned adjustments cont Functionality changes: – Adjusting functionality, resources and schedule will certainly have implications for the budget. – Too many projects have failed due to the problem of everincreasing functionality, known as “scope creep”. – Scope creep: Unexpected, gradual increase in work units. The accumulated effect of these increases is often underestimated and potentially poses a high risk to the project. CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Unplanned adjustments Resource changes – Adjustments need to be made to

Adjustments and Actions Unplanned adjustments Resource changes – Adjustments need to be made to the schedule or product functionality if a change in the resources occurs. – Managers must understand that they need to adjust functionality or schedule unless the organization is lucky enough to have replacement talents in waiting, which is highly unlikely. – Changes in human resources, tools, processes, or the budget will require adjustments to either schedule or functionality. CEN 4021: Software Engineering II 17 th Lecture

Adjustments and Actions Unplanned adjustments Schedule changes – Most of the time the, request

Adjustments and Actions Unplanned adjustments Schedule changes – Most of the time the, request adjustment is to shorten the schedule for reasons such as marketplace competition, customer needs, or budget needs. – Adding resources in terms of people or tools may not improve the schedule. – A schedule can be shortened if there are sub-activities that can be performed in parallel. – The availability of a new or different methodology or tool may also shorten a sub-activity. CEN 4021: Software Engineering II 17 th Lecture