Depende muito da situação concreta. Vamos assumir que a nova propriedade que você adicionou é obrigatória, ou seja, deve ser definida sempre. Em seguida, você deve pesquisar o código por conta própria e atualizá-lo onde quer que companyObj
seja criado, para garantir que ele seja construído corretamente (incluindo a configuração da nova propriedade). Suponho que o PHP tenha construtores; nesse caso, você só precisará adicionar um novo parâmetro de construtor e o compilador marcará automaticamente cada chamada de construtor sem o parâmetro extra como um erro de compilação. Isso também garantirá que os colegas aprendam sobre a nova propriedade assim que usarem um companyObj
.
Se a nova propriedade for opcional, no entanto, as coisas serão menos claras. Você pode ou não ter um valor padrão adequado para ele. No último caso, eu ainda sugiro que você atualize todas as criações de instância para definir a nova propriedade sempre que apropriado. Isso é para garantir que o código seja mantido em um estado consistente o tempo todo .
Comunicar a mudança aos seus colegas de equipe é outro passo distante aqui. Equipes ágeis preferem comunicação cara a cara e IMHO por um bom motivo. Depender de documentos é um meio muito lento e ineficaz de espalhar informações pela equipe. Um Wiki é um pouco melhor, mas ainda assim, documentar cada atributo de classe é um exagero no IMHO. Isso só se tornará um fardo enorme para a equipe e rapidamente se tornará não confiável e inútil de qualquer maneira, como somos seres humanos, então devemos esquecer a atualização às vezes. Além disso, aposto que muitos membros da equipe não vão regularmente verifique a documentação (seja de que forma for) para se informar sobre as alterações mais recentes do código.
O último também é válido para a documentação gerada automaticamente via, por exemplo, Javadoc ou Doxygen. Embora eles possam ser configurados em uma compilação automática para manter a documentação gerada sempre atualizada, nunca vi uma equipe de desenvolvimento com membros navegando regularmente pela documentação para ser informado sobre as alterações mais recentes do código. E se você estiver usando qualquer sistema de controle de origem, o primeiro lugar para observar as alterações é quando você atualiza sua cópia local do código de qualquer maneira - você pode verificar se há alterações nas classes familiares e ver exatamente o que e como mudou (junto com um breve explicação e / ou referência a um ID de tarefa, se sua equipe estiver acostumada a adicionar comentários significativos nos check-ins - que estarão ausentes nos documentos gerados automaticamente).
A comunicação é uma das principais razões pelas quais as equipes de programação extrema combinam programação. Se você fizer as alterações junto com um companheiro de equipe, há imediatamente dois que sabem sobre cada alteração e, na próxima vez em que cada um de vocês se unir a outra pessoa, informações úteis se espalharão rapidamente. Nem sempre é aplicável, por várias razões. Exceto isso, você pode simplesmente conversar com seus vizinhos sobre a mudança em um momento apropriado (por exemplo, durante o almoço, se por acaso almoçar juntos) ou enviar um e-mail se for uma mudança maior, mais importante ou mais complicada.
Neste último caso, pode haver um bom motivo para documentá-lo corretamente. Os documentos de design do IMHO são melhores quando oferecem uma visão geral grosseira e de alto nível do sistema, enquanto os detalhes da implementação estão no código (aderindo ao princípio DRY ).