Si no desea ir ajustando todos sus procedimientos almacenados existentes que hacen referencia a la función, creo que necesitaría crear una nueva función con el código de la existente
CREATE FUNCTION CalculateAverageForUser2
(
@userid int,
@param2 nvarchar(10) = NULL
)
RETURNS float
AS
/*Code from existing function goes here*/
Luego simplemente cambie la función existente a la siguiente
ALTER FUNCTION CalculateAverageForUser
(
@userid int
)
RETURNS float
AS
BEGIN
RETURN dbo.CalculateAverageForUser2(@userid, DEFAULT)
END