Array
(
    [0] => stdClass Object
        (
            [Votos_Balanceados] => 1
            [id] => 509717
            [titulo] => Responsabilidade de Modelar
            [dataCadastro] => DateTime Object
                (
                    [date] => 2015-02-06 08:35:12
                    [timezone_type] => 3
                    [timezone] => America/Sao_Paulo
                )

            [isFirstPost] => -1
            [idUsuario] => 311791
            [status] => A
            [isExample] => 
            [NomeUsuario] => Joaquim C.
            [Apelido] => 
            [Foto] => pomba-divino-em-movimento.png
            [Conteudo] => Marisiana, gostei da sua resposta. O que você falou tem bastante coerência, já que os analistas fazem o processo de entendimento com o cliente.
        )

)

Responsabilidade de Modelar

Joaquim C.
   - 03 fev 2015

Olá Pessoal, blz?
Realizando alguns trabalhos aqui na empresa e observando alguns desenvolvedores, analistas e o DBA reunidos para modelar o bd para o novo sistema. Me perguntei, de quem é a responsabilidade de modelar o BD? É preciso tanta gente assim?

Post mais votado

Joaquim C.
   - 06 fev 2015

Marisiana, gostei da sua resposta. O que você falou tem bastante coerência, já que os analistas fazem o processo de entendimento com o cliente.

Marilia Silva
   - 03 fev 2015

Pelo que estudei, deve existir alguem que faça a modelagem, mas acho que é o mais correto uma equipe para auxiliar.

Alan Mario
   - 03 fev 2015

Todos podem ajudar.

Pedro Amaral
   - 04 fev 2015

Acho que é a galera de engenharia de software que modela.

Marisiana
   - 04 fev 2015

No meu ponto de vista, quem faz a modelagem de dados é o analista de negócio e o analista de sistemas, pois são eles que realizam o levantamento de requisitos e constroem um protótipo que atenda as necessidades. O DBA irá avaliar a modelagem e verificar se ela está otimizada, sugerindo alternativas para melhorar o armazenamento de dados com a melhor performance possível.

Alan Mario
   - 04 fev 2015

Uma pergunta, existe o "projetista" de banco de dados?

Marisiana
   - 04 fev 2015

Não sei se existe essa função, talvez em empresas gigantes,..
Tem os analistas de negócios, analistas de sistemas, arquiteto de software, DBA, desenvolvedores SQL,...

Jothaz
   - 04 fev 2015


Citação:
Uma pergunta, existe o "projetista" de banco de dados?


Citação:
Não sei se existe essa função, talvez em empresas gigantes,..
Tem os analistas de negócios, analistas de sistemas, arquiteto de software, DBA, desenvolvedores SQL,...


É isso mesmo o que existe são DBA´s.

Como já foi dito, quem fica com a responsabilidade de modelar é o analista de sistemas levando-se em consideração os artefatos gerados durante o levantamento, pois ninguém melhor que ele para ter conhecimento e a visão global do projeto.
Caso exista alguma dúvida ou dificuldade ai recorre-se aos AD´s. Claro que se houver pessoal e tempo disponível pode-se fazer uso de um grupo para modelar.

Hoje com os framework de ORM e usando técnica de "code first" consegues-e desenvolver uma aplicação completa sem digitar uma linha de script de SQL tudo via código na IDE, claro que mesmo fazendo tudo via framework não quer dizer que pode-se abrir mão do conhecimento de modelagem, senão vira uma zona.
E claro deve-se ter uma boa modelagem das classes e sempre contanto com a ajuda dos AD para verificar a qualidade do que foi gerado.

Mas futuramente com o amadurecimento dos frameworks vai ficar cada vez mais fácil trabalhar direto na IDE.

E no final o pessoal do AD valida o modelo e principalmente a questão de melhores práticas e performance.

Alan Mario
   - 04 fev 2015


Citação:
Não sei se existe essa função, talvez em empresas gigantes,..
Tem os analistas de negócios, analistas de sistemas, arquiteto de software, DBA, desenvolvedores SQL,...


Já tinha escutado esse termo mas não lembro em que situação.

Ronaldo Lanhellas
   - 05 fev 2015


Citação:
Olá Pessoal, blz?
Realizando alguns trabalhos aqui na empresa e observando alguns desenvolvedores, analistas e o DBA reunidos para modelar o bd para o novo sistema. Me perguntei, de quem é a responsabilidade de modelar o BD? É preciso tanta gente assim?


Na teoria quem deveria modelar o BD é o DBA, e isso é até meio óbvio. Porém na prática isso é muito difícil de ocorrer, visto que para um DBA modelar o BD ele precisa conhecer todo sistema e geralmente quem possui este conhecimento são os Analistas. Mas o DBA é o responsável por conhecer todas as notações e regras da modelagem os outros (participantes) vão apenas instruir o mesmo com as regras de negócio e entendimento do sistema.

Ronaldo Lanhellas
   - 05 fev 2015


Citação:
Olá Pessoal, blz?
Realizando alguns trabalhos aqui na empresa e observando alguns desenvolvedores, analistas e o DBA reunidos para modelar o bd para o novo sistema. Me perguntei, de quem é a responsabilidade de modelar o BD? É preciso tanta gente assim?


Na teoria quem deveria modelar o BD é o DBA, e isso é até meio óbvio. Porém na prática isso é muito difícil de ocorrer, visto que para um DBA modelar o BD ele precisa conhecer todo sistema e geralmente quem possui este conhecimento são os Analistas. Mas o DBA é o responsável por conhecer todas as notações e regras da modelagem os outros (participantes) vão apenas instruir o mesmo com as regras de negócio e entendimento do sistema.

Ronaldo Lanhellas
   - 05 fev 2015


Citação:
Olá Pessoal, blz?
Realizando alguns trabalhos aqui na empresa e observando alguns desenvolvedores, analistas e o DBA reunidos para modelar o bd para o novo sistema. Me perguntei, de quem é a responsabilidade de modelar o BD? É preciso tanta gente assim?


Na teoria quem deveria modelar o BD é o DBA, e isso é até meio óbvio. Porém na prática isso é muito difícil de ocorrer, visto que para um DBA modelar o BD ele precisa conhecer todo sistema e geralmente quem possui este conhecimento são os Analistas. Mas o DBA é o responsável por conhecer todas as notações e regras da modelagem os outros (participantes) vão apenas instruir o mesmo com as regras de negócio e entendimento do sistema.

Alan Mario
   - 05 fev 2015

A modelagem na verdade é todo um processo, parecido com a analise de sistemas e sua peculiaridades.

Jothaz
   - 06 fev 2015

Trabalhei em um projeto que era gigante coisa de 18.000 pontos de função e uma equipe de 60 pessoas onde tínhamos analista de negócio, analistas de requisitos, arquitetos, analista para UML, projetistas, analistas de testes, analistas de sistema, analista/desenvolvedores, webdesign, analista de data warehouse e um DBA para apoiar na modelagem.

E mesmo tendo um DBA por conta normalmente a modelagem era feita uma previamente pelo analista de sistemas responsável (normalmente com a ajuda dos outros analistas) e então o modelo era passado para o DBA para refinamento e verificação da qualidade. É mais prático e produtivo desta forma, pois mesmo que a modelagem prévia necessite de ajustes se o pessoal que fez foi profissional a maior parte será aproveitada. No caso o DBA refinava o modelo e mantinha a coesão para evitar redundância, pois eram vários módulos interligados.

Nos demais projetos que trabalhei sempre foi assim, o analista de sistema e a equipe faz a modelagem e o pessoal do AD valida, quando é algo muito complexo ai o DBA acompanha.

Agora não analista de sistema ou DBA que dê jeito se não existir um levantamento e artefatos (documentação) decente. Para tudo: modelagem, construção e testes é necessário que o escopo e requisitos da aplicação sejam construído de forma coesa, concisa, clara e profissional.

No fundo quanto mais conhecimento e maturidade a equipe possuir melhor será o produto gerado. Não dá para ser especialista em tudo, mas dá para conhecer o suficiente em várias áreas para ter bom senso e ser produtivo usando o conhecimento acumulado.

Marisiana
   - 06 fev 2015


Citação:

Na teoria quem deveria modelar o BD é o DBA, e isso é até meio óbvio. Porém na prática isso é muito difícil de ocorrer, visto que para um DBA modelar o BD ele precisa conhecer todo sistema e geralmente quem possui este conhecimento são os Analistas. Mas o DBA é o responsável por conhecer todas as notações e regras da modelagem os outros (participantes) vão apenas instruir o mesmo com as regras de negócio e entendimento do sistema.

O DBA não deve modelar o banco de dados e nem criar a estrutura dele, isso não é função dele, quem faz isso são os analistas e desenvolvedores de sistemas.
O DBA deve conhecer toda a estrutura que o banco terá, deve saber como será o controle de acesso de usuários e todas as demais informações relevantes para que ele possa deixar o ambiente preparado para os desenvolvedores criarem as tabelas e demais objetos. Todas essas informações, quem deve passar para o DBA são os analistas de negócio e os analistas de sistemas, pois são informações que devem identificadas na análise de requisitos.
O DBA irá validar cada objeto criado e verificar se existe boa performance, se foram utilizadas as melhores práticas, etc.

Marisiana
   - 06 fev 2015

Fiz o comentário a cima pois já trabalhei em uma empresa que tinha apenas um DBA e existia essa divisão de responsabilidades.
Tem empresas que possuem desenvolvedores SQL e, nesse caso, a tarefa de criar objetos no banco de dados será deles e não dos analistas e desenvolvedores de sistemas.
Pode ser que tenha empresas que possuem mais de um DBA, nessas o DBA Jr. pode ser o q faça o trabalho de criação dos objetos e otimização.
Tudo depende do tamanho da empresa e do fluxo de trabalho dela, e como é definido o plano de cargos e salários...

Ronaldo Lanhellas
   - 06 fev 2015


Citação:

Citação:

Na teoria quem deveria modelar o BD é o DBA, e isso é até meio óbvio. Porém na prática isso é muito difícil de ocorrer, visto que para um DBA modelar o BD ele precisa conhecer todo sistema e geralmente quem possui este conhecimento são os Analistas. Mas o DBA é o responsável por conhecer todas as notações e regras da modelagem os outros (participantes) vão apenas instruir o mesmo com as regras de negócio e entendimento do sistema.

O DBA não deve modelar o banco de dados e nem criar a estrutura dele, isso não é função dele, quem faz isso são os analistas e desenvolvedores de sistemas.
O DBA deve conhecer toda a estrutura que o banco terá, deve saber como será o controle de acesso de usuários e todas as demais informações relevantes para que ele possa deixar o ambiente preparado para os desenvolvedores criarem as tabelas e demais objetos. Todas essas informações, quem deve passar para o DBA são os analistas de negócio e os analistas de sistemas, pois são informações que devem identificadas na análise de requisitos.
O DBA irá validar cada objeto criado e verificar se existe boa performance, se foram utilizadas as melhores práticas, etc.


Desculpe mas discordo, o DBA não deve modelar o banco ? Quem melhor pra conhecer um DER do que o DBA ?

Alan Mario
   - 06 fev 2015

Eu considero melhor uma equipe trabalhando, é claro, desde que seja um projeto realmente complexo.

Marisiana
   - 06 fev 2015


Citação:
Desculpe mas discordo, o DBA não deve modelar o banco ? Quem melhor pra conhecer um DER do que o DBA ?

Claro, ele deve conhecer de cor de salteado! Eu completei minha resposta no comentário a seguir:

Citação:
Fiz o comentário a cima pois já trabalhei em uma empresa que tinha apenas um DBA e existia essa divisão de responsabilidades.
Tem empresas que possuem desenvolvedores SQL e, nesse caso, a tarefa de criar objetos no banco de dados será deles e não dos analistas e desenvolvedores de sistemas.
Pode ser que tenha empresas que possuem mais de um DBA, nessas o DBA Jr. pode ser o q faça o trabalho de criação dos objetos e otimização.
Tudo depende do tamanho da empresa e do fluxo de trabalho dela, e como é definido o plano de cargos e salários...

Em casos de empresas q possuem apenas um DBA, ele terá muito mais tarefas a fazer, do que ficar criando tabelas no banco de dados.

Alan Mario
   - 06 fev 2015

Ronaldo, não discordando do que disse mas...na area de banco de dados, podemos divid-la em duas quanto as funções, correto? sim ou não; desenvolvedor de banco de dados e administrador de banco de dados.

a responsabilidade seria dos dois?

Marisiana
   - 06 fev 2015

De forma resumida, e até onde sei, o desenvolvedor é quem programa em SQL e o administrador é quem cuida de toda a parte administrativa do banco.