change management in software engineering
TRANSCRIPT
Agendao Change Management
o Sources of Software Change
o Objective of Change Management in SE
o SW Change Management Procedures
o Change Management Roles
o Change Management Process
o Tools
o Tips to Make it seamless
Change ManagementChange management is the discipline that guides how we :
o Prepare
o Equip
oSupport individuals to successfully adopt change
oIn order to drive organizational success and outcomes.
How ?oBy assuring that all proposed changes are evaluated
oBy prioritizing changes
oBy requiring that all changes are thoroughly tested
oA back-out plan
oBy ensuring that the configuration management system is updated to reflect the effect of any changes.
Facts oNo matter where you are in the system life cycle, the system will change
oThe desire to change it will persist throughout the life cycle
oThe services should be stable, reliable, and predictable.
oThe services should be able to change rapidly to meet evolving business requirements.
requirements
definition
specification &
design &
coding &
testing
acceptance
testing
Change
Source of Change in SE
Change Management
New customer needs
New market conditions
Business reorganization
Budgetary or scheduling constraints The performance or
reliability
New equipment
Errors must be repaired
Objective of Change Management in SEoTo maximize speed-to-competence at minimized cost – this is the basic conundrum faced by executives.
oTo effectively control risk – in people as well as process.
o To recognize resistance to formal change management and to use activities within change management specifically targeted to overcome that resistance. This is a recursive approach which is almost unique across the portfolio of everyday management processes.
SW Change Management Procedures
Request for change review
Change planning
Change approval
Change implementation
Change closure
1
2
3
4
5
Change Management Roles
Recognizes and identifies the need for changeChange Initiator
Risk and impact, implementation plan, progressChange Coordinator
Prioritizing, evaluating, outcomeChange Manager
Schedule a meeting with ,how to proceedChange Advisory
Board
Approve or RejectApprover
SpecialistsChange
Implementation Team
Change Management Process
Creating a Request for Change
Reviewing and Assessing a Request
for Change
Planning the Change
Testing the Change
Creating a Change Proposal
Implementing Changes
Reviewing Change Performance
Closing the Process
1 Creating a Request for Change
Incidents that necessitate the change
Description of how the change would be implemented
The impact that the change would have on all associated systems
A risk assessment
Contact information for everyone involved in the change
An outline of who will need to approve the request
A backup plan to follow in case the change is not successful
Impact AnalysisIt provides accurate understanding of the implications of a proposed change.
Which helps the team make informed business decisions about which proposals to approve.
Three aspects:
1- Understand the possible implications of making the change.
2- Identify all the files, models, and documents.
3- Identify the tasks and estimation of efforts.
Impact AnalysisChecklist of possible implications of a proposed change.
Checklist of possible software elements affected by a proposed change.
Impact AnalysisIdentify the sequence in which the tasks must be performed.
Determine whether the change is on the project’s critical path
Estimate the impact on project’s schedule and cost.
Evaluate the change’s priority by estimating the relative benefit, penalty, cost, and technical risk compared to other discretionary requirements.
Report the impact analysis results
In most cases, this procedure shouldn’t take more than a couple of hours
2 Reviewing
Evaluate the request based on its priority , impact analysis
If requests relate to problems that have already been addressed.
Determine who would be responsible for fulfilling the request.
Implementers’ ability to dedicate time to making the change.
4 Testing
Test will demonstrate the procedure to be followed in case the change request is approved.
Testing the change gives you the opportunity to work out any problems in the procedures that you have developed .
5 Creating a Change Proposal
Outlines the type of change.
The priority associated with a change request
The outcomes that could occur if the change is not made
6 Implementing Changes
Implementing a change is not a simple process.
Once the change has been made, tests must be done.
If the change is not successful , backup plan.
7 Reviewing Change Performance
Understand whether your change procedures are working as expected.
Determine the accuracy of estimates that were made before a request was fulfilled.
Reviewing change performance gives you the opportunity to fine-tune your change management process for better results in the future
8 Closing the Process
You must be sure that the entire process has been documented in a database that all stakeholders can access .
ToolsBug Tracking Tools (Bugzilla)
Requirements Management Tools (JIRA)
Tasks Management (JIRA)
Time and Resources Management (MS Project)
Code Management (Team Foundation , Source Safe)
Tips: Stay calm and stress-free when software changes are heading your wayTESTING. Testing. One. Two. One. Two.
Know your users
Don’t rush it
Push it. Push it REAL good
DON’T GO BACK
References
• http://www.strategy-business.com/article/rr00006?gko=643d0
• https://www.linkedin.com/pulse/software-change-5-tips-make-seamless-lindsay-riggs
• http://www.bmc.com/guides/itil-change-management.html
• http://www.drdobbs.com/software-change-management/184415707
• http://change.walkme.com/top-4-change-management-software/
• book Software Requirements, 2nd Edition (Microsoft Press, 2003), describes how the impact analysis activities might work. (http://www.jamasoftware.com/blog/change-impact-analysis-2/)
Thank You ! Software Construction
Hiba M. Ghannam
10-17-2016
We do not need magic to change the world, we carry all the power we need inside ourselves already: we have the power to imagine better.