Rivka Schwartz Newbie Poster

Hi ,
In the next month i will be involved in java project that deal with the changes of code that depends on some upgraded version .
I am a student so i have never seen before upgrade code ,I really want to understand how the upgrade work , what are the changes for example? which are the problems that upgrade deal with?

Maybe one simple thing that i know about upgrading versions will help to explain my question,
for example :
at the previous version : [CODE] void foo( int num ); [/CODE]
at the new version the same function but : [CODE] void foo(int num1, int num2 ); [/CODE]
so , at the code that depends on this software any where there is call function [CODE] foo(/some number/) [/CODE] , now we will need to send two numbers [CODE] foo(/some number/ ,/some number/); [/CODE]

I will appreciate any answer ,and will be happy to expand my understanding .

Thanks ,
Rivka :)