Change management

From Computer Science Wiki
System Fundamentals[1]

Students should understand there are a number of factors that need to be managed to ensure change is successful. The way that change is managed can have significant effects on employers and employees.


SL version[edit]

When you have a system that is working, it is common to get requests to change the system. There is a difference between a feature request, and a bug report. If something if isn't working, a user should file a bug report and report it needs to be fixed. If everything is working and the user wants to change it, we begin the change management process.

The important thing to understand about change management is you MUST carefully consider all the possible ramifications of the change. Changes must be carefully planned, implemented, tested and then refined. We don't just make a change without thinking because this could create unintended problem later on. We could also create technical debt that we will need to pay later. Changes should follow the same process as building software (that is, the design cycle).

Change requests usually originate from:

  • system enhancement requests from users
  • events in the development of other systems
  • changes in underlying structure and or standards (e.g. in software development this could be a new operating system)
  • demands from senior management (Dennis, Wixom & Tegarden, 2002).[2]

HL version[edit]

Change management should be supported by a change management system. This is a system which tracks requests for change, assigns unique ID to a change request, and allows developers to collaboratively work on the change. Every part of a change needs to be recorded and tracked.

The more complex a system is, the more important it is to manage change effectively.

Finally, just because a user requests a change doesn't mean you should make it. Requests for change are related to the stability of a system. If a change would radically change the system, or make it less stable (or secure) the change may have to be denied. Please be careful, because systems must support users. If you do not change, your users will start using better systems.

Real-world practical advice[edit]

"Hey can you change this one little thing for me?". This is a very common request. Here's the thing: users think a request is minimal, "no big deal" or "just a little thing". But because end-users don't have a full picture of a system, they do not have information to evaluate if a change is minimal or if it is more involved.

When a user asks you to change something, you should smile and take a deep breath. You should then spend time carefully understanding exactly what functionality the user wants and how you can best plan and implement the functionality.

In larger organizations, there is a well-established Request For Change process which uses a change request form[3]. Always think before you make a change.

Do you understand this material?[edit]

This is a simple example:

A small business has a computer kiosk inside the store which allows customers to sign up for a email newsletter. If a customer signs up for a newsletter inside the store, they will get a 10% discount on their first purchase at the store. The owner hopes this 10% discount will be an incentive for customers to sign up for the email newsletter. The business will then regularly email the customers special offers and savings. The business owner expects to benefit from this system by having increased sales. The customers expect to benefit from this system by having access to special offers, to save money, and to see what is new and trendy at their store.

Change request: The customers ask the business owner if they could also add their mobile phone number, as they would like to get a text message if the store is having a sale.

Question 1: Describe why we should carefully manage this change process.

Question 2: List the steps you would take to make this change (what would you do first, then next, then next). (this link might help)

Do you have an advanced understanding of this material?[edit]

A school of 900 students has a secure web-based application which manages attendance data. The school administrators carefully track attendance for the students so it can identify when students have been absent for a customizable threshold. For example, the school might set a threshold of 5 absences within 30 days, which then automatically notifies the student, parent, and teacher there is a problem with attendance. The threshold might be 3 times within 10 days, or something like that. The system keeps track of attendance and tardies. The system has customizable attendance codes. For example, "absence for school trip", "excused absence", "medical absence" are all allowed absence codes.

School administrators expect to benefit by having data about attendance so they can support students and parents to be in school. School administrators also expect to benefit by giving parents and students information about attendance (so parents can support their children to be in school). Finally, school administrators expect to benefit by using attendance data to apply for government funding (as they can prove how many students were in class on a specific day).

Parents expect to benefit by knowing when their children are in school or miss school. This way parents can support their children to be in school. Being in school is a shared value between the school and the parent.

Students expect to benefit by understanding how many days of school of they have missed. The school expects students to have a strong "ownership of learning" and manage their attendance.

Change request: a school administrator asks for a card-system, so students touch their id card to a reader and be automatically counted as present. There will be a card reader and camera in every classroom. Students must touch their id card to the card reader and then smile for a camera picture. the picture and information embedded in the card is stored in a database and used to provide evidence the student is present in class.

Question 1: Describe why we should carefully manage this change process.

Question 2: List the steps you would take to make this change (what would you do first, then next, then next) (this link might help).

Standards[edit]

  • Describe the need for change management.

References[edit]