Gerenciamento de projetos ágil: como criar qualquer coisa digital | Alexander F | Skillshare

Velocidade de reprodução


1.0x


  • 0.5x
  • 0.75x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Gerenciamento de projetos ágil: como criar qualquer coisa digital

teacher avatar Alexander F

Assista a este curso e milhares de outros

Tenha acesso ilimitado a todos os cursos
Oferecidos por líderes do setor e profissionais do mercado
Os temas incluem ilustração, design, fotografia e muito mais

Assista a este curso e milhares de outros

Tenha acesso ilimitado a todos os cursos
Oferecidos por líderes do setor e profissionais do mercado
Os temas incluem ilustração, design, fotografia e muito mais

Aulas neste curso

    • 1.

      Apresentação

      1:44

    • 2.

      Desenvolvimento de cachoeiras

      3:05

    • 3.

      Desenvolvimento ágil

      3:35

    • 4.

      Cerimônias ágeis

      2:57

    • 5.

      Membros e habilidades da sua equipe

      8:38

    • 6.

      A fase de ideação

      3:53

    • 7.

      A fase de descoberta

      4:13

    • 8.

      A fase de descoberta (design e roteiro)

      5:08

    • 9.

      A fase de desenvolvimento

      4:51

    • 10.

      A fase de teste (#1)

      4:14

    • 11.

      A fase de teste (#2)

      4:40

    • 12.

      A fase de lançamento

      4:33

    • 13.

      Conclusão

      2:11

  • --
  • Nível iniciante
  • Nível intermediário
  • Nível avançado
  • Todos os níveis

Gerado pela comunidade

O nível é determinado pela opinião da maioria dos estudantes que avaliaram este curso. Mostramos a recomendação do professor até que sejam coletadas as respostas de pelo menos 5 estudantes.

292

Estudantes

1

Projetos

Sobre este curso

Quem é este curso para:

  • Gestores de projetos interessados em desenvolvimento ágil de software
  • Desenvolvedores e designers que querem mudar para uma posição de gerenciamento (projeto)
  • Inovadores com ótimas ideias para um produto digital, mas não sei onde começar ou qual conjunto de habilidades é necessário

Requisitos

  • Não é necessária nenhuma experiência de programação ou design.
  • Você deve estar curioso para descobrir como criar um produto digital do início ao fim (por exemplo, como gerente de projeto no início da carreira ou o desejo de criar sua primeira inicialização)

Os objetivos deste curso são:

  • Entenda a diferença entre cachoeira e desenvolvimento de software ágil
  • Defina os papéis e responsabilidades de uma equipe de desenvolvimento ágil
  • Conheça o ciclo de vida de desenvolvimento de software (SDLC) do início ao fim
  • Internalize a importância do teste regular de clientes e adaptando seu produto

Vamos abranger três temas principais:

Tema 1 - Abordagem de gerenciamento de projetos para desenvolvimento de software: cachoeira vs AgileWaterfall
e ágil são as metodologias mais prevalentes de processos. Cachoeira é uma metodologia sequencial onde tarefas são tratadas em um processo principalmente linear. Agile, por outro lado, é uma metodologia iterativa que incorpora um processo iterativo e colaborativo. Como selecionar a metodologia correta para seus projetos vai depender da preferência e da natureza de cada projeto. Vamos dar uma olhada em ambos.

Tema 2 - Sua equipe de desenvolvimento de software
multifuncional TeamThe equipe multifuncional é composta pelo Scrum Master, proprietário de produtos, Developer, analista de negócios e designers para citar apenas alguns. Todos eles têm uma definição mínima de responsabilidades e responsabilização para permitir que equipes ofereçam trabalho de forma eficaz. Ela vamos dar uma olhada mais detalhada em cada um deles, sem esquecer a ênfase crucial em seu cliente.

Tema 3 - Ciclo de
vida de desenvolvimento de software ágil E2EAo adaptar um ciclo de vida de desenvolvimento de software ágil (em suma, SDLC), você vai se beneficiar de uma abordagem iterativa para design, desenvolvimento e teste de seu recurso de software. Vamos dar uma olhada mais detalhada em cada etapa que seu recurso sublinha: desde sua fase de ideação inicial e preencher os requisitos iniciais, até as fases de desenvolvimento de construção e teste, antes de lançar o produto para o mercado do cliente

No final deste curso, você vai:

  • Conheça a diferença entre desenvolvimento de software ágil e cachoeira

  • Aprenda sobre os benefícios e desvantagens de cada metodologia

  • Esteja ciente de reuniões típicas do ágil para usar em sua vida cotidiana: planejamento de sprint, standups, demonstrações e retrospectivas

  • Entenda os papéis e responsabilidades principais dos membros da equipe

  • Reconhecer a importância de colaboração regular com seus clientes

  • Capaz de explicar cada fase do ciclo de vida de desenvolvimento de software ágil

  • Tenha confiança em iniciar uma fase de ideação ou iniciar um processo criativo

  • Entenda o que é preciso antes de qualquer desenvolvimento de código ocorrer - desde requisitos para escrever desenhos até planejar projetos para planejar a infraestrutura de tecnologia

  • Tenha em atenção a importância de testes regulares do seu software, tanto em um manual como de forma automatizada

  • Saiba como lançar seu aplicativo para amigos e familiares

  • Seja campeão em reunir feedback de seu cliente e recriar seu produto em conformidade, para melhorar e lançar mais rápido e com mais sucesso

Conheça seu professor

Teacher Profile Image

Alexander F

Professor

Alexander is a Senior Delivery Lead in London focused on delivering digital transformation across Retail, Financial Services and the Public Sector. Specialising in digital product strategy, planning and delivery, he has built new propositions and led major programmes of change for clients across the UK, Ireland, Hong Kong, Canada, and Austria.

 

Visualizar o perfil completo

Level: Beginner

Nota do curso

As expectativas foram atingidas?
    Superou!
  • 0%
  • Sim
  • 0%
  • Um pouco
  • 0%
  • Não
  • 0%

Por que fazer parte da Skillshare?

Faça cursos premiados Skillshare Original

Cada curso possui aulas curtas e projetos práticos

Sua assinatura apoia os professores da Skillshare

Aprenda em qualquer lugar

Faça cursos em qualquer lugar com o aplicativo da Skillshare. Assista no avião, no metrô ou em qualquer lugar que funcione melhor para você, por streaming ou download.

Transcrições

1. Introdução: Olá e seja bem-vindo. Aqui está um resumo muito rápido deste curso. Este é um curso que não vai te ensinar como fazer nenhuma codificação. A não vai te ensinar como projetar uma interface de usuário brilhante. Ele não demonstrará a você como anunciar e lançar um aplicativo para se tornar viral em toda a Internet. Agora, em vez disso, este curso fornece uma visão geral completa do ciclo de vida de desenvolvimento de software Agile que você pode aplicar a qualquer produto digital você preveja desenvolver. E isso explica quais membros da equipe e conjuntos de habilidades você precisa apontar com você para ter sucesso. Meu nome é Alex. Estou sediado em Londres, Reino Unido e nos últimos dois anos tenho trabalhado como sênior de elite e gerente sênior de elite e projeto em grandes projetos de transformação digital, normalmente para bancos, consumidores, clientes de varejo e cuidados de saúde. Ao final deste curso, você saberá a diferença entre o desenvolvimento de software Agile e Waterfall. Você entende as principais funções e responsabilidades dos membros da equipe e de uma equipe de desenvolvimento ágil, incluindo a sua própria no formulário como gerente de projeto. E você poderá explicar cada fase do ciclo de vida de desenvolvimento de software ágil, que inclui a fase de ideação , desenvolvendo requisitos, projetando e construindo seu software e mostrando que é testado regularmente e, eventualmente, chegando a lançá-lo no mercado. O curso é muito voltado para iniciantes, colocando que combina interessados em desenvolvimento de software. Você já pode ser um desenvolvedor ou designer júnior querendo mudar para uma posição de gerenciamento de projetos. Ou talvez você seja um inovador com uma ótima ideia para uma ferramenta digital. Mas você não tem certeza por onde começar ou qual conjunto de habilidades é necessário, caso em que este curso é para você. Se isso soa interessante, então vamos começar e entrar direto nisso. 2. Desenvolvimento de cachoeira: Portanto, a abordagem dentro do mundo do desenvolvimento de software, eles tendem a ser duas idéias-chave para as principais abordagens para o desenvolvimento de software. Uma é a aproximação da cachoeira e a outra é a ágil. Waterfall é uma metodologia sequencial onde a tarefa é um pouco mais linear. Enquanto, em contraste, o ágil é uma metodologia muito iterativa, que inclui um processo cíclico e colaborativo. É um debate muito acalorado o que é melhor e o que é melhor. Na minha opinião pessoal, dependerá muito da preferência pelo seu projeto, seu conjunto de habilidades e natureza do projeto. E se você precisa de um processo iterativo ou talvez gravar um sequencial. No entanto, certamente há um viés, eu diria 20 como desenvolvimento ágil no desenvolvimento de software. E, como resultado, vamos nos concentrar nisso hoje. No entanto, vamos mergulhar na cachoeira rapidamente apenas para que você tenha um entendimento também. O modelo em cascata é definitivamente o mais antigo e direto. Basicamente, terminamos uma fase e depois começamos a próxima página. É muito fácil, muito direto. Então, como resultado ou como exemplo neste slide, você pode querer fazer toda a análise do projeto primeiro e depois, e só então você inicia seu desenvolvimento de back-end. Eles são definitivamente alguns benefícios que podem ser, que podem ser discutidos para desenvolvedores e clientes concordaram muito cedo sobre o que realmente será construído. No início, você define a análise, você define o escopo do trabalho. E isso torna o planejamento sem dúvida, um pouco mais direto. De forma semelhante progride facilmente medido. Você tem esse escopo completo de trabalho em mente. E, como resultado, você pode facilmente dizer o quanto já foi construído com isso. Como resultado, o software pode ser projetado completamente e com muito cuidado com base na compreensão completa de todos os produtos de software. Mas, mais uma vez, isso é da teoria. E há definitivamente muitas desvantagens que foram vistas na prática real. Talvez o mais importante, eu diria que é a falta de eficácia dos requisitos. Se você começar, quando você inicia um novo projeto, a realidade é que você não sabe de nada. Você não sabe sobre a complexidade, você não sabe como construir nada ainda. Você não sabe o que o cliente quer, como o mercado vai responder. Então, o que quer que você analise no início, talvez não seja completamente significativo no final depois de lançar o produto. Então, mais uma vez, quaisquer pequenos detalhes que possam ser deixados de fora, detalhes que podem estar completamente errados. Eles então segurarão todo o processo que quer descoberto. E, como resultado, um projeto não só fica atrasado, mas se torna bastante caro. Além disso, uma vez que você lança algo depois de um longo tempo analisando, desenvolvendo e testando, bem pode ser que o produto no final seja completamente indesejável ou talvez desatualizado no momento em que da vida. Portanto, a possibilidade de um cliente estar insatisfeito com o produto de software entregue é definitivamente alta. E mais uma vez, isso se torna caro. 3. Desenvolvimento ágil: Então, quando se trata de ágil, uma rápida lição de história aqui é cerca de 2000, 2001 as pessoas se reuniram, os desenvolvedores de software se reuniram e compartilharam muito a frustração sobre o atual estado das coisas, como o desenvolvimento de software estava sendo abordado. E, mais importante, todos concordam que o planejamento excessivo e a documentação do desenvolvimento de software são ineficientes. E realmente o que importa é agradar seus clientes e isso está sendo perdido. Então, como resultado, eles introduziram e criaram o desenvolvimento ágil de software. desenvolvimento ágil de software tende ou procura dividir todo o trabalho de desenvolvimento em marcos menores. E você cria seu aplicativo, seu produto em uma série de ciclos. Então, mais uma vez, em vez de construir tudo e depois lançar, você só se concentra em um determinado recurso que você inicia e, em seguida, você prossegue cada ciclo como visto neste slide, nós iremos inclua que você estágios semelhantes, como uma cachoeira, você faz algum planejamento, faz os testes de desenvolvimento e revisa. Mas, mais uma vez, crucialmente, você envia e, em seguida, lança para os clientes no início. E, como resultado, cada versão fornece um campo de testes onde rapidamente você deve receber feedback do cliente, do mercado real. E com base nisso, você pode iterar e alterar seu produto para as necessidades reais do cliente e do mercado. Realmente, a principal consideração aqui quando se trata de ágil é que o cliente está no coração da equipe de desenvolvimento e o cliente trabalha muito, muito juntos. Eles colaboram, e é o cliente que os hóspedes veem e usam o produto no início e, como resultado, podem fornecer feedback. E com base nisso, as coisas mudam o tempo todo. Não há nenhum plano linear que esteja sendo seguido. Mas depois de um lançamento rápido, é o cliente quem fornece seus comentários e o plano está sendo adaptado de acordo. Existem alguns princípios-chave que surgiram que criamos como resultado. E isto é, queremos nos concentrar em indivíduos e interações em processos e ferramentas. São as pessoas, os clientes que no centro de tudo, não é processado ou ferramentas ou você pode ter estabelecido uma vez, vamos adaptar as coisas o tempo todo de forma semelhante. É um software funcionando, coisas reais que estão funcionando e sendo usadas. Isso é mais importante do que documentação excessivamente abrangente, planos de projeto e assim por diante. Absolutamente, é importante escrever coisas para compartilhar conhecimento, mas o software de trabalho é a coisa mais importante. Eu meio que já insinuei isso. A colaboração com o cliente é fundamental. A realidade da vida é, olha, o cliente não sabe o que quer. Eles provavelmente não vão acertar na primeira vez e mudarão de ideia. Então, trabalhar duro com os clientes, mas essa é uma espécie de realidade do trabalho. há absolutamente nenhum sentido de ter um contrato em vigor e aderir ao contrato. Quando se verifica que um cliente não está absolutamente interessado foi escrito. O que está escrito nele? Sim. Portanto, tudo está se adaptando ao feedback do cliente para investir o que eles encontram. Em vez de aderir a algo que foi negociado há muitos, muitos anos. E isso realmente me leva ao último ponto. Só estamos, você quer responder à mudança. Você não quer seguir um plano que foi configurado há algum tempo, mas sim, você responde ao que o cliente percebeu. Se você estiver mais interessado, esses princípios dão uma olhada no Manifesto Ágil que foi estabelecido pelos desenvolvedores de software em 2001. É um fundamento fundamental para o desenvolvimento eficaz de software que está sendo usado o tempo todo em todos os grandes projetos. No software. 4. Cerimônias ágeis: Eu realmente quero abordar cerimônias ágeis, o que é uma palavra muito chique para reuniões. Vou apenas abordar 44 cerimônias principais de reuniões-chave que estão sendo usadas dentro, dentro do desenvolvimento de software. E que planejamento de sprint, planejamento de sprint. Há muito mais detalhes por trás disso, mas bastante abstrato, de nível bastante alto, isso significaria que você planeja o que vai construir na próxima semana ou assim. Então, todos os desenvolvedores, analistas, designers e assim por diante, especialmente os clientes e gerentes de produto se reúnem e decidem qual é o próximo recurso, qual é a próxima coisa que nós quer construir? Uma mulher se compromete com isso dentro dessa sessão de planejamento. E o objetivo é construir algo nas próximas duas semanas e morrer. E novamente, seguido pelo lançamento que vimos que vimos agora. A próxima coisa é dirigir o stand-up diário. Você terá que se levantar. Dito isso, acho que a maioria das equipes realmente faz. Mas dentro do nome é diário e é a equipe se unindo. E a ênfase aqui é muito na comunicação, comunicação regular dentro do stand-up diário. E é realmente apenas uma sessão de 15 minutos todas as manhãs, você comunica o que fez ontem, o que está planejando fazer hoje. E, mais importante, se você tem algum problema de risco que você tenha onde precisa de ajuda. E assim todo desenvolvedor, analista, designer, quem estiver na equipe funcional, como parte da reunião. E, como resultado, rapidamente você recebe atualizações de cada membro da equipe e entende onde todos estão e se alguém precisa de ajuda. Quando se trata de comunicação, comunicação visual é importante. Você quer visualizar o que realmente está sendo construído. Você quer receber feedback rapidamente. E, como resultado, você tem uma demonstração de sprint pode acontecer toda semana e acontecer cada duas semanas ou mais. Mas a ideia por trás disso é novamente, você quer compartilhar, então ele foi falhar muitas vezes você quer obter feedback muitas vezes em uma bacia que quer iterar. Portanto, uma demonstração de sprint pode ser qualquer coisa desde algum desenvolvimento que foi feito, até um novo design, até alguns comentários dos clientes que você possa ter recebido. A ideia é que, em todas as várias funcionalidades, várias funções dentro da equipe, você quer ter um compartilhamento transfronteiriço para os membros da equipe o que está acontecendo. Por fim, há uma retrospectiva. Realmente tudo o que diz é que a equipe se reúne após determinados períodos de tempo. Ele tende a ser depois de um sprint que foi concluído. Sprint pode ser qualquer coisa de uma semana, duas semanas, quatro semanas no máximo. Mas a ideia é que a equipe se reúna e discute o que correu bem dentro desse ciclo de trabalho e o que tem que ser melhorado. Mais uma vez, é uma ferramenta para comunicação. Garantir que as pessoas colaborem, certificando-se de que todos estejam felizes, certificando-se de que a equipe trabalhe de forma eficiente. E realmente que qualquer uso de um risco pode ser atenuado em qualquer spreads futuros. 5. Seus membros e habilidades de equipe: Então teorias, notas, metodologia são incríveis. Nenhum deles importa. Se você não tem algo para colocar em prática. Para colocar algo em prática, você precisa de pessoas reais, você precisa de uma equipe. Então, nesta seção, forneceremos uma visão geral rápida de como é uma equipe ágil típica. Claro, não se engane como sempre. Depende do tamanho dos gastos, complexidade e da maturidade do seu projeto. Mas a ideia é ter uma ideia do tipo de membros típicos da equipe. Então, muito famoso mesmo software é fácil, as pessoas são gostosas e eu ficarei bem. Pessoalmente, acho que isso é verdade. Então invista em sua equipe. Vamos dar uma olhada. Em primeiro lugar, no mundo ágil, esse é o Scrum Master de uma palavra extravagante. Se você quiser, você pode perdoá-lo a dizer o gerente de projeto, gerente de programa. Há nuances nisso, mas por uma questão de visão geral de alto nível, acho que podemos dizer que talvez o caso de um scrum master seja responsável por repetir uma cola entre todos, entre todos os partes interessadas, pessoas, desenvolvedores, analistas, designers recusam o cliente e assim por diante. Foi então que gerenciou o processo de planejamento. Eles conduzem várias versões, facilitam o planejamento de versões. Eles são responsáveis pelo agendamento de todas as cerimônias ágeis que mencionamos. Eles fornecem acesso a ferramentas e pessoas. E, como exemplo, qualquer coisa que sai de uma reunião diária de standup, verdade, as ações que eles são responsáveis pelas suas até encontrarem o dono certo. Scrum master também é relatado sobre o status do projeto para todas as direções para baixo e para cima. Eles chamam isso de suporte à liberação de coordenadas. Eles são responsáveis por avaliações de risco. Então olhe, como você pode ver, é um trabalho muito diversificado, conjunto diversificado de responsabilidades que é difícil de definir. Mas, na verdade, eles querem ajudar a proteger a equipe e desbloquear quaisquer problemas e garantir que os processos ágeis sejam seguidos para serem eficientes e efetivos em seu desenvolvimento. Cada produto com um proprietário de produto, alguém que é responsável pela visão para a visão de curto prazo e de longo prazo. E, portanto, o proprietário do produto normalmente é o CEO do produto realmente. Eles são responsáveis pelo mercado e pelo business case por qualquer tipo de análise competitiva. Eles tendem a ser especialistas do setor, conhecendo a indústria e os clientes de dentro para fora. Eles têm uma ideia do retorno sobre o investimento e o lucro líquido. Eles estão representando seus clientes. Muitas vezes, mais do que não, é o proprietário que vem com os requisitos. Alguém que prioriza o trabalho e, portanto, representa o que o cliente, pelo menos o que ele acha que o cliente quer. Então, uma pessoa crucial e crucial dentro da equipe. Os analistas de negócios geralmente se sentam muito perto do proprietário do produto. Porque, como eu mencionei, os requisitos são frequentemente determinados pela parte do corpo sobre isso. Mas, na verdade, é atual no nome que o analista de negócios é responsável por qualquer solução analítica. Eles aumentam o valor comercial colaborando com o proprietário do produto. Eles criam um backlog de produtos, o que, novamente, é uma palavra extravagante de dizer um conjunto de requisitos. Eles podem desenvolver um caso de negócios trabalhando em estreita colaboração com a parte Maja. E então, o mais importante, eles anotam os requisitos. Então eles, eles, eles não param no alto nível, mas eles realmente entram nos detalhes, anotam todos e os transmitem para o resto das equipes. Muitas vezes, na maioria das vezes, os requisitos sempre devem ser feitos em equipe. Mas é o negócio dessa responsabilidade realmente elaborá-los em transmitido ao fazer, por exemplo, um plano de sprint. Por fim, eles podem apoiar as práticas ágeis. Eles incentivaram a melhoria dos serviços e, claro eles se tornam especialistas dentro de certas funções. O UX e o designer de UI, há uma importante diferenciação entre UX e UI. Ux designer, por exemplo, pode estar conduzindo pesquisas com usuários. Eles estão criando persona do usuário, que é uma representação dessa pesquisa do usuário. Eles podem determinar a arquitetura de informações de um produto digital. Eles podem estar esboçando fluxos de usuários, ou podem estar esboçando o que um aplicativo, o que um design, design poderia olhar, amar. E então, com base nisso, eles criam protótipos que estão sendo testados. Enquanto, em contraste, mas nem sempre exclusivamente, um designer de UI coloca isso em um design de interface de usuário real. Eu, design de alta fidelidade parece bom e parece o produto final que está sendo desenvolvido pela equipe de desenvolvimento. Portanto, no geral, responsável pelo mapeamento de jornada, os fluxos de ponta a ponta estão sendo definidos e projetos são responsáveis por estar juntos com os clientes. Tente entender o que eles procuram. E fazer muitos testes e seguida, traduzir isso em um design real. Um desenvolvedor, novamente, em um nome, desenvolve certos recursos, mas acho importante que existem responsabilidades adicionais. Isso geralmente está sendo negligenciado. Os desenvolvedores são cruciais para estimar o tamanho de quaisquer novos requisitos em qualquer avaliação da viabilidade técnica. Eles ajudaram a entender o que pode ser feito, em que período, quão complexo e pode ser, o que pode ser necessário e assim por diante. Então, eles se ovalizam junto com uma equipe, ajudam a implementar os itens de backlog. Eles garantem que teste está sendo feito para tudo que as matrizes que estão sendo feitas estão sendo projetadas e definidas. Além do desenvolvimento real, eles também garantem o controle de qualidade. Não está apenas sendo desenvolvido, mas também está sendo testado minuciosamente antes, antes de entrar no estágio de envio para o mercado. E eu mencionei testes, mencionei antes que eles estejam testando muitas vezes, também são negligenciados. É absolutamente crucial que você teste seu aplicativo, que você teste seus novos futuros antes que ele seja enviado para o mercado. E assim, a qualidade dos testadores de controle de qualidade garante a garantia. Eles são responsáveis por escrever planos de teste, o que impôs a aceitação geral de novos recursos. Eles fizeram isso tão mentalmente. E eles também automatizam essa abordagem geral. Desenvolvedores e testadores trabalham muito juntos e integram a base de código continuamente com essas compilações manuais e automatizadas que testes funcionais e testes de regressão e assim por diante. E entraremos nos detalhes dos testes mais tarde só porque acho que é tão importante. Mas, mais uma vez, testes à medida que medem a qualidade que eles encontram em primeiro lugar para melhorar a qualidade. E eles impuseram um problema de qualidade como e as melhores práticas com isso estão sendo realizadas o tempo todo. Agora, não se engane. Esses são apenas alguns exemplos. As equipes são pequenas e grandes, dependendo da maturidade, complexidade e tamanho do seu projeto, você precisará de arquitetos de soluções para definir o cenário geral da tecnologia. Você precisa ter determinados ambientes disponíveis onde você pode testar, escrever, codificar e, eventualmente, implantado. Você quer ter certeza de que os lançamentos estão sendo feitos de forma automatizada. Você provavelmente quer alguém que gerencia seus dados. Você precisa de uma equipe de operações, use pesquisadores, redatores. Você quer ter certeza de que o produto de ponta a ponta é seguro. E novamente, quando se trata de, você pode precisar de alguns advogados são alguns conselhos de conformidade e assim por diante. Então, ele realmente não pára por aí. Mas o importante é que a equipe multifuncional típica, talvez composta por esses membros da equipe ágil que foram mencionados. Esquecemos o mais importante e temos enfatizado algumas vezes e, portanto, deveríamos mais uma vez. É seu cliente. Você deve estar o mais próximo possível de seu cliente quanto puder. Você projeta para seu cliente, não para si mesmo. E esse é o erro número um. Vemos o tempo todo. Achamos que sabemos o que o cliente quer, mas na verdade só construímos para nossas próprias necessidades e pensamentos. Sim, claro, existem outras pessoas como eu e, portanto, deve ser a coisa certa que estamos construindo. Confie em mim, você não sabe e estará errado ou no prédio. Portanto, faça com que seu cliente conduza a pesquisa do cliente o tempo todo testes com os clientes e da forma ágil que discutimos, o lançamento geralmente faça isso cedo, faça isso o tempo todo e aprenda com os erros. Aprenda com o feedback que um cliente fornece a você. 6. A fase de ideação: Certo, falamos sobre o ciclo de vida do ciclo de vida do desenvolvimento de software o tempo todo. E é muito simples, pois pode ser visualizado assim. Você tem uma ideia. Você quer se envolver em uma fase de descoberta em que você expõe a ideia um pouco mais uso de requisitos definidos e você se acumula. Então, primeiro conjunto de designs. Em seguida, você o constrói, você o testa e, em seguida, você inicia. Mais uma vez, nós dentro do mundo ágil aqui. Portanto, não confunda isso com a metodologia em cascata, mas sim você está olhando para um certo futuro que está construindo. Sim. E então você fornece um lançamento e você faz isso de novo e de novo e de novo e de novo. Nós dissemos antes, todo bem começa com uma ideia. As chances de você ter um ou você pode ter absolutamente nenhum, ambos como perfeitamente bem. Em ideia. Raramente acontece quando você se senta, você tem que trabalhar para isso. E se você não tem ideia suficiente, então tudo bem. O melhor lugar para começar é realmente se treinar todos os dias e pensar, você sabe, qual é o problema e o que é uma solução potencial na minha vida cotidiana? Você realmente quer se perguntar o tempo todo, por que fazemos as coisas de uma certa maneira? Existe uma maneira melhor de resolver um problema? E se você puder identificar um problema ou uma espécie de ineficiência do mercado, se quiser. Você já está na metade do caminho. Agora. Há muitas maneiras de criar ideias legais e certamente iria muito além do escopo deste curso para explorá-las todas, vou colocar algo na descrição, se puder. Mas, mas o que eu gosto e sempre uso é a criação e o uso da jornada do cliente. A jornada do cliente realmente não passa de um processo que meio que analisa o que o usuário passa. Digamos que, por exemplo, um usuário possa estar olhando o seu site de comércio eletrônico que você está construindo. No início, há um dia de estágio de descoberta. Eles precisam descobrir o fato de que seu site existe, quer possuir ou eles podem navegar, eles passam pelo que pode ser comprado em seu site. Eles pensam nisso. Eles fazem uma avaliação de like, vale meu tempo e meu dinheiro para fazer essa compra? E então, eventualmente, eles fazem sua compra onde potencialmente estão bastante ansiosos com isso até verem sua auto-confirmação final que o pagamento foi concluído. E essa é a experiência de ponta a ponta. Você quer procurar cada um desses estágios no site de ação que o usuário passa. Então, por exemplo, no estágio de descoberta, você está em uma espécie de estágio de consciência. Você está tentando descobrir sobre o serviço que está prestando. A ação pode ser que você abra o aplicativo, o site que você pode ver tutorial, e o tipo de emoção do usuário neste momento é que eles são curiosos e depois o bebê, mas cético em termos de o que você está tentando vendê-los. Mas eles são curiosos. Enquanto um inconsciente na fase de compra mais tarde, eles agora estão convencidos sobre seu produto e você está vendendo dia. Eles têm o desejo de tê-lo. E a ação é fazer o pagamento e depois fazer o checkout. Mas a emoção aqui é muito mais do que eles estão estressados e eles estão procurando afirmação de que eles absolutamente indefinidamente deveriam estar fazendo os pagamentos de pontos de compra e espero que sejam então posteriormente, feliz por ter feito isso. E o ponto que estou tentando fazer aqui é dentro da jornada do cliente em si, essa é uma habilidade de entender o que o usuário está sentindo, o que eles são e, crucialmente, o que você pode melhorar dentro de uma jornada existente. Ou, mais importante, o que você pode criar uma nova jornada e um novo produto ou novo projeto é algo que pode encantar o cliente, algo que os deixa felizes ao entender o que os vários processos, quais são as várias etapas, ao entender o que o cliente passa , é sua capacidade, sua oportunidade de melhorar e tornar esse processo muito suave. 7. A fase de descoberta (tecnologia): Agora, com uma ideia em mente para o seu projeto, você quer se certificar de entrar um estágio de descoberta antes de realmente construir qualquer coisa. A ideia por trás do estágio de descoberta é reforçar suas necessidades, brincar com o primeiro conjunto de designs para visualizar como um produto poderia ser. Você provavelmente não está surpreso quando eu digo que você pode até virar, provavelmente deve até testar com clientes que já estão nesta fase. E também para determinar como o aplicativo realmente será construído, quais tecnologias serão usadas? Então, com isso em mente, começaremos com a visão geral da solução. Neste ponto, é o arquiteto de soluções do líder tecnológico e os vários desenvolvedores se unindo. E eles querem transmitir e determinar a visão geral da solução. Está fornecendo uma visão geral de como cada componente será construído e mastigando Isso será bem construído. Portanto, uma visão geral da solução é um esqueleto de um programa, de uma característica de um projeto por falta de um elemento importante nessa arquitetura de projeto, você pode colocar em risco o sucesso de todo o seu projeto. Não podemos enfatizar isso o suficiente. A arquitetura adequada permitirá economizar muito tempo, energia e custos no futuro. Você quer ter certeza de que você acerta isso. Agora, qualquer, qualquer design de arquitetura geralmente é composto por várias camadas dentro do aplicativo, como a camada de apresentação no topo. Isso é o que o usuário tende a ver que, como a interface do usuário carrega componentes, o design de interação, isso é o que o usuário realmente tende a visualizar ao usar seu produto. Abaixo está uma camada de negócios que envolve ou inclui toda a lógica de negócios ou os processos, todos os fluxos. E, por último, abaixo disso está a camada de dados, que por sua vez inclui toda a sua lógica de dados antiga, o próprio banco de dados e assim por diante. Isso, por sua vez, está sendo embrulhado. Você quer ter certeza de que você tem segurança em vigor, qualquer tipo de configuração. Não vamos entrar em todos os detalhes aqui é obviamente um trabalho muito complexo, e isso está sendo feito geralmente por um arquiteto de soluções, pelo líder tecnológico e pelos vários desenvolvedores da sua equipe que juntos transmitir e imaginar como seu produto está sendo construído a partir de um ponto de vista da camada tecnológica. Como sempre duvidam de inúmeras abordagens e tecnologias em suas linguagens de programação que podem ser usadas para, para construir um design técnico de alto nível ou em uma pilha de tecnologia curta. E, como sempre, todos eles têm pontos fortes e deficiências. Alguns são mais baratos de usar, mas talvez menos desempenho. Outros podem levar muito mais tempo para serem implementados. Pode ser até exagero ou ser um melhor desempenho. Como resultado. A pior possibilidade é construir em uma pilha de tecnologia moribunda ou não confiável. Então, queremos ter certeza de que você não faça isso. Se você cometer esse erro, talvez seja necessário reconstruir o aplicativo inteiro novamente. Ou você paga um prêmio para desenvolvedores avançando. E novamente, sem entrar em muitos detalhes, há tão poucos princípios fundamentais que quero destacar quando se trata da pilha. E isto é, você quer construir com base nos seguintes princípios. Tem que ser eficiente. Sim, então seu aplicativo precisa executar as tarefas e executar as funções em qualquer condição. Portanto, ele tem que ser confiável com qualquer tipo de carga, qualquer tipo de quantidade de usuários que estão no seu, em sua plataforma. Deve ser flexível. A solução escolhida tem que ser fácil de mudar. Você pode alterar elementos e isso não deve influenciar que o todo, todo o projeto automaticamente, de forma negativa. Você deve ser capaz de estendê-lo. Então, você quer ser capaz de adicionar quantas funções quiser aplicativo 2D. importante ressaltar que ele deve ser escalável. Deve ser sempre possível estender. A arquitetura, deve permitir desenvolvimento direto e vários segmentos paralelos. E, por último, testabilidade. Você deve ser capaz de testar a arquitetura facilmente, que significa que o número de erros diminui e sua confiabilidade aumenta. Mais uma vez, esse é o trabalho do arquiteto de soluções. 8. A fase de descoberta (Design e roteiro: Indo, entrando em uma esfera completamente diferente em termos de trabalho. Design UX previamente mencionado. E, novamente, isso é da visualização de como poderia ser o produto. Sim, então aqui na fase de descoberta, começamos criando designs e telas, e começamos a atribuir cada função e dados. Tudo bem que eles moram em vários lugares. Você não tem ideia de onde ele se senta no momento atual, você apenas brincando. E, na maioria das vezes, esse processo ocorre em quadros brancos, em papel ou, como você pode ver atualmente na tela, algum tipo de ferramenta de rabisco onde você pode se certificar de que pode jogar muito rapidamente e mude as coisas rapidamente sem levar muito tempo. A ideia aqui é que você quer fazer alterações, você quer fazer isso agora, em vez de mais tarde no processo. Atualmente, é muito mais barato apagar algo. Então, mais tarde, na biblioteca, você tem que reescrever o casaco inteiro. Certo. Fluxos de trabalho são os caminhos, os usos podem viajar dentro do seu aplicativo. Sim, Então, novamente, dentro disso, você quer considerar cada uma das coisas que o usuário deve estar fazendo em uma determinada tela, quantos cliques são necessários para concluir uma ação. Você quer ter certeza de que cada clique é um aditivo de dois que realmente não leva muito tempo ou trabalhe para realizar alguma coisa. À medida que você encontrar problemas com seu fluxo de trabalho, atualize esses wireframes. Então, o que vemos e esses rabiscos são chamados de wireframes lá em cima, depois comece novamente testes com um cliente, garante que ele funcione antes de você entrar em alguns projetos mais complexos. O que você tende a fazer aqui também é usar protótipos. Então, o modelo de cliques é onde você coloca todos esses wireframes juntos e tem a capacidade clicar neles como se fosse um aplicativo real, mas sem ter feito nenhum desenvolvimento real. Mais uma vez, se uma maneira fantástica testar algo no telefone muito rapidamente para testes mais realistas e obter feedback imediatamente a partir daí. Esta é uma maneira fantástica de entender quais são suas necessidades. É nisso que entra um analista de negócios. Então, digamos, por exemplo, que uma UX está em perigo determinou um tipo de design UX no lado esquerdo. Como você pode ver, temos um menu onde quer que barra de pesquisa tenhamos algum tipo de filtro no topo, você tem várias coisas diferentes. Então, clique em oficinas ou marketplace ou o que quer possa estar nesse aplicativo específico. E assim foi facilmente transmitir atualmente visualmente precisa ser colocado em mais detalhes em 3D, que se torna o backlog de requisitos. Assim, os analistas de negócios trabalharão conjunto com o proprietário do produto, com designers, com os desenvolvedores para garantir a visão e que os projetos estão sendo colocados em requisitos reais. E eles estão sendo definidos com detalhes mais antigos que são necessários para que o desenvolvedor realmente construa. Por fim, e novamente, um aspecto completamente diferente do trabalho é o roteiro do produto. É nisso que entra um proprietário do produto, o CEO do produto. E dentro da fase de descoberta, você quer ter uma ideia. Não precisa ser muito preciso, mas você quer ter uma ideia dos temas de alta prioridade que ajudarão todos a realmente focar seu tempo e energia para fazer algumas coisas. Va eles bem, produto ágil, roteiro é a ideia por trás disso como uma ferramenta de navegação. Sim, ajuda as equipes a se concentrarem em onde estão, onde estão indo, mas também lhes dá a liberdade de corrigir o curso conforme necessário. Por exemplo, se formos fundamentais no momento, entendemos o que estamos construindo nos próximos meses. Mas ainda é a liberdade de mudar e adaptar o que pode ser construído no segundo trimestre, quarto trimestre. Então, realmente um roteiro de produto ágil é uma visualização de estratégia de alto nível, e está focado em resultados, em vez de saídas e conversas, e temas e épocas em vez de recursos. Portanto, nada é definido nesse ponto. Então, visualização e indicação do que está por vir. E isso ajuda a comunicar a estratégia do produto com as outras partes da organização e com um cliente. E garanta que você receba buy-in de sua equipe e das principais partes interessadas. No geral, essa foi uma visão rápida de várias coisas que você pode estar fazendo na fase de descoberta. Como sempre, há muito mais. Isso depende do projeto. Mas veja, garantir que você tenha uma base tecnológica sólida e uma visão geral da solução é absolutamente crucial. Você quer ter uma espécie de opção para visualizar como o produto final poderia ser e testá-lo com os clientes. No início. Você quer ter uma ideia dos requisitos que estão sendo construídos no primeiro conjunto de semanas estão sendo feitas pelo analista de negócios. E você quer garantir que o CEO do produto, esse proprietário do produto seja capaz de transmitir a visão e para onde vamos, não apenas nas próximas semanas imediatas, mas realmente com uma visão de longo prazo diz e como é o produto final para se parecer. Se isso for feito além qualquer outra coisa que você possa ter que fazer, entraremos na fase Bill. 9. A fase de desenvolvimento: Ok, construiu provavelmente um dos períodos mais interessantes e intensos dentro do projeto, indiscutivelmente a fase de ideação e descoberta, bem como a fase de lançamento no final, leva significativamente menor tempo do que a fase de construção, pode muito bem ser 70%, 80% do projeto de ponta a ponta que você lidará com a fase Bill e, como resultado, em incrivelmente importante, mas também onde a maioria das coisas dá errado. E então eu preciso ser melhorado. É um processo longo e não quer ser negligenciado. Vamos dar uma olhada rápida no dia a dia de trabalho para a equipe, que está dentro do mundo ágil, você estará seguindo. Esse fluxo de trabalho aqui é de alto nível novamente, seja, você tem o backlog de requisitos que você reuniu anteriormente. E assim, todos os dias realmente, você escolherá qual item você vai enfrentar. Você vai colocar isso no OpenFlow. E, ao longo do tempo, isso deve ser selecionado para estar em andamento, estou sendo desenvolvido. Ele entra na garantia de qualidade da coluna de controle de qualidade onde está sendo testado. Uma base nisso. Se for passivo for feito e se não tiver passado, ele volta para o em andamento. maioria das vezes, isso realmente acontece fisicamente em uma parede, em um quadro branco, ou similares, é claro, pode ser feito digitalmente também. Mas muitas vezes, são apenas um monte de cartazes que estão sendo entregues de coluna em coluna. E é uma ótima maneira de as equipes visualizarem o trabalho que está sendo feito. E bancos de dados, especialmente fazendo um stand up para visualizar e transmitir a todos o que está sendo trabalhado ativamente. E muito rapidamente você poderá ver se há algum impedimento, se há algum bloqueador. Por que um determinado bilhete, por que certos requisitos não estão avançando? Então esse é o fluxo de trabalho geral de ponta a ponta. Você toma um requisito e trabalha no seu caminho através das várias etapas do fluxo de trabalho. E ponto de vista de análise de negócios ruim. Agora é o objetivo escrever as histórias de usuários, os requisitos que eles são, eles são chamados de histórias de usuários. E, como exemplo, se você pegar, por exemplo, o menu, seja esse agora certo recurso, certos requisitos. Você tende a escrevê-lo no seguinte formato, que é o, você define para quem ele é. Portanto, nesse caso, é um usuário que já bloqueou seu aplicativo como um usuário autenticado e, em seguida, define o objetivo para esse usuário específico. Então, neste caso, quero acessar o menu lateral que é o desejado como objetivo. E então você diz, bem, por quê? Então o que, o que é, e daí? E assim você define isso como um para que, neste caso, eu possa visualizar qualquer tipo de recursos adicionais que possam estar disponíveis dentro do produto. Então, mais uma vez, a Diocese do negócio fora desse trabalho. Isso entra em muito mais detalhes, mas em alto nível está listado como uma história de usuário. Onde você encontra quem é o usuário? O que eles querem fazer, qual é a ação e por quê? Qual é o objetivo? Então, como usuário autenticado, quero acessar um menu lateral para que eu possa visualizar quaisquer recursos adicionais que retocam uma tarefa de nível muito alto para o analista de negócios. De forma semelhante, um designer de UX que já abordamos antes definiu vários fluxos de trabalho. Berries, telas UX, telas experientes nos EUA que podem olhar para cima, parecem assim. Neste ponto, você pode rabiscar e certamente nada que você queira enviar e lançar no mercado real. Então, agora é neste momento o tipo de tarefas para os designers colocarem isso em algo um pouco mais brilhante, em uma interface de usuário real. E por isso pode, por exemplo, se tornar algo assim. Sim, você vai de uma interface UX e isso é então interpretado pelos designers a partir da interface do usuário final ou os desenvolvedores vão realmente pegar e desenvolver Naturally. Então também temos que construir, absolutamente não vamos entrar nisso neste curso em particular. Muitas e várias maneiras de construir código, passando por diferentes idiomas e assim por diante. Haverá um curso totalmente diferente, totalmente diferente. Então, vamos ter que pular isso. Mas, mais uma vez, tenha em mente que estamos seguindo a metodologia Ágil em nosso exemplo específico. Sim, então vamos passar pelo fluxo de trabalho de análise, cobrando tudo por um determinado recurso e eles o lançarão muito rapidamente para que recebamos feedback do cliente imediatamente. Antes de fazermos isso, há um aspecto que eu quero enfatizar e isso é testar. Portanto, não vamos abordar o desenvolvimento hoje, mas acho que o teste é algo que queremos dar uma olhada rapidamente antes que qualquer futuro seja lançado. Ele deve fazer um teste completo de alimentos, e deve fazer isso o tempo todo, idealmente, deve ser feito automaticamente. Então, vamos dar uma olhada nisso. 10. A fase de teste (#1): Então, testando, agora mencionei muitas vezes o quão crucial e extremamente importante encontro testes e estou dentro de qualquer parte do ciclo de vida de desenvolvimento de software. Felizmente, hoje em dia, a tecnologia nos permite uma vida muito mais fácil dos testes da cápsula e muitos deles podem ser automatizados, enquanto alguns aspectos, é claro, ainda precisam ser feitos manualmente pelo desenvolvedores, todos os testículos, equipes de garantia de qualidade ou mesmo negócios fora disso, quem quer que talvez gerentes de parque e assim por diante. se estamos analisando o aplicativo, No entanto, se estamos analisando o aplicativo, o teste é crucial, então vamos dar uma olhada nos vários tipos de testes normalmente estão sendo feitos. Um deles é o teste unitário, geralmente em uma ação degenerada feita pelos desenvolvedores. Eles usam testes manuais ou automatizados e garantem que cada unidade em seu software atenda aos requisitos do cliente. Então, mais uma vez, você pode testar esses casos de teste, principalmente o que, é claro, é demorado. Demora muito tempo, é repetitivo e, portanto, exige um pouco de esforço. Uma boa notícia é, no entanto, ferramentas automatizadas de automação de testes nos dias de hoje, elas podem permitir que você grave e salve um teste e, portanto, você pode repeti-lo quantas vezes for necessário sem mais intervenção humana. Portanto, sempre que nova frieza sendo desenvolvida e implantada antes da implantação, um desenvolvedor deve escrever seu teste de unidade e executar os testes unitários, garantindo que essa nova peça específica do o código foi completamente testado com base no requisito. Em seguida, testes de integração, absolutamente cruciais. Pense nisso como modelos individuais estão sendo testados pela primeira vez isoladamente como parte de testes unitários. Mas depois que isso for concluído lá, então integrado. Então, se você estava pensando, pense nisso como um prédio, um carro, você pode estar testando as portas, você talvez, você sabe, testando o motor, aquele porta-malas, seja qual for a cor, seja qual for. Mas, em seguida, um a um, integrando lentamente isso também como um único sistema. E, portanto, o teste de integração garante que qualquer tipo de novo código altere qualquer coisa que você adicionar ao sistema geral, não afeta a funcionalidade existente do software. Você quer garantir verificar se o comportamento combinacional faz sentido. Você deseja validar se os requisitos são implementados corretamente ou não. Muitas vezes, isso é seguido por testes do sistema, o que significa que queremos testar todo um sistema. Todos os modelos, todos os componentes são integrados para verificar se o sistema funciona como esperado ou não. Mais uma vez, se você pensar no exemplo do carro, é ótimo que você tenha verificado completamente se cada item individual foi testado por unidade. Você não verificou se todos eles estão integrados e integrados testados ao montar o carro. Mas, por último, não se esqueça que todo o carro em si ainda precisa ser verificado para todos os vários aspectos diferentes, requisitos e precisa ser conduzido sem problemas, tem que ter as quebras e engrenagens corretas e precisa trabalhar por milhares e milhares de milhas continuamente. A cor precisa fazer sentido. Portanto, o sistema como um todo também foi uma parte crucial a ser testada e isso está sendo feito após os testes de integração como parte do teste do sistema. Posso ter mencionado o cliente de tempos em tempos neste curso, e nenhuma surpresa aqui, então teste de aceitação do usuário é comumente referido como em resumo UAT. E recompensa isso significa que é, você sabe, mostrar o produto ou o recurso a um cliente e ele faz o teste adiante. Então, pessoas reais, clientes reais determinaram se acham que o software que você criou pode ser aceito , pode entrar ao vivo. Portanto, isso não é tão automatizado quanto os exemplos anteriores. Em vez disso, essas são sessões intensivas de tempo, mas esperamos que sessões irregulares, onde pessoas reais, usuários reais se reúnem como parte de pequenos grupos. Isso pode ser uma família na França, eu posso ser os primeiros adotantes, que podem ser usuários avançados, que podem ser pessoas pelas quais você paga dinheiro. E realmente você quer ter várias maneiras de testar que você quer às vezes apenas mostrar o software e perguntar o que eles pensam. E, por outro lado, você pode querer ser muito específico e escrever casos de teste e fornecer amostras muito específicas a serem exploradas por esses usuários específicos. E então eles têm muitas oportunidades de fornecer feedback a você. 11. A fase de teste (#2): Realmente isso lhe dá a oportunidade de ter um feedback muito aberto pessoas que usarão seu aplicativo no final, no mundo real. O desempenho é, naturalmente, um aspecto crucial. Imaginando que você construa um site, mas ele não carrega pessoas que tendem a clicar fora após o 2.5º de não verem seus resultados. Portanto, é incrivelmente importante testar tanto para os testes baixos, fazer tempos normais de uso e horários de pico, mas também para testar o estresse da sua aplicação, ou seja, você tenta encontrar maneiras de quebrar o sistema. Mais e mais usuários você está sendo assimilado? E você quer verificar, faz a escala do sistema. Há muito retorno à estrutura de aplicativos e arquitetura Oval que discutimos anteriormente. Você quer ter certeza de que uma tecnologia que você precisa projetar e imaginar, na verdade, esse trabalho é capaz de lidar com todos os usuários estão acessando sua plataforma. acessibilidade geralmente é chamada diretrizes de acessibilidade de conteúdo da web para navegar. É um conjunto de recomendações reconhecido internacionalmente para melhorar a acessibilidade da web. Esse é um exemplo específico para, para web design. Mas, na verdade, ele se aplica a qualquer coisa que realmente seja o seu aplicativo ou o que quer que você esteja construindo em um mundo digital, você quer garantir que todos possam e possam usar seu produto final. E então o que eu era composto é ter certeza de que a visão é muito clara. Ou seja, talvez, você sabe, usuários com deficiência visual severa. Eles precisam ser capazes de usar seu aplicativo. Pode haver pessoas com dificuldade auditiva e talvez surdas. E eles precisam ter algumas ferramentas específicas para acessar a mobilidade do aplicativo. Aqueles que podem achar difícil usar um mouse ou teclado, você deseja fornecer alternativas a eles. E então pensando, pensando em entender pessoas que têm dislexia, autismo, qualquer tipo de dificuldade de aprendizagem. Novamente, você deseja fornecer uma abordagem simplificada para que eles usem o aplicativo. Como resultado, mesmo que seja legal ou não, você quer pensar absolutamente sobre a acessibilidade desde o início. Se você quiser redesenhar nossa necessidade de redesenhar em retrospecto, confie em mim, isso vai levar tempo. Vai ser preciso uma quantidade insana de esforço e custo para isso. Então pense nisso como um requisito chave absoluto desde o início, execute todos os seus testes de acessibilidade desde o início do autodesenvolvimento. E você estará fora para um material voador. De forma semelhante. compatibilidade garante que seu software seja capaz de ser executado em diferentes navegadores e sistemas operacionais. Hoje em dia, temos milhares de tamanhos de dispositivos para lidar. Todos eles parecem diferentes em telas diferentes. Pense nisso, no iOS, mas particularmente no Android e tem muitos tamanhos de dispositivos e sistemas operacionais diferenciados. Então, você sabe, constantemente, você quer garantir que o novo software que você em qualquer novo futuro que você está lançando seja compatível com esses requisitos que podem ser feitos manualmente, mas cada vez mais, a maior parte está sendo feita automatizada de forma automatizada por meio de emuladores e simuladores onde você nem precisa mais de nenhum dispositivo. Tudo é feito na nuvem. E você pode garantir que você sabia código é executado em todas essas plataformas. E, por último, cada vez mais crucialmente, acho que para todos e, especialmente, porque recebeu um pouco de escrutínio da mídia é, claro, a segurança do aplicativo. Você precisa garantir que você realize testes regulares de caneta. Você está testando a segurança? Veja, se você tiver uma loja de comércio eletrônico, por exemplo, e puder assistir a compras on-line, você estará regredindo informações da pessoa, informações cartão de crédito e assim por diante. O usuário precisa confiar em você. E se eles não tiverem, então você não tem clientes. E B, você pode ter um grande problema com as autoridades. Mas você verá que não há segurança significa que qualquer tipo de acesso autorizado seja concedido para proteger os dados. E o acesso não autorizado é restrito. E você quer garantir que você não tenha vulnerabilidades em nenhum tipo de código e código personalizado ou qualquer código de terceiros. Tenha em mente que se seus usuários de fornecedor diferente, você aparecer com um terceiro, você absolutamente quer ter certeza de que eles também são capazes de resistir a qualquer ataque. Mais uma vez, isso é apenas uma visão geral de alto nível dos testes típicos que estão sendo feitos. Há, como sempre, mais. É suave, dependendo da pendência do seu, sua complexidade e do tamanho do seu projeto em termos de quanto você faz do qual. Mas é crucial que o teste seja uma espécie de aspecto fundamental e monetário do seu aplicativo de software. Essa abordagem. 12. A fase de lançamento: E estamos quase lá. A hora do almoço, provavelmente a mais intensa, talvez a parte mais emocionante de todo o ciclo de vida que vimos até agora. Você provavelmente tem pensado sobre sua ideia há anos, se não mais. E agora, nos últimos meses, você vem construindo seu código, seus desenvolvimentos, você projeta e agora está pronto para lançar o primeiro conjunto de recursos para o mercado. Quando se trata do lançamento, é sempre uma boa ideia começar as coisas com amigos e familiares. Você tem um pouco mais de uma espécie de público amigável. E você pode testar e receber feedback. Logo no início. Novamente, estou me repetindo, mas não subestime a importância de um tipo de feedback inicial amigável do cliente, onde você pode iterar e melhorar rapidamente seu produto. Além disso, lembre-se quando você iniciar algo para, por exemplo, uma App Store, é sempre um processo que você deseja garantir que o APSA esteja configurado corretamente para sua versão. Você tem que preencher alguns formulários para cada loja que você vai enviar mostra um pouco de material de marketing, uma descrição e tanto. Então, um pouco de trabalho foi feito lá também. E, em seguida, seja Google ou Apple, eles podem Mallory revisar todos esses aplicativos enviados para a App Store. Bem, a Apple, na verdade, há muito mais do que o Google. Mas é possível que eles não pressionem várias alterações com base na sua configuração. Portanto, tenha isso em mente quando se trata de sua linha do tempo. Uma vez que você esteja ao vivo e os produtos no mercado real, há, é claro, algumas maneiras de promovê-lo além de seus amigos e familiares e tipo de boca a boca. O óbvio hoje em dia são as mídias sociais. Seja esse Twitter, tiktok, e outras coisas. Redes profissionais como o LinkedIn. Esse é um dado da avenida que um é mais para os blogueiros e vloggers, progridem através do marketing de afiliados. E, claro, se você tiver o dinheiro, poderá participar um anúncio de campanha mais extenso. Faça isso lentamente no início e, obviamente, de forma mais agressiva quanto ao planejar um lançamento completo. Mas, mas uma coisa que eu quero enfatizar é que este não é o fim, certo? Portanto, o desenvolvimento de aplicativos não pára na fase de lançamento. Em vez disso, é um ciclo contínuo de iteração, como agora enfatizamos muitas vezes no mundo do desenvolvimento ágil. E então você quer ter certeza monitorar o aplicativo e a absorção pelos usuários. Você quer ter certeza de que você é capaz acessar quaisquer falhas que possam ter sido experimentadas. Existem bibliotecas que as rastreiam. E eles dizem o que o usuário estava fazendo, o dispositivo que estamos usando, qualquer tipo de informação técnica que possa ser importante para replicar o problema. Você definitivamente quer começar a entender melhor seus usuários. Você quer fazer uso de ferramentas analíticas , como Google ou Facebook analytics. E isso, novamente, ajuda você a entender quem está usando o aplicativo. Qual é a idade deles, o gênero, de onde eles são, quais idiomas eles falam e assim por diante. Quantas vezes eles usam o aplicativo quando estamos fazendo o dia? Quanto tempo está sendo gasto no aplicativo, quais telas estão sendo visualizadas, predominantemente, quais não são, e assim por diante. Sou oportunidades fantásticas e incríveis por aí. A criação de mapas de calor onde você pode ver onde as pessoas clicam, em quais telas. Vou clicar nisso com mais frequência e assim por diante. Mas, na verdade, a ideia aqui é que você é capaz de melhorar com base nessas análises. Você não quer apenas construir partes do capítulo que raramente utilizam, mas quer investir onde está a ação, qual é o maior potencial de crescimento? E são realmente aquelas ferramentas que fornecem insights, garantem medir o desempenho. Eu mencionei antes, as pessoas não são muito pacientes quando se trata disso. Portanto, você quer medir o desempenho técnico e a facilidade do sistema que implantamos, tem um amplo monitoramento de desempenho em vigor o tempo todo. Dessa forma, você é capaz de rastrear quantas vezes uma ação ocorreu, quanto tempo demorou. E, e novamente, você acha isso como uma boa oportunidade de espaço para otimização. Você também pode colocar alertas e lugar para saber quando uma ação talvez esteja demorando um pouco mais lenta, se seu servidor, seu ambiente está sobrecarregado. Então você é bastante enigmático e procura consertá-los também. E, é claro, mesmo um tipo de monitoramento manual quando se trata de olhar para a App Store, por exemplo, responda aos comentários de custos dos clientes. Leve seus comentários em, em consideração, certifique-se de que o gerente de produto os veja. E de acordo com o, esse é o feedback chave que você precisa para melhorar e eles rapidamente obtêm outra próxima iteração do seu aplicativo. 13. CONCLUSÃO: Isso nos leva à conclusão onde o final do curso. Espero que esses vários estágios do ciclo de vida de desenvolvimento de software façam sentido e isso tenha sido um pouco útil para você. Olha, se há uma coisa que eu diria no final é um tamanho único não é isso. Enquanto a metodologia do desenvolvimento ágil e que o processo em si funciona e pode ser aplicado de forma consistente. Claro, depende muito do projeto, da complexidade, do tamanho, do, do, do, do, do financiamento está disponível para você, do conjunto de habilidades das pessoas e assim por diante. E cada projeto é diferente. E em um, você pode ser pesado, pesado em sistemas de tecnologia e back-end e no domínio de negócios, enquanto outros, pode estar muito mais focado em design gráfico e engenharia de som e o desenvolvimento lá. E você precisa se adaptar conforme S necessário. E a única coisa que eu diria de uma perspectiva de gerenciamento de projetos, ou você sendo um gerente de produto ou um CEO de uma pequena startup é devidamente por valores. Porque você, como PM, como gerente de projeto ou alguém que não está envolvido em todos os estágios, mas sim a cola entre as pessoas. Você nunca será o especialista em nada. Muito mais. Foi você quem forneceu uma visão geral holística, mas você não é um especialista em domínios. Então, devidamente por esses valores, eu gosto dos mostrados na tela. Confiança, empatia, transparência e colaboração. Certifique-se de que as equipes possam se organizar, capacitá-las, para que possam fazer o que é necessário para resolver o problema. E eu acho que se você liderar por esses valores e se você estabelecer essa confiança e tipo de acreditar nos conjuntos de habilidades das pessoas, então você também pode construir um pró-fármaco assassino, um produto digital incrível que o ciclo de vida de desenvolvimento de software apresentado hoje. Foi isso. Espero que tenha sido divertido. Espero que isso tenha sido útil se houver alguma dúvida. Não hesite em entrar em contato comigo e nos veremos na próxima vez.