3. Application Lifecycle Management (ALM)
3.1. Conceitos Fundamentais de ALM
3.1.1. Definição e Importância
O Application Lifecycle Management (ALM) é uma abordagem integrada para gerenciar todos os aspectos do ciclo de vida de uma aplicação, desde a concepção inicial até a implantação e manutenção. Na Pragmatismo, o ALM é especialmente importante devido à natureza crítica dos projetos de IA e General Bots, que exigem rastreabilidade, segurança e conformidade com padrões regulatórios.
O ALM da Pragmatismo foi projetado para atender às necessidades específicas de conformidade com ISO 27001, HIPAA e LGPD, garantindo que todas as fases do desenvolvimento de software atendam aos requisitos de segurança da informação, proteção de dados pessoais e melhores práticas da indústria.
3.1.2. Componentes Principais do ALM
- Gestão de Requisitos: Documentação, rastreamento e priorização de requisitos
- Gestão de Desenvolvimento: Controle de código-fonte, integração contínua e entrega contínua
- Gestão de Testes: Testes automatizados, testes de segurança e testes de conformidade
- Gestão de Implantação: Implantação em ambientes controlados com registro de auditoria
- Gestão de Operações: Monitoramento, manutenção e resposta a incidentes
3.1.3. Benefícios do ALM para Projetos de IA e General Bots
- Rastreabilidade completa de requisitos até código e testes
- Auditabilidade para fins regulatórios (ISO 27001, HIPAA, LGPD)
- Redução de riscos de segurança e privacidade
- Melhoria contínua do processo de desenvolvimento
- Aceleração do time-to-market mantendo a qualidade e a conformidade
3.2. Estruturação do Ambiente ALM
3.2.1. Organização de Áreas e Iterações
-
Use áreas para agrupar (se necessário) requisitos e outras entidades por versão, grupo, ou qualquer outro agrupamento necessário. Geralmente apenas uma área é suficiente para um projeto isolado ou inicial. Ver artigo sobre como personalizar áreas.
-
User iterações para definir o cronograma do projeto. Ver artigo
-
O modelo CMMI deve ser o modelo usado para confecionar projetos, mesmo em métodos ágeis.
-
Para editar o cronograma do projeto visite ``` https:///_admin/_work
-
Para realizar anotações diversas em tarefas, requisitos, questões e outras entidades, utilize o campo Discussion, de modo que o histórico seja automaticamente registrado com data/hora de quem registrou e o texto da anotação.
-
Apenas inclua as pessoas na linha de conversação, durante a edição de questões, tarefas ou requisitos até que estas precisem realmente ter algum item de ação atribuída a elas.
-
Escreva o texto do item corporativo de modo dissertativo.
3.2.2. Estruturação para Compliance
-
Áreas de Compliance: Criar áreas específicas para requisitos relacionados a ISO 27001, HIPAA e LGPD, facilitando a rastreabilidade e auditoria.
-
Iterações de Compliance: Definir iterações dedicadas à revisão de conformidade antes de cada release major.
-
Tags de Compliance: Utilizar tags padronizadas (ISO27001, HIPAA, LGPD) para marcar requisitos e tarefas relacionadas à conformidade.
-
Artefatos de Compliance: Manter uma biblioteca de artefatos de compliance que podem ser reutilizados em diferentes projetos.
3.2.3. Integrações com Ferramentas de Segurança
-
SAST (Static Application Security Testing): Integração com ferramentas de análise estática de código
-
DAST (Dynamic Application Security Testing): Integração com ferramentas de análise dinâmica
-
SCA (Software Composition Analysis): Verificação de dependências e bibliotecas
-
Gestão de Vulnerabilidades: Integração com sistemas de registro e acompanhamento de vulnerabilidades
3.2.4. Configuração de Pipelines de CI/CD Seguros
-
Verificaç ões de Segurança: Configurar gates de segurança nos pipelines de CI/CD
-
Testes Automatizados de Compliance: Incluir testes automatizados de conformidade nos pipelines
-
Aprovações e Controles de Acesso: Configurar aprovações baseadas em papéis para implantações em ambientes sensíveis
-
Logging e Auditoria: Configurar logging detalhado de todas as ações nos pipelines
3.3. Papéis e Responsabilidades
3.3.1. Papéis Comuns a Todos os Projetos
3.3.1.1. Capacitação
3.3.1.1.1 Gerenciamento do Ciclo de Vida da Aplicação
(Duração: 30 min. Público: Analistas de Sistemas e Gerentes de Projetos) Artigo
E mais:
Itens de Trabalho(Work Items)
Visão geral de todos os tipos de itens de trabalho como requisitos, questões, defeitos, riscos, revisões, requisições de mudança.
Fluxo de Questões
Como trafegar informações pelo fluxo de questões e usar o campo Discussion mantendo o Description como o campo mais atualizado.
Wiki Como visualizar a Wiki do projeto e contribuir com informações e Atas.
3.3.1.1.2 Criando um Perfil de Navegador por cliente.
- No canto superior do navegador, clique no nome de seu usuário(a);
- Em seguida, Gerenciar Pessoas;
- Clique em Adicionar;
- Digite o nome do Perfil e clique em Salvar;
- Pronto.
3.3.1.1.3 Capacitação em Compliance
-
Treinamento ISO 27001: Conceitos básicos de segurança da informação e requisitos da ISO 27001
-
Treinamento HIPAA/LGPD: Proteção de dados pessoais e dados de saúde
-
Treinamento em Desenvolvimento Seguro: Práticas de codificação segura e prevenção de vulnerabilidades
-
Treinamento em Resposta a Incidentes: Procedimentos para identificação e resposta a incidentes de segurança
3.3.2. Cliente
Porquê principal da companhia, foco das atenções e zelo, tem registradas todas as suas ideias de modo contínuo recebendo a melhor arquitetura disruptiva e sustentável. No contexto de projetos de IA e General Bots, o cliente deve:
-
Fornecer Requisitos Claros: Especificar claramente os requisitos funcionais e de segurança/privacidade
-
Participar das Revisões: Participar ativamente das revisões de requisitos e demonstrações
-
Validar Compliance: Validar que os requisitos de compliance específicos do seu setor foram atendidos
-
Reportar Incidentes: Reportar prontamente quaisquer incidentes de segurança ou privacidade
3.3.3. Arquiteta de Solução
Quem define o modo que código, artefatos e dados serão elaborados através de novas ideias disruptivas mas factíveis, técnicas e padrões de indústria consagrados. Para projetos de IA e General Bots, a arquiteta de solução também deve:
-
Arquitetura de Segurança: Definir controles de segurança e privacidade por design
-
Arquitetura de Compliance: Garantir que a arquitetura atenda aos requisitos regulatórios
-
Avaliação de Risco: Realizar avaliações de risco durante o design da solução
-
Revisão de Arquitetura: Conduzir revisões regulares da arquitetura para identificar possíveis vulnerabilidades
3.3.4. Gerente de Projetos
Quem mantém o projeto no custo, prazo, escopo e qualidade utilizando as melhores práticas de comunicação juntamente das melhores ferramentas de gestão do ciclo de vida da aplicação dentro do meio disruptivo. Para projetos de IA e General Bots, o gerente de projetos também deve:
-
Gestão de Riscos de Compliance: Identificar e mitigar riscos relacionados à compliance
-
Coordenação de Auditorias: Coordenar auditorias internas e externas de segurança e compliance
-
Gestão de Documentação de Compliance: Garantir que toda a documentação necessária está sendo produzida e mantida
-
Comunicação de Riscos: Comunicar riscos de segurança e compliance aos stakeholders
3.3.4.1. Aplicação de crédito em nuvem
-
Necessário verificar validade e crédito em USD do Voucher para verificar se atende o projeto;
-
Aplicar o voucher numa contra criada especificamente para o projeto ou no cliente consultando o EscritorioDeProjetos@Pragmatismo para tal, Referência.
-
Caso a conta especifica seja usada, ela será a administradora da nuvem. Convidar os envolvidos assim que a conta for criada e colocar operations@Pragmatismo como Administradora e as demais pessoas que terão este tipo de acesso.
3.3.4.2. Reunião do Escritório de Projetos
-
Verificar se existem questões, requisitos, riscos, requisições de mudança e outras pendências antes da reunião.
-
Preparar a lista de itens pendentes para discussão com base em questões pendentes.
-
Além dos itens de controle da aplicação, apresentar cronograma & escopo juntamente da satisfação geral do cliente.
-
Incluir na pauta itens específicos sobre compliance e segurança.
3.3.5. Analista Desenvolvedor(a)
Quem identifica requisitos e os codifica em código-fontes e ativos associados de acordo com as melhores práticas da indústria. Para projetos de IA e General Bots, o(a) analista desenvolvedor(a) também deve:
-
Desenvolvimento Seguro: Aplicar práticas de desenvolvimento seguro em todo o código
-
Tratamento Seguro de Dados: Implementar mecanismos seguros para processamento e armazenamento de dados
-
Testes de Segurança: Realizar testes unitários que incluam casos de teste de segurança
-
Revisão de Código: Participar de revisões de código com foco em segurança e compliance
3.3.6. Analista de Qualidade
Quem certifica que os requisitos especificados estão de acordo com a experiência final de utilização ou operação do projeto. Para projetos de IA e General Bots, o analista de qualidade também deve:
-
Testes de Segurança: Realizar testes específicos de segurança e privacidade
-
Verificação de Compliance: Verificar se os requisitos de compliance foram atendidos
-
Testes de Penetração: Coordenar ou realizar testes de penetração
-
Análise de Vulnerabilidades: Realizar varreduras de vulnerabilidade regularmente
3.3.6.1. Métodos
BDD com Gherkin
Para projetos de IA e General Bots, recomenda-se a adaptação do BDD para incluir critérios específicos de segurança e compliance:
Funcionalidade: Processamento seguro de dados pessoais
Como um usuário do sistema
Eu quero que meus dados pessoais sejam processados de forma segura
Para que minha privacidade seja protegida
Cenário: Armazenamento de dados sensíveis
Dado que eu forneço dados sensíveis ao sistema
Quando os dados são armazenados
Então os dados devem ser criptografados
E o acesso aos dados deve ser registrado em log de auditoria
E os dados devem ter uma política de retenção definida