@startuml

class CategoriaTarefa {
  -String descricao
  -String aatv
  -list<comptecn>
  CategoriaTarefa(String desc, String aatv,  List<competenciastecnicas> comptecn)
}

class Plataforma {
  *-String designacao
  
  *+CategoriaTarefa novaCategoriaTarefa(String desc, String aatv, list<competenciasTecnicas> comptecn)
  *+alidaCategoriaTarefa(CategoriaTarefa ct)
  *+registaCategoriaTarefa(CategoriaTarefa ct)
  *-addCategoriaTarefa(CategoriaTarefa ct)
}

class DefinirCategoriaController {
  *+boolean: novaCategoriaTarefa(String desc, String aatv, List<competenciastecnicas> comptecn)
      *+boolean: verificarCategoriaTarefa(CategoriaTarefa ct)
      *+Lista de AreaAtividades: getAreaAtividade()
      *+Lista de Competências Técnicas: getCompetenciasTecnicas()
}

class DefinirCategoriaUI {
  
}

DefinirCategoriaUI ..> DefinirCategoriaController
DefinirCategoriaController ..> Plataforma
DefinirCategoriaController ..> CategoriaTarefa
Plataforma "1" --> "*" CategoriaTarefa : possui
CategoriaTarefa "1" --> "*" AreaAtividades: tem
CategoriaTarefa "1" --> "*" CompetenciasTecnicas: tem

@enduml
