2 pontos por GN⁺ 2023-12-02 | 1 comentários | Compartilhar no WhatsApp

Sistema de valores do desenvolvimento de software

  • No processo de desenvolvimento de software, o código é lido com mais frequência do que escrito, o que significa que escrever código fácil de manter é um bom investimento.
  • O código não é simplesmente escrito; ele tem o objetivo de fornecer um serviço aos usuários, e a experiência do usuário é importante.
  • Para um desenvolvimento centrado no usuário, é importante mostrar o programa cedo e com frequência aos usuários e obter feedback.

A importância da operação do código

  • O fato de o código ser executado inclui a operação do programa, abrangendo implantação, upgrades, monitoramento etc.
  • Quando o software é executado em um ambiente real de produção, o princípio KISS (Keep It Simple, Stupid) se torna ainda mais importante.
  • Na operação real, é importante entender não apenas o código, mas também cada parte do sistema, e garantir que ele possa funcionar mesmo em situações de falha.

A importância da perspectiva de negócios

  • O desenvolvimento centrado no usuário é válido sob a suposição de que o software fornece valor à organização.
  • Pode ser útil incluir a perspectiva de negócios no processo de desenvolvimento, considerando orçamento, marketing, prazos etc.
  • Ao considerar a organização como um todo, decisões que fazem sentido para o software, a equipe ou os usuários nem sempre são as melhores.

Problemas comuns no desenvolvimento de software

  • Código difícil de manter surge de uma abordagem centrada no autor.
  • Software que não considera a experiência do usuário surge de uma abordagem centrada no desenvolvedor.
  • Software projetado sem considerar a operação surge de uma abordagem centrada no desenvolvedor.
  • Software que não considera a perspectiva de negócios surge de uma abordagem centrada no desenvolvedor.
  • Software que, na prática, não chega a ser operado pode surgir de uma abordagem centrada no negócio.

Opinião do GN⁺

O ponto mais importante deste texto é reconhecer a importância relativa dos diversos elementos no processo de desenvolvimento de software e tomar decisões com base nisso. É importante entender a relação entre usuários, operação, desenvolvedores e negócios, e manter o equilíbrio entre eles. Este texto oferece insights interessantes para desenvolvedores de software e, ao enfatizar a importância dos negócios e da operação, que muitas vezes são facilmente negligenciados no processo de desenvolvimento, pode ajudar a promover uma cultura de desenvolvimento mais eficaz e responsável.

1 comentários

 
GN⁺ 2023-12-02
Comentários do Hacker News
  • Aumento da escala de uso entre designers de linguagem e desenvolvedores da biblioteca padrão, desenvolvedores de módulos, desenvolvedores em geral e usuários finais

    Há uma tendência de a proporção entre designers de linguagem, desenvolvedores de módulos, desenvolvedores em geral e usuários finais aumentar em cerca de 1000 vezes a cada etapa. Isso significa que uma pequena preguiça nas fases iniciais do design da linguagem ou do desenvolvimento da biblioteca padrão pode ter um grande impacto mais adiante.

  • Os motivos para usar um sistema e o papel da gerência intermediária

    O motivo de um usuário utilizar um sistema pode ser simplesmente o fato de a empresa tê-lo comprado e, nesse caso, o desenvolvedor precisa atender mais às exigências da gerência intermediária do que às necessidades reais do usuário. Isso sugere que os usuários podem acabar presos a um produto incompleto.

  • A descoberta do símbolo matemático ≹ para indicar uma relação de comparação

    O símbolo '≹' indica uma relação em que dois objetos não são nem maiores nem menores um em relação ao outro, sem que isso signifique necessariamente que sejam iguais. É uma distinção importante em situações que não podem ser comparadas apenas numericamente.

  • O valor do tempo do desenvolvedor em comparação com o custo de executar código

    O custo de executar um código 1 bilhão de vezes pode ser menor do que alguns minutos do tempo de um desenvolvedor. Também é possível executar o código de uma web API 100 bilhões de vezes usando um servidor da AWS durante um mês. A legibilidade humana do código deve sempre vir primeiro, até o ponto em que a falta de otimização deixe de fazer sentido economicamente.

  • A importância da legibilidade do código

    Se o código não é lido, isso significa que ele também não continuará sendo executado por muito tempo. É uma visão entendida a partir da perspectiva de um iniciante que quer migrar de administrador de sistemas para desenvolvedor.

  • Uma visão crítica sobre a teoria do autor

    Ao reinterpretar verdades gerais para construir sua própria teoria, o autor pode acabar sendo mal compreendido como se estivesse oferecendo um atalho de expressão doloroso e pouco útil.

  • A essência dos negócios e a importância do usuário

    Negócios não existem de fato; são uma estrutura imaginária que ajuda a organizar recursos. O objetivo dos negócios é servir ao usuário e, quando a política interna se torna caótica a ponto de buscar apenas o interesse do negócio, a organização se torna tóxica.

  • A relação complexa entre desenvolvimento, operações e negócios

    Desenvolvimento, operações e negócios não são entidades únicas, mas sim conjuntos de pessoas com diferentes especialidades e papéis dentro da organização. Todos eles influenciam tanto a forma como o código é escrito quanto o momento em que ele é entregue ao usuário.

  • Discussão sobre problemas éticos na indústria de software

    Como tentativa de explicar o desconforto crescente entre profissionais de software, levanta-se a questão da obrigação ética quando o usuário não é o cliente e quando o modelo de negócio tem impacto negativo sobre o usuário.

  • Opinião pessoal sobre a importância relativa de desenvolvimento, operações e negócios

    A importância de desenvolvimento, operações e negócios varia conforme a situação, e reconhece-se que, às vezes, o desenvolvimento pode precisar ser priorizado acima dos negócios ou das operações.