Em resumo
Quem incorpora um componente de planejamento ou Gantt define primeiro a divisão de tarefas: o componente exibe visualizações de tempo, recursos e hierarquias e as torna editáveis no navegador, e o próprio produto mantém objetos de negócio, permissões, diálogos e armazenamento. Uma avaliação com um cenário real e volume de dados realista mostra se é melhor desenvolver internamente ou incorporar.
Quem incorpora um componente de planejamento ou Gantt ao próprio software deve definir primeiro a divisão de tarefas. O componente exibe visualizações de tempo, recursos e hierarquias e as torna editáveis no navegador, enquanto o seu produto mantém os objetos de negócio, as permissões, os diálogos e o armazenamento. Se o desenvolvimento próprio ou a incorporação é mais adequado depende sobretudo do volume de dados das grandes visualizações, da interação necessária, da acessibilidade, da localização, do esforço permanente de manutenção e das condições de licença. A pergunta pode ser respondida com segurança com um cenário real do seu produto e um volume de dados realista.
Quais visualizações de planejamento são típicas
Componentes de planejamento mostram o trabalho em uma linha do tempo ou em uma estrutura. Para o Hawk IVO Scheduler, três visualizações são típicas:
- Planejamento de tempo e recursos: exibir recursos, turnos ou máquinas na linha do tempo e movê-los arrastando.
- Hierarquias: exibir de forma clara grandes estruturas de unidades, equipes e recursos.
- Gantt e Kanban: editar tarefas e pedidos como barras de tempo ou em um quadro.
Quais delas o seu produto precisa depende dos objetos que os seus usuários planejam e do período que eles precisam acompanhar.
O que o componente assume e o que o seu produto mantém
Uma incorporação só funciona quando a responsabilidade está claramente distribuída. Para o Hawk IVO Scheduler, vale esta divisão:
| Tarefa | Responsável |
|---|---|
| Exibição e edição de visualizações de tempo, recursos e hierarquias | Componente de planejamento |
| Interação no navegador | Componente de planejamento |
| Objetos de negócio, como pedidos, turnos ou máquinas | Seu produto host |
| Permissões e diálogos | Seu produto host |
| Armazenamento e soberania funcional dos dados | Seu produto host |
Essa separação tem um motivo prático. Uma barra na visualização representa um objeto cujas regras o seu produto conhece: quem pode alterá-lo, quais informações um diálogo solicita e quando uma alteração é salva de forma válida. Se essas decisões permanecem no produto host, suas permissões e regras de negócio continuam valendo sem alteração, quer o usuário trabalhe em um formulário, quer na visualização de planejamento. Por isso, é preciso esclarecer cedo, para a arquitetura, como o seu produto passa os dados ao componente e como uma alteração feita na visualização volta para a sua lógica de negócio.
Desenvolvimento próprio ou incorporação: perguntas para a decisão
Uma linha do tempo simples pode ser implementada com esforço moderado. O esforço cresce com o volume de dados, com as possibilidades de edição e com os anos durante os quais a visualização precisa ser mantida. Os dois caminhos podem ser avaliados pelas mesmas perguntas:
- Volume de dados e grandes visualizações: quantos objetos mostra a maior visualização que os seus clientes realmente usam, e ao longo de qual período? Ela continua utilizável ao carregar, rolar, aplicar zoom e selecionar? Um teste com os seus dados no seu ambiente de destino traz respostas significativas.
- Interação: quais edições os seus usuários precisam, por exemplo mover, alterar a duração ou replanejar para outro recurso? Como a visualização indica que a sua lógica de negócio rejeita uma alteração?
- Acessibilidade: os objetos de planejamento podem ser editados também sem arrastar e pelo teclado? As WCAG 2.2 (abre em uma nova aba) exigem, no nível AA, que funções com movimento de arrastar também possam ser operadas com um único ponteiro sem arrastar, a menos que o arrastar seja essencial (critério de sucesso 2.5.7). Para a operação por teclado de visualizações em formato de tabela, as WAI-ARIA Authoring Practices descrevem o padrão Grid (abre em uma nova aba), inclusive para linhas que não são carregadas todas ao mesmo tempo.
- Localização: idioma, formatos de data e hora, início da semana e direção da escrita são adequados aos mercados dos seus clientes? Como a visualização lida com fusos horários e com a mudança de horário? Em países com horário de verão, um turno da noite que atravessa a mudança fica mais curto ou mais longo do que o normal. Um rascunho do grupo de trabalho de internacionalização do W3C (abre em uma nova aba) traz orientações para aplicações.
- Manutenção: quem mantém o componente ao longo de novas versões de navegador, novos requisitos dos seus clientes e correções de erros? Um desenvolvimento próprio ocupa de forma permanente capacidade interna de desenvolvimento. Uma incorporação cria uma dependência cujas versões e limitações conhecidas você deve ter em mente.
- Licença: em quais condições você pode entregar o componente aos seus clientes dentro do seu produto? Como suporte e atualizações estão regulamentados?
O desenvolvimento próprio faz sentido quando a visualização de planejamento continua pequena ou é ela mesma o núcleo do seu produto. A incorporação faz mais sentido quando os seus usuários precisam de grandes visualizações e de muitas edições, mas a força do seu produto está na lógica de negócio.
Como funciona uma avaliação
Uma demonstração de produto mostra o que um componente sabe fazer. Para a sua decisão, importa como ele funciona com o seu cenário. Para o Hawk IVO Scheduler, seguimos três etapas:
- Escolher o cenário: um cenário de planejamento concreto do seu produto, com volume de dados realista.
- Integrar em conjunto: mostramos a incorporação com um exemplo mínimo verificado.
- Avaliar: você avalia esforço, usabilidade e desempenho no seu ambiente.
Depois disso, você tem um parecer baseado nos seus próprios dados, com o qual é possível comparar desenvolvimento próprio e incorporação. Licença, suporte e operação são acordados com base na avaliação.
O Hawk IVO Scheduler e seus limites
O Hawk IVO Scheduler é uma biblioteca incorporável que exibe planos de tempo, recursos e hierarquias no navegador. Ele exibe e edita grandes visualizações de tempo, recursos e hierarquias e é usado no Hawk IVO Force e no Hawk IVO Plan. Seu produto incorpora o componente e mantém os objetos de negócio, as permissões, os diálogos e o armazenamento.
A biblioteca não assume a soberania funcional dos dados. Informamos a versão, os frameworks compatíveis e as limitações conhecidas na conversa técnica. Afirmações sobre desempenho só se tornam confiáveis com o seu cenário, porque volume de dados, ambiente de destino e forma de uso variam de produto para produto.
Se o seu produto também deve passar tarefas a agentes, você encontra as perguntas sobre isso no artigo Incorporar agentes ao próprio software. Saiba mais sobre a colaboração na área Para fornecedores de software. Para uma conversa sobre o seu cenário de planejamento, entre em contato.