Melhorias na interface do Management 
Studio 
Ms. Mauro Pichiliani 
@pichiliani 
mauro@pichiliani.com.br
PATROCINADORES
Sobre mim 
 Mestre e doutorando em computação pelo ITA 
 Escritor da SQL Magazine, Fórum Access, Java 
Magazine, SQLServerCentral.com e outras 
 Colaborador do iMasters há 13 anos 
 Autor do livro “Conversando sobre banco de dados” 
 Co-autor do @databasecast
Roteiro 
 História do Management Studio 
 Por que melhorar? 
 Sugestões de melhorias 
 Outras sugestões 
 Conclusões
História do Management Studio 
 iSQL/W no SQL Server 6.5
História do Management Studio 
 Query Analyzer no SQL Server 7.0
História do Management Studio 
 Query Analyzer no SQL Server 2000
História do Management Studio 
 Management Studio no SQL Server 2005
História do Management Studio 
 Management Studio no SQL Server 2008 e R2
História do Management Studio 
 Management Studio no SQL Server 2012
História do Management Studio 
 Management Studio no SQL Server 2014
Resumo Management Studio 
 Boa ferramenta (não é excelente) 
 “Irmão pobre” do Visual Studio? 
 Certamente criado por engenheiros… 
 Permite uso de plug-ins 
 SSMS Tools Pack http://www.ssmstoolspack.com/ 
 Muito espaço para melhorar a UI e UX (mesmo 
para DBAs e devs) 
 Existem alternativas (Ex: TOAD for SQL Server)
Por que melhorar? 
 Quanto custa um erro? 
 Ferramenta deve ajudar a reduzir enganos e não 
conduzir a erros 
 Vale a pena ganhar um micro-segundo? 
 Talvez, se a operação for executada muitas vezes 
 Organização e produtividade 
 Melhor gastar x seg. organizando agora do que 10x 
seg. procurando depois 
 Padrão x customização 
 Poucos usuários customizam UI (especialmente 
iniciantes)
Sugestão 1: Ícones na toolbar 
 Problema: ícones próximo e ambíguos 
 Execute, Debug, Parse, Start Debugging… 
 Sugestão: organização melhor (por padrão)
Sugestão 2: UI diferenciada por ambiente 
 Problema: Comandos no ambiente errado 
mesmo com info. sobre local em vários pontos! 
 Formato único de cores p/ todos os ambientes
Sugestão 2: UI diferenciada por ambiente 
 Sugestão: esquema de UI (cores, fontes, etc) 
separada por servidor/banco
Sugestão 3: Identificar ambiente 
 Problema: seleção no Object Explorer difícil de 
ver!
Sugestão 3: Identificar ambiente 
 Sugestão: TreePath do XYplorer + refresh 
automático
Sugestão 4: Formatador de SQL 
 Problema: SQL escrito de qualquer jeito
Sugestão 4: Formatador de SQL 
 Sugestão: Incluir formatador de SQL tipo 
Instant SQL Formatter (http://www.dpriver.com/pp/sqlformat.htm)
Sugestão 5: Indicador de erro no script 
 Problema: Identificar locais de erro em scripts 
grandes
Sugestão 5: Indicador de erro no script 
 Sugestão: barra lateral + OverView (Eclipse e 
Sublime)
Sugestão 6: Local de erro da sintaxe 
 Problema: Erro aparece na área de resultado 
(foco de atenção + clique na mensagem)
Sugestão 6: Local de erro da sintaxe 
 Sugestão: Bolha de diálogo
Sugestão 7: Sugestão de correção 
 Problema: Pouca pista sobre erro e nenhuma 
ajuda
Sugestão 7: Sugestão de correção 
 Sugestão: Fornecer sugestão ao estilo Google
Sugestão 8: Melhorias no UNDO/REDO 
 Problema: Pouca informação sobre UNDO/REDO
Sugestão 8: Melhorias no UNDO/REDO 
 Sugestão: Mais contexto!
Sugestão 9: Melhorias no COPY/PASTE 
 Problema: Um slot de copy/paste
Sugestão 9: Melhorias no COPY/PASTE 
 Sugestão: Histórico e múltiplos slots (ClipX 
http://bluemars.org/clipx/)
Sugestão 10: Janela de busca 
 Problema: Obstrui o texto ao redor da palavra
Sugestão 10: Janela de busca 
 Sugestão: Barra de busca (Firefox)
Sugestão 10: Janela de busca 
 Sugestão: Resultado destacado
Sugestão 10: Janela de busca 
 Sugestão: Ligação de resultados
Sugestão 11: Resultado oposto 
 Problema: Obter linhas que não satisfazem a 
consulta
Sugestão 11: Resultado oposto 
 Sugestão: Linhas semi-transparentes com 
resultado que não atende à query
Sugestão 12: Indicação de valores null 
 Problema: Quantos null temos por coluna?
Sugestão 12: Indicação de valores null 
 Sugestão: Colorir com vermelho/verde nome da 
coluna
Sugestão 13: Manipular seleção no grid 
 Problema: Trabalhar com dados selecionados no 
grid de resultado
Sugestão 13: Manipular seleção no grid 
 Sugestão: Criar tabela temporária, gerar o SQL e 
outras operações a partir de seleção
Outras sugestões 
 Integração com pacote para TDD 
 Coleta automática de métricas de software 
 Checador de sintaxe + sanitizador 
 Geração de SQL a partir de seleção em 
gráfico 
 Verificar diferença entre scripts (WinDiff) 
 Verificador de dados duplicados 
 Comparador de bancos/schema
Outras sugestões 
 Interface para manipulação/pesquisa por 
intervalos de datas 
 Opções de refatoração (e rejuvenecimento) 
 Melhorias para importar dados (data 
scraping)
Conclusões 
 Management Studio é bom, mas pode melhorar 
 Ajustes simples para tornar UI mais amigável e 
UX melhor 
 Modificações avançadas para ganho de 
produtividade 
 Facilitar a vida de quem desenvolve SQL ou 
administra BD por scripts
OBRIGADO! Ms. Mauro Pichiliani 
@pichiliani 
mauro@pichiliani.com.br
Links 
 http://facebook.com/devSQL 
 Devsql-subscribe@yahoogroups.com 
 SQL Formatter 
http://www.dpriver.com/pp/sqlformat.htm 
 XYplorer: 
http://www.xyplorer.com/index.php 
 ClipX http://bluemars.org/clipx/

Melhorias na interface do Management Studio

  • 1.
    Melhorias na interfacedo Management Studio Ms. Mauro Pichiliani @pichiliani mauro@pichiliani.com.br
  • 2.
  • 3.
    Sobre mim Mestre e doutorando em computação pelo ITA  Escritor da SQL Magazine, Fórum Access, Java Magazine, SQLServerCentral.com e outras  Colaborador do iMasters há 13 anos  Autor do livro “Conversando sobre banco de dados”  Co-autor do @databasecast
  • 4.
    Roteiro  Históriado Management Studio  Por que melhorar?  Sugestões de melhorias  Outras sugestões  Conclusões
  • 5.
    História do ManagementStudio  iSQL/W no SQL Server 6.5
  • 6.
    História do ManagementStudio  Query Analyzer no SQL Server 7.0
  • 7.
    História do ManagementStudio  Query Analyzer no SQL Server 2000
  • 8.
    História do ManagementStudio  Management Studio no SQL Server 2005
  • 9.
    História do ManagementStudio  Management Studio no SQL Server 2008 e R2
  • 10.
    História do ManagementStudio  Management Studio no SQL Server 2012
  • 11.
    História do ManagementStudio  Management Studio no SQL Server 2014
  • 12.
    Resumo Management Studio  Boa ferramenta (não é excelente)  “Irmão pobre” do Visual Studio?  Certamente criado por engenheiros…  Permite uso de plug-ins  SSMS Tools Pack http://www.ssmstoolspack.com/  Muito espaço para melhorar a UI e UX (mesmo para DBAs e devs)  Existem alternativas (Ex: TOAD for SQL Server)
  • 13.
    Por que melhorar?  Quanto custa um erro?  Ferramenta deve ajudar a reduzir enganos e não conduzir a erros  Vale a pena ganhar um micro-segundo?  Talvez, se a operação for executada muitas vezes  Organização e produtividade  Melhor gastar x seg. organizando agora do que 10x seg. procurando depois  Padrão x customização  Poucos usuários customizam UI (especialmente iniciantes)
  • 14.
    Sugestão 1: Íconesna toolbar  Problema: ícones próximo e ambíguos  Execute, Debug, Parse, Start Debugging…  Sugestão: organização melhor (por padrão)
  • 15.
    Sugestão 2: UIdiferenciada por ambiente  Problema: Comandos no ambiente errado mesmo com info. sobre local em vários pontos!  Formato único de cores p/ todos os ambientes
  • 16.
    Sugestão 2: UIdiferenciada por ambiente  Sugestão: esquema de UI (cores, fontes, etc) separada por servidor/banco
  • 17.
    Sugestão 3: Identificarambiente  Problema: seleção no Object Explorer difícil de ver!
  • 18.
    Sugestão 3: Identificarambiente  Sugestão: TreePath do XYplorer + refresh automático
  • 19.
    Sugestão 4: Formatadorde SQL  Problema: SQL escrito de qualquer jeito
  • 20.
    Sugestão 4: Formatadorde SQL  Sugestão: Incluir formatador de SQL tipo Instant SQL Formatter (http://www.dpriver.com/pp/sqlformat.htm)
  • 21.
    Sugestão 5: Indicadorde erro no script  Problema: Identificar locais de erro em scripts grandes
  • 22.
    Sugestão 5: Indicadorde erro no script  Sugestão: barra lateral + OverView (Eclipse e Sublime)
  • 23.
    Sugestão 6: Localde erro da sintaxe  Problema: Erro aparece na área de resultado (foco de atenção + clique na mensagem)
  • 24.
    Sugestão 6: Localde erro da sintaxe  Sugestão: Bolha de diálogo
  • 25.
    Sugestão 7: Sugestãode correção  Problema: Pouca pista sobre erro e nenhuma ajuda
  • 26.
    Sugestão 7: Sugestãode correção  Sugestão: Fornecer sugestão ao estilo Google
  • 27.
    Sugestão 8: Melhoriasno UNDO/REDO  Problema: Pouca informação sobre UNDO/REDO
  • 28.
    Sugestão 8: Melhoriasno UNDO/REDO  Sugestão: Mais contexto!
  • 29.
    Sugestão 9: Melhoriasno COPY/PASTE  Problema: Um slot de copy/paste
  • 30.
    Sugestão 9: Melhoriasno COPY/PASTE  Sugestão: Histórico e múltiplos slots (ClipX http://bluemars.org/clipx/)
  • 31.
    Sugestão 10: Janelade busca  Problema: Obstrui o texto ao redor da palavra
  • 32.
    Sugestão 10: Janelade busca  Sugestão: Barra de busca (Firefox)
  • 33.
    Sugestão 10: Janelade busca  Sugestão: Resultado destacado
  • 34.
    Sugestão 10: Janelade busca  Sugestão: Ligação de resultados
  • 35.
    Sugestão 11: Resultadooposto  Problema: Obter linhas que não satisfazem a consulta
  • 36.
    Sugestão 11: Resultadooposto  Sugestão: Linhas semi-transparentes com resultado que não atende à query
  • 37.
    Sugestão 12: Indicaçãode valores null  Problema: Quantos null temos por coluna?
  • 38.
    Sugestão 12: Indicaçãode valores null  Sugestão: Colorir com vermelho/verde nome da coluna
  • 39.
    Sugestão 13: Manipularseleção no grid  Problema: Trabalhar com dados selecionados no grid de resultado
  • 40.
    Sugestão 13: Manipularseleção no grid  Sugestão: Criar tabela temporária, gerar o SQL e outras operações a partir de seleção
  • 41.
    Outras sugestões Integração com pacote para TDD  Coleta automática de métricas de software  Checador de sintaxe + sanitizador  Geração de SQL a partir de seleção em gráfico  Verificar diferença entre scripts (WinDiff)  Verificador de dados duplicados  Comparador de bancos/schema
  • 42.
    Outras sugestões Interface para manipulação/pesquisa por intervalos de datas  Opções de refatoração (e rejuvenecimento)  Melhorias para importar dados (data scraping)
  • 43.
    Conclusões  ManagementStudio é bom, mas pode melhorar  Ajustes simples para tornar UI mais amigável e UX melhor  Modificações avançadas para ganho de produtividade  Facilitar a vida de quem desenvolve SQL ou administra BD por scripts
  • 44.
    OBRIGADO! Ms. MauroPichiliani @pichiliani mauro@pichiliani.com.br
  • 45.
    Links  http://facebook.com/devSQL  Devsql-subscribe@yahoogroups.com  SQL Formatter http://www.dpriver.com/pp/sqlformat.htm  XYplorer: http://www.xyplorer.com/index.php  ClipX http://bluemars.org/clipx/