MARTIN AVIL BUITRON RA 2274183 Alguns requisitos para ajudar no projeto do esquema de banco de dados do cronograma: ● O esquema deve manter um cadastro de projetos, tarefas, grupo de tarefas e área de conhecimento. Uma tarefa pertence a um projeto específico e possui um grupo e uma área de conhecimento. Um grupo pode ser associado a outro grupo, ou seja, organização em grupo e subgrupo (hierarquia de grupos). ● As informações mantidas sobre um projeto são: identificador, nome, descrição, data de início e término. ● As informações sobre as tarefas de um projeto são: projeto ao qual a tarefa pertence, grupo, duração, área de conhecimento, tarefa predecessora e indicador do status. O status da tarefa pode ser: iniciada, não iniciada, interrompida, cancelada ou concluída. O domínio do status é uma decisão de projeto. ● As informações mantidas sobre o grupo são: identificador, nome e descrição, e caso seja um subgrupo, o grupo ao qual ele pertence. ● As informações sobre as áreas de conhecimento são: identificador, nome e descrição. dado o projeto de esquema elaborado é possível projetar o nome das tarefas e suas predecessoras? SELECT t1.nome_tarefa AS tarefa, t2.nome_tarefa AS tarefa_predecessora FROM public."Tarefa" t1 LEFT JOIN public."Tarefa" t2 ON t1.tarefa_predecessora_id = t2.tarefa_id; É possível obter o tempo previsto por grupo de tarefas (por exemplo, tarefas do grupo planejamento) SELECT GT.nome_tarefa AS grupo_tarefa, SUM(EXTRACT(EPOCH FROM T.duracao)) AS tempo_previsto FROM public."Tarefa" T JOIN public."Grupo_Tarefa" GT ON T.grupo_id = GT.grupo_id -- Filtrar pelo grupo desejado WHERE GT.nome_tarefa = 'planejamento' GROUP BY GT.nome_tarefa; É possível verificar o quanto uma tarefa já foi executada? ALTER TABLE public."Tarefa" ADD COLUMN progresso numeric;