Crie um Dynamic Web Project
Nesta seção, iremos criar uma aplicação WEB vazia testewscxf om Dynamic Web Project. Para fazer isso, vá até menu File/New /Dynamic Web Project:
O New Dynamic Web Project vai abrir um wizard . Complete com o nome do projeto – testewscxf – e selecione Target runtime com seu servidor. Se nenhum servidor estiver definido, clique no botão New Runtime para defini-lo.
Defina o novo servidor
Clique no botão New Runtime para abrir o wizard para criar um servidor. Selecione o Tomcat v7.0 Server:
Clique no botão Next, a página do wizard mostra a seleção do diretório do Tomcat (Tomcat existente ou pasta vazia onde o Tomcat deve ser instalado). Aqui iremos selecionar o Tomcat 7 instalado. Clique no botão Browse para selecionar o Tomcat home (no meu caso, C:\Apache\apache-tomcat-7.0.20):
New Dynamic Web Project configurado
Clique no botão Finish, a nova página do wizard do New Dynamic Web Project aparece:
Os campos nesse wizard estão pré-preenchidos como a versão 3.0 Dynamic Module Web, o que significa que o Tomcat 7.0 suporta o 3.0 servlet (você pode selecionar outra versão se quiser). Clique no botão Finish, e a aplicação WEB vazia testewscxf é gerada.
Não entendeu? siga o passo-a-passo no vídeo.
Primeiro passo é extrair o arquivo em algum lugar.
No meu caso eu preferir extrair dentro da pasta plugin do próprio eclipse.
Em seguida vá no guia Windows->Propriedades
procure a opção Web Service->CXF2.Preference
Depois selecione a pasta extraida e Clique em ok!
Ele ira carregar para você o CXF.
Maiores dúvidas siga o passo-a-passo no vídeo.
Bem-vindo ao PMD para Eclipse website Atualização SiteThis fornece atualizações para o plugin do Eclipse para o PMD.
Instalação do Plugin
Se você já tiver instalado uma versão do Eclipse plug-in PMD antes de novembro de 2012, então você deve remover / desinstalar primeiro. Para instalar o plugin do PMD para Eclipse:
In Eclipse, click on Help -> Install New Software...
Click on Add..
Enter the following:
Name: PMD for Eclipse Update Site
URL: http://pmd.sourceforge.net/eclipse
and click OK.
Você deverá instar até PMD para Eclipse 4. Selecione a caixa de seleção ao lado e clique em Avançar.
Você precisa aceitar a licença e confirme que você deseja instalar um plugin que não está assinado digitalmente. Vá em frente e instalá-lo de qualquer maneira.
Reinicie o eclipse.
No meu caso eu tenho uma classe de ligação ao meu banco de dados do sql, chamada conexãoBD. E tenho também uma classe chamada clientes, no qual tem todas as minhas variáveis da tabela cliente, no banco.
Para fazer o insert vamos precisar das seguintes using: System.Data.SqlClient; System.Data;
A minha classe de liganção com BD e que irá realizar todos os comandos sql sobre cliente. Dei o nome de DALClientes no qual tem como pai a classe de conexãoBD.
É preciso declarar a classe cliente: Cliente cliente;
Embaixo iremos fazer um com comando Insert normal, basta seguir o exemplo abaixo. Vamos passar por parametro cada dado que esta em values, certo?
SqlException: Ocorreu uma exceção ao executar o comando em uma linha bloqueada. Essa exceção não é gerada quando você estiver usando o Microsoft. NET Framework versão 1.0.
Um tempo limite ocorreu durante uma operação de streaming. Para mais informações sobre streaming, ver suporte para streaming SqlClient .
Você pode usar o ExecuteNonQuery para executar operações de catálogo (por exemplo, consultando a estrutura de um banco de dados ou a criação de objetos de banco de dados como tabelas), ou para alterar os dados em um banco de dados sem usar um DataSet , executando UPDATE, INSERT ou DELETE.
Embora o ExecuteNonQuery não retorna linhas, todos os parâmetros de saída ou retornar valores mapeados para os parâmetros são preenchidos com dados.
Há no exemplo abaixo eu estou fazendo uma verificação se o banco está ou não conectado. Lembrando que existem várias maneiras de programar.
Acredito que meu código esteja bem facil o entendimento. Dúvidas? Poste comentário ou enviei email.
class DALClientes : conexaoBD
{
Cliente cliente;
public bool InsertClient(Cliente cliente)
{
vsql = "INSERT INTO Clientes(nome, endereco, telefone, datNasc, email, observacoes)" + "VALUES(@nome, @endereco, @telefone, @datNasc, @email, @observacoes)";
//Definição do comando SQL
SqlCommand comando = null;
if (this.conectar())
{
try
{
comando = new SqlCommand(vsql, objConexao);
//passando o parametro para propriedade
comando.Parameters.Add(new SqlParameter("@nome", cliente.Nome));
comando.Parameters.Add(new SqlParameter("@endereco", cliente.Endereco));
comando.Parameters.Add(new SqlParameter("@telefone", cliente.Telefone));
comando.Parameters.Add(new SqlParameter("@datNasc", cliente.DatNasc));
comando.Parameters.Add(new SqlParameter("@email", cliente.Email));
comando.Parameters.Add(new SqlParameter("@observacoes", cliente.Observacoes));
comando.ExecuteNonQuery();
objConexao.Close();
return true;
}
catch (SqlException ex)
{
throw ex;
}
finally
{
this.desconectar();
}
}
else
{
return false;
}
}
}
Clique do botão cadastrar, dá uma olhadinha como ficou.
Estou instanciando minha classe DALCLientes e Clientes. Após isto estou convertendo os campos passando das propriedades para o text.
private void btnCad_Click(object sender, EventArgs e)
{
try
{
//instanciando as Classes
DALClientes DALclientes = new DALClientes();
Cliente cliente = new Cliente();
//converter campos passando propriedades para text
cliente.Nome = Convert.ToString(this.textNome.Text);
cliente.Endereco = Convert.ToString(this.textEnd.Text);
cliente.Telefone = Convert.ToString(this.textTel.Text);
cliente.DatNasc = Convert.ToDateTime(this.textDatNasc.Text);
cliente.Email = Convert.ToString(this.textEmail.Text);
cliente.Observacoes = Convert.ToString(this.textObs.Text);
//chamando a função Insert atraves da classe DAOClientes
DALclientes.InsertClient(cliente);
MessageBox.Show("Cadastrado, com sucesso!");
}
catch (SqlException ex)
{
MessageBox.Show("Error: " + ex.Message);
}
finally
{
//LimpaCampos
LimpaCampos();
}
}
O botão Sair apenas solicita a confirmação para encerrar a aplicação.
private void btnSair_Click(object sender, EventArgs e)
{
if (MessageBox.Show("Deseja encerrar a aplicação ?", "Aviso",MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
Application.Exit();
}
}
Estava tirando uma dúvida de uma caloura.
E acabei descobrindo, achei interessante compartilhar com você.
Ela queria fazer um messageBox no console do visual studio 2012.
O primeiro passo e ir na solução do seu projeto, com botão direito em references e em seguida clique em Add Reference...
Em seguida vai abrir uma janela. Nesta janela você clica em Assemblies, depois em Framework.
Em framework você vai procurar lá System.Windows.Forms, marca o quadradinho e da ok.
Agora vamos para parte do código, agora la na parte aonde se encontra todas using. Você vai acrescentar lá using System.Windows.Forms;
E fazer o messageBox que deseja.
Download Exemplo clique aqui!
Simples não?
Dúvidas? Me mande comentário ou add facebook.
E acabei descobrindo, achei interessante compartilhar com você.
Ela queria fazer um messageBox no console do visual studio 2012.
O primeiro passo e ir na solução do seu projeto, com botão direito em references e em seguida clique em Add Reference...
Em framework você vai procurar lá System.Windows.Forms, marca o quadradinho e da ok.
Agora vamos para parte do código, agora la na parte aonde se encontra todas using. Você vai acrescentar lá using System.Windows.Forms;
E fazer o messageBox que deseja.
Download Exemplo clique aqui!
Simples não?
Dúvidas? Me mande comentário ou add facebook.
MessageBox com Título e botões Yes, No
if (MessageBox.Show("Deseja fechar a janela ?", "Confirmação", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
{
// fechar a janela
}
else
{
// Tomar outra ação
}
MessageBoxResult result = MessageBox.Show("Deseja fechar esta janela ?",
"Confirmação", MessageBoxButton.YesNoCancel);
if (result == MessageBoxResult.Yes)
{
this.Close();
}
else if (result == MessageBoxResult.No)
{
// Código para o botão No
}
else
{
// Código para o botão Cancel
}
MessageBox com Título e botões OK e Cancel e Ícone Warning
MessageBoxResult result = MessageBox.Show(this, "Deseja fechar a janela",
"Confirmação", MessageBoxButton.OKCancel, MessageBoxImage.Warning);
if (result == MessageBoxResult.OK)
{
this.Close();
}
else
{
/// ação para o botão Cancel
}
Já estão disponíveis os vídeos gravados durante o AppDay. Assista!
Parte 1: http://bit.ly/YFTBXQ
Parte 2: http://bit.ly/12BHDTB
Parte 3: http://bit.ly/15BwJAm
Curta a página do Facebook: Microsoft Developer Brasil
Fonte: Microsoft Developer Brasil
Cláusula WITH OWNERACCESS OPTION
A declaração WITH OWNERACCESS OPTION é opcional. O exemplo abaixo habilita o usuário a ver as informações de salário (mesmo que não tenha outra permissão para ver a tabela Folha de Pagamentos) desde que o proprietário da consulta tenha tal permissão:
SELECT Sobrenome, Nome, Salário FROM FuncionáriosORDER BY Sobrenome WITH OWNERACCESS OPTION;
Se, por outro lado, um usuário for impedido de criar ou anexar a uma tabela, você poderá usar WITH OWNERACCESS OPTION para habilitá-lo a executar uma consulta construção de tabela ou consulta anexação. Se você quiser reforçar as configurações de segurança do grupo de trabalho e as permissões dos usuários, não inclua a declaração WITH OWNERACCESS OPTION. Esta opção exige que você tenha acesso ao arquivo System.mda associado ao banco de dados. É realmente útil em implementações de multiusuários seguras.
Cláusula ORDER BY
ORDER BY é opcional. Entretanto, se você quiser exibir seus dados na ordem classificada, você deve utilizar ORDER BY. O padrão ordem de classificação é ascendente (A a Z, 0 a 9). Os dois exemplos abaixo classificam os nomes dos funcionários pelo sobrenome.
SELECT Sobrenome, Nome FROM Funcionários ORDER BY Sobrenome;
SELECT Sobrenome, Nome FROM Funcionários ORDER BY Sobrenome ASC;
Para classificar em ordem descendente (Z a A, 9 a 0), adicione a palavra reservada DESC ao final de cada campo que você quiser classificar em ordem descendente. O exemplo abaixo seleciona salários e os classifica em ordem descendente
SELECT Sobrenome, Salário FROM Funcionários ORDER BY Salário DESC, Sobrenome;
Se você especificar um campo que contém dados Memo ou OLE Objects na cláusula ORDER BY, um erro ocorrerá. O programa principal de banco de dados do Jet não classifica campos deste tipo. ORDER BY é normalmente o último item em uma instrução SQL.
Você pode incluir campos adicionais na cláusula ORDER BY. Os registros são classificados primeiro pelo primeiro campo listado depois de ORDER BY. Os registros que tiverem valores iguais naquele campo são classificados pelo valor no segundo campo listado e assim por diante.
Cláusula HAVING
HAVING é opcional. HAVING é semelhante a WHERE, que determina quais registros são selecionados. Depois que os registros são agrupados com GROUP BY, HAVING determina quais registros são exibidos:
SELECT CategoriaID, Sum(UnidadesNoEstoque) FROM Produtos GROUP BY CategoriaID HAVING Sum(UnidadesNoEstoque) > 100 AND LIKE "BOS*";
Uma cláusula HAVING pode conter até 40 expressões vinculadas por operadores lógicos, como And ou Or.
Cláusula GROUP BY
GROUP BY é opcional. Valores de resumo são omitidos se não houver qualquer função aggregate SQL na instrução SELECT. Os valores Null nos campos GROUP BY são agrupados e não omitidos. No entanto, os valores Null não são avaliados em qualquer função aggregate SQL. Use a cláusula WHERE para excluir linhas que você não quer agrupadas e use a cláusula HAVING para filtrar os registros após eles terem sido agrupados.
A não ser que contenha dados Memo ou OLE Object, um campo na lista de campos GROUP BY pode fazer referência a qualquer campo em qualquer tabela listada na cláusula FROM. Mesmo que o campo não esteja incluído na instrução SELECT, fornecida a instrução SELECT, inclua pelo menos uma função SQL. O programa principal de banco de dados do Jet não pode agrupar campos Memo ou OLE Objects.
Todos os campos na lista de campos SELECT devem ser incluídos na cláusula GROUP BY ou incluídos como argumentos em uma função aggregate SQL.
USE nome_do_banco
GO
CREATE VIEW comedias
AS
SELECT * FROM nome_da_tabela
WHERE tipo = 'condição';
USE [nome_DB]
GO
ALTER TABLE dbo.Tabela ADD Nome_da_coluna INT DEFAULT(0) NOT NULL
GO
Primeiros passos da instalação do SDK do Android
Sistemas Operacionais (Windows, Mac OS ou Superior, Linux)
Ambientes de Desenvolvimento
Eclipse IDE
Eclipse 3.2, 3.3 (Europa)
Eclipse JDT Plugin (já incluso na maioria dos pacotes do Eclipse)
JDK 5 ou JDK 6 (Apenas a JRE não é suficiente)
Não é compatível com o compilador da Gnu (gcj)
Android Development Tools plugin (opcional)
Iniciando a instalação do SDK Android
Primeiro passo, faça o download do SDK do Android
Após o download do SDK, descompacte o arquivo .zip em uma pasta apropriada na sua máquina. Por padrão, os arquivos do SDK são descompactados numa pasta nomeada android_sdk_|platform||release||build|. O diretório contém os subdiretórios tools/, samples/ e outros.
Anote o lugar onde você descompactou o arquivo, pois este endereço será necessário para configurar o plugin ou as ferramentas do SDK.
Opcionalmente você pode adicionar o diretório tools do SDK ao path do seu sistema. Isto possibilita rodar o Android Debug Bridge (adb) e outras ferramentas de linha de comando sem precisar especificar o caminho completo para o diretório tools. Se apropriado, siga as instruções de acordo com o seu sistema operacional:
- No Linux, edite o arquivo ~/.bash_profile ou ~/.bashrc. Procure por uma linha que define a variável de ambiente PATH e adicione o caminho completo do diretório tools do SDK. Caso você não encontre esta linha, pode adicionar no final do arquivo a seguinte linha:
export PATH=${PATH}:/tools
No Mac procure no seu diretório home pelo arquivo .bash_profile e proceda da mesma forma que o Linux. Caso você não encontre o arquivo, pode criar um.
No Windows, botão direito em Meu Computador e selecione Propriedades. Na aba Avançado, clique em Variáveis de Ambiente, e na janela que aparece, clique duas vezes no Path em Variáveis do Sistema. Adicione o caminho completo para o diretório tools/.
Se você chegou até aqui, seguidos todos os passos, você instalou o SDK Android com sucesso. Porém agora para começar a desenvolver aplicações com Android no Eclipse, você precisa instalar um plugin chamado Android Development Tools (ADT), que adiciona suporte integrado para projetos e ferramentas Android.
Instalação do Plugin no Eclipse (ADT)
Para baixar o Plugin do Eclipse, siga os passos abaixo:
1. Inicie o Eclipse, selecione Help > Software Updates > Find and Install.
2. Na janela que aparece, selecione Search for new features to install e pressione Next.
3. Pressione New Remote Site.
4. Entre com um nome para o site remoto (Ex.: Android Plugin) e informe a seguinte URL:
https://dl-ssl.google.com/android/eclipse/
Caso o acesso via “https” não funcione, coloque apenas “http”:
http://dl-ssl.google.com/android/eclipse/
5. Pressione OK
6. Você verá o novo site adicionado e selecionado na lista de busca. Pressione Finish
7. O plugin ADT não é assinado, mas você pode aceitar a instalação de qualquer maneira clicando em Install All
8. Reinicie o Eclipse.
9. Depois de reiniciar, atualize as preferências do Eclipse para apontar para o diretório do SDK:
a) Selecione Window > Preferences para abrir o painel de preferências. (Mac OS X: Eclipse > Preferences)
b) Selecione Android no painel da esquerda
c) Localize o diretório do SDK clicando em Browse… no campo SDK Location
d) Pressione Apply, e depois OK
Como criar um Projeto Android no Eclipse
1 – Selecione File > New > Project
2 – Selecione Android > Android Project, e pressione Next
3 – Selecione os conteúdos do projeto
4 – Selecione Create new project in workspace para iniciar um novo código
5 – Informe um nome para o projeto, para o pacote de base, para uma classe que estenderá Activity e um nome para a sua aplicação. (Uma classe Activity representa uma atividade, ou seja, qualquer coisa que o usuário pode fazer. Quase todas as atividades interagem com o usuário, então a classe Activity cria uma janela para você, na qual você pode colocar sua interface gráfica)
5.1 – Selecione Create new project from existing code para iniciar um projeto apartir de um código existente Utilize esta opção se você deseja rodar qualquer exemplo incluído no SDK. As aplicações de exemplo estão no diretório samples/
6 – Selecione o diretório que contém o código existente e clique em OK. Se o diretório contém um arquivo manifest válido, o ADT preenche o nome do pacote, classe de atividade e aplicação para você
7 – Pressione Finish
O plugin ADT cria os seguintes arquivos para você:
src/ Uma pasta contendo a classe de Activity
res/ Uma classe com seus recursos
AndroidManifest.xml O arquivo manifest do seu projeto
Depurando uma aplicação
1 – Selecione Run > Open Run Dialog… ou Run > Open Debug Dialog
2 – Selecione Android Application na lista de projetos à esquerda e clique em New
3 – Informe um nome para a sua configuração
4 – Na aba Android, selecione o projeto e a classe de Activity
5 – Na aba Emulator, defina as propriedades que conforme desejar
6 – Você pode definir opções adicionais na aba Common
7 – Pressione Apply para salvar a configuração, ou Run ou Debug como for mais apropriado.
Agora você já pode rodar e depurar sua aplicação. Basta selecionar Run > Run ou Run > Debug. O ato de rodar ou depurar uma aplicação, dispara as seguintes ações:
1) Inicia o emulador, caso não esteja rodando.
2) Compila o projeto, se houveram mudanças desde a última compilação, e instala a aplicação no emulador.
Espero que tenha ajudado com tutorial e qualquer dúvida, poste que esclarecemos na medida do possível.
Download e mais detalhes sobre: http://developer.android.com/sdk/index.html
Fonte: universowap, Site Oficial do Android e Portal Android
O que é o AppDay?
Dia em que toda comunidade de desenvolvedores e entusiastas por tecnologia do país serão convidados a participar de um evento virtual único.
A Microsoft apoiará cada desenvolvedor que nesta data, tiver interesse em criar e submeter um aplicativo do Windows 8 para a Windows Store.
Todos participantes do evento AppDay receberão um treinamento online de 1 dia totalmente gratuito, além de um certificado da Microsoft e saiba mais.
Se você quer um certificado Microsoft, submeta uma Aplicação para Windows Store entre
20/04 e 05/05 e inscreva-se abaixo:
Eu programo, porque me diverto muito!
Divulgando: MVP Show: Trilha de Consumerização de TI
Idioma(s): Português.
Produto(s): Microsoft Virtualization e Windows Intune.
Público(s): Dev/Programador Pro e Generalista TI implem_TI .
Para você profissional da área, entender Consumerização de TI e as tecnologias que viabilizam isso passam a ser essenciais para você alcançar e ser bem sucedido na sua empresa e acompanhar essa tendência do mercado de TI. Acompanhe esse tema e aprenda como aplicar as tecnologias Microsoft no mundo real.
Responsável: Alexandro Prado - MVP
Palestrantes: Jorge Barata (MVP), Paulo Sant´anna (MTAC), Marcondes Alexandre (MVP), Igor Humberto (MTAC), Rover Marinho (MVP)
Gratis;p
Se inscreva AQUI!
Estarei disponibilizando um tutorial que eu e meus amigos de faculdade, fizemos para ministrar um mini-curso de manutenção.
Espero que ajude ;)
Para quem quer usar o pendrive para formatar o computador eu costumo usar este programa, no tutorial tem mais detalhes sobre o funcionamento do mesmo e como formatar pelo pendrive.
Este tutorial tem por objetivo ensinar de maneira detalhada como formatar e particionar um HD e como instalar o Windows. É indicado para usuários iniciantes e intermediários que deseja ter uma visão ampla de vários SO’s.
O tutorial está dividido em três partes:
I – Guia Rápido: para usuários experientes.
No guia rápido o usuário encontrará uma sistematização em dez passos para auxiliá-lo na formatação de um computador.
II – Guia Comentado: para usuários básicos e intermediários.
Nesse nível o usuário terá acesso a conceitos básicos e a um guia comentado, que explica detalhadamente cada um dos dez passos da formatação.
III - Guia Visual: para usuário inicial.
Nesse nível o usuário terá acesso a imagens de todo o processo de formatação para windows.
Download disponível aqui!
O levantamento de dados e fatos
Introdução
Durante as fases de estudo da viabilidade e análise do sistema existente, o analista precisa de dados, informações e fatos que irão ajuda-lo no projeto do novo sistema em estudo. Na maioria das vezes, os elementos de que o analista de sistemas necessita não estão à sua disposição de forma clara e objetiva. Portanto, é indispensável procurar esses elementos seguindo uma metodologia de coleta de informações basicamente padronizada para situações dessa natureza, permitindo assim um trabalho ordenado e bem planejado. Considerando que se trata de uma etapa investigativa, os métodos mais importantes para a coleta de informações sobre o sistema atual são:
- Entrevistas;
- Pesquisa a arquivos, manuais de procedimentos operacionais, administrativos e outros, bem como, a verificação de todos os tipos de registros de informações existentes;
- Questionários;
- Observação pessoal;
- Seminários.
I. Entrevistas
Sem dúvida, uma das formas mais valiosas para a obtenção das informações de que o analista precisa é a entrevista. No entanto, essa metodologia exige uma série de cuidados que serão vistos mais adiante e que não devem ser negligenciados nem mesmo pelos profissionais mais experientes. Na verdade, as informações necessárias só serão obtidas, se o analista possuir “um verdadeiro jogo de cintura” para conseguir conviver com idéias muitas vezes divergentes, sem conseguir conviver com idéias muitas vezes divergentes, sem entrar em confronto com usuários, sejam eles de quaisquer níveis na empresa, caso contrário o seu trabalho nessa fase poderá ser inútil. Logo no decorrer das primeiras entrevistas, o analista coletará uma grande quantidade de informações, todavia de forma não muito clara e por isso deverão ser analisadas para se ter uma visão geral do sistema em operação.
Planejamento de uma entrevista
Para o analista de sistemas ter êxito em suas entrevistas, ele deverá:
1. Marcar data e horário para a entrevista
Considerando os compromissos dos usuários, a entrevista deve ser agendada com o entrevistador com vários dias de antecedência e visando favorece-lo em tudo o que for possível.
É importante que o entrevistador seja pontual, pois qualquer atraso de sua parte reflete desinteresse pelo assunto em pauta e isto pode prejudicar o seu relacionamento com o entrevistado.
2. A preparação do entrevistador
O analista de sistemas deve estar bem preparado para realizar a entrevista sob diversos aspectos que veremos neste item. A preparação da entrevista começa em casa com a esquematização do trabalho a ser realizado. Para evitar a omissão de informações ou o retorno do entrevistador ao entrevistado sem necessidade, devem ser relacionados cuidadosamente os itens que precisam ser investigados e seguidos sequencialmente pois nessa etapa, o analista já terá dados suficientes para saber o que realmente quer.
É bom também o analista se lembrar de que a documentação da entrevista é fundamental, todavia não se deve anotar palavra por palavra que o entrevistado fala, constrangendo com isso o próprio usuário. A memorização das idéias e os pontos-chaves de informações ajudam bastante na realização da entrevista.
3. O comportamento do entrevistador
O analista de sistemas possui normalmente um bom preparo acadêmico e profissional, além de uma certa vivência no trato com pessoas de diversos escalões da empresa e com isso está apto a executar a tarefa de entrevistas.
Principalmente nessa etapa, o seu comportamento deve ser bastante profissional e marcado por boas maneiras no relacionamento com todos os funcionários que lhe contatar, mesmo que não estejam no sistema em estudo.
É bom não se esquecer de alguns itens que devem ser observados por ocasião das entrevistas, a saber:
- Não fumar durante a entrevista;
- Apresentar-se descentemente trajada e de acordo com a cultura da empresa;
- Ficar atento às perguntas e respostas do entrevistado;
- Mostrar interesse em ajudar o usuário a resolver os problemas que o atingem e;
- Não desviar a atenção para assuntos que não lhe dizem respeito.
4. A linguagem do entrevistador
A entrevista nada mais é do que a comunicação de idéias e obviamente só pode ser realizada se os interlocutores falarem a mesma língua.
Um detalhe bastante importante na entrevista é evitar o uso de termos técnicos, principalmente quando o usuário não os conhece, pois isso confunde o entrevistado e pode dar a impressão de que o analista não está entendendo os problemas mostrados, e passou a utilizar termos como subterfúgio.
5. Fatos e opiniões
Durante uma entrevista é muito importante que o analista consiga distinguir um fato de uma opinião.
Obviamente, fatos são elementos importantíssimos na análise do sistema existente, pois mostram o que realmente acontece no dia-a-dia da empresa e principalmente dos setores envolvidos no projeto do novo sistema.
Por outro lado, opiniões dos usuários também merecem uma grande consideração do analista, mas como tais, devem ser estudadas e avaliadas para saber até que ponto são válidas.
É importante frisar que nessa etapa, o analista não deve exprimir a sua opinião sobre determinado assunto relacionado com o sistema em estudo, exceto em casos excepcionais que não atingem em nada o seu projeto.
6. Necessidades do usuário
Durante a fase de entrevistas, acontece do usuário ficar, muito entusiasmado com as facilidades que o novo sistema possa lhe trazer, e acaba desviando a sua atenção das reais necessidades da empresa, passando a raciocinar em termos de desejos pessoais.
Muitas vezes ocorre de se pedir relatórios ou inclusões de recursos que jamais terão qualquer utilidade tanto no presente como no futuro.
Aí entra a habilidade do profissional do analista, em conseguir mostrar que o sistema deve ser elaborado para atender as reais necessidades da empresa, e não para satisfazer apenas os desejos dos usuários.
7. Considerações gerais sobre a Entrevista
Uma boa entrevista deve ser dividida em três partes basicamente distintas: introdução, entrevista propriamente dita e o encerramento.
A introdução consiste na identificação do analista e explanações sobre os principais objetivos da entrevista. Além disso, o analista deve informar ao entrevistado quais as razões que o levaram a ser a pessoa escolhida para entrevista. Deve ser criado um clima descontraído e de confiança do entrevistado no entrevistador.
A partir daí, começa-se a entrevista propriamente dita que deve ser conduzida com muito profissionalismo pelo analista.
Durante a entrevista, o analista deve ter como princípio, não criticar a empresa, o trabalho do entrevistado, o sistema existente ou qualquer funcionário da organização.
O analista deve tomar cuidado também para não tornar a entrevista num interrogatório; perguntas aparentemente sem importância devem ser evitadas.
Para encerrar a entrevista, o analista deve manter o mesmo clima de descontração inicial, agradecendo a atenção do entrevistado e informando-lhe caso seja necessário um novo encontro.
Após a conclusão da entrevista, o analista deverá fazer um relatório das informações obtidas, de preferência com a máxima urgência para não perder detalhes ou informações relevantes porventura não anotadas.
Autor: Profa. Rosana Cristina Colombo
Não lembro onde conseguir esse conteúdo, mais achei muito interessante e resolvi postar ;)
METODO ÁGIL SCRUM
O que é Scrum?
É um método ágil para Gerenciamento de Projetos. Inicialmente, o Scrum foi concebido como um estilo de gerenciamento de projetos em empresas de fabricação de automóveis e produtos de consumo, por Takeuchi e Nonaka no artigo "The New Product Development Game" (Harvard Business Review, Janeiro-Fevereiro 1986).
Eles notaram que projetos usando equipes pequenas e multidisciplinares (cross-functional) produziram os melhores resultados, e associaram estas equipes altamente eficazes à formação Scrum do Rugby (utilizada para reinício do jogo em certos casos). Jeff Sutherland, John Scumniotales, e Jeff McKenna concebeu, documentaram e implementaram o Scrum, na empresa Easel Corporation em 1993, incorporando estilos de gerenciamento observados por Takeuchi e Nonaka.
Em 1995, Ken Schwaber formalizou a definição de Scrum e ajudou a implantá-lo em desenvolvimento de software em todo o mundo.
Scrum junta conceitos de Lean, desenvolvimento iterativo e do estudo de Hirotaka Takeuchi e Ikujiro Nonaka.
Como funciona?
A função primária do Scrum é ser utilizado para o gerenciamento de projetos de desenvolvimento de software. Ele tem sido usado com sucesso para isso, assim como Extreme Programming e outras metodologias de desenvolvimento.
Porém, teoricamente pode ser aplicado em qualquer contexto no qual um grupo de pessoas necessite trabalhar juntas para atingir um objetivo comum, como iniciar uma escola pequena, projetos de pesquisa científica, ou até mesmo o planejamento de um casamento.
Mesmo que idealizado para ser utilizado em gestão de projetos de desenvolvimento de software ele também pode ser usado para a gerência de equipes de manutenção, ou como uma abordagem para gestão de programas: Scrum de Scrums.
Pontos Positivos?
O Scrum é facilitado por um Scrum Master, que tem como função primária remover qualquer impedimento à habilidade de uma equipe de entregar o objetivo do sprint.
O Scrum Master não é o líder da equipe (já que as equipes são auto-organizadas), mas atua como um mediador entre a equipe e qualquer influência desestabilizadora.
Outra função extremamente importante de um Scrum Master é o de assegurar que a equipe esteja utilizando corretamente as práticas de Scrum, motivando-os e mantendo o foco na meta da Sprint.
Scrum permite a criação de equipes auto-organizadas, encorajando a comunicação verbal entre todos os membros da equipe e entre todas as disciplinas que estão envolvidas no projeto.
Um princípio chave do Scrum é o reconhecimento de que desafios fundamentalmente empíricos não podem ser resolvidos com sucesso utilizando uma abordagem tradicional de "controle".
Assim, o Scrum adota uma abordagem empírica, aceitando que o problema não pode ser totalmente entendido ou definido, focando na maximização da habilidade da equipe de responder de forma ágil aos desafios emergentes.
Pontos negativos?
Um dos grandes defeitos do Scrum, porém, é a abordagem de "receita de bolo" do gerenciamento de projetos exemplificado no Project Management Body of Knowledge ou PRINCE2, que tem como objetivos atingir qualidade através da aplicação de uma série de processos prescritos.
Informações Extras
Características:
Cada sprint é uma interação que segue o (ciclo PDCA) e entrega incremento de software pronto.
Um backlog é conjunto de requisitos, priorizado pelo Product Owner (cliente);
Há entrega de conjunto fixo de itens do backlog em série de iterações curtas ou sprints;
Breve reunião diária, ou daily scrum, em que cada participante fala sobre o progresso conseguido, o trabalho a ser realizado e/ou o que o impede de seguir avançando (também chamado de Standup Meeting ou Daily Meeting, já que os membros do time geralmente ficam em pé para não prolongar a reunião).
Breve sessão de planejamento, na qual os itens do backlog para uma sprint (iteração) são definidos;
Retrospectiva, na qual todos os membros da equipe refletem sobre a sprint passada.
Backlog de produto e backlog de sprint
Um backlog é uma lista de itens priorizados a serem desenvolvidos para um software.
O backlog de produto é mantido pelo Proprietário do Produto e é uma lista de requisitos que tipicamente vêm do cliente.
O backlog de sprint é uma interpretação do backlog do produto e contém tarefas concretas que serão realizadas durante o próximo sprint para implementar alguns dos itens principais no backlog do produto.
O backlog de produto e de sprint são, então, duas coisas totalmente diferentes, o primeiro contendo requisitos de alto-nível e o segundo contendo informações sobre como a equipe irá implementar os requisitos.
Planejamento de sprint
Antes de todo sprint, o Proprietário do Produto, o Scrum Master e a Equipe decidem no que a equipe irá trabalhar durante o próximo sprint.
O Proprietário do Produto mantém uma lista priorizada de itens de backlog, o backlog do produto, o que pode ser repriorizado durante o planejamento do sprint.
A Equipe seleciona itens do topo do backlog do produto. Eles selecionam somente o quanto de trabalho eles podem executar para terminar.
A Equipe então planeja a arquitetura e o design de como o backlog do produto pode ser implementado.
Os itens do backlog do produto são então destrinchados em tarefas que se tornam o backlog do sprint.
Scrum simplificado
Muitas organizações têm sido resistentes às metodologias introduzidas em baixos níveis da organização. Porém, a adaptabilidade do Scrum permite que ele seja introduzido de forma invisível ("stealth"), usando os três passos:
Agende uma demonstração do software com seu cliente em um mês a partir de agora;
Como equipe, tome um mês para deixar o software pronto para uma demo, com funcionalidades prontas, não simplesmente telas;
Na demonstração, obtenha feedback e use-o para guiar o seu próximo mês de trabalho de desenvolvimento.
MÈTODO AGIL XP
O que é XP?
O XP é um conjunto bem definido de regras, que vem ganhando um grande número de adeptos e por oferecer condições para que os desenvolvedores respondam com eficiência a mudanças no projeto, mesmo nos estágios finais do ciclo de vida do processo, devido a quatro lemas adotados por seus seguidores, que correspondem a quatro dimensões a partir das quais os projetos podem ser melhorados.
São eles: Comunicação, Simplicidade, FeedBack e Coragem.
Como funciona?
As Práticas do XP:
Para aplicar os valores e princípios durante o desenvolvimento de software, o XP propõe uma série de práticas.
Há uma confiança muito grande na sinergia entre elas, os pontos fracos de cada uma são superados pelos pontos fortes de outras.
1 - Jogo de Planeamento (Planning Game):
O desenvolvimento é feito em iterações semanais. No início da semana, desenvolvedores e cliente reúnem-se para priorizar as funcionalidades. Essa reunião recebe o nome de Jogo do Planeamento. Nela, o cliente identifica prioridades e os desenvolvedores as estimam.
O cliente é essencial neste processo e, assim, ele fica sabendo o que está acontecendo e o que vai acontecer no projeto. Como o escopo é reavaliado semanalmente, o projecto é regido por um contrato de escopo negociável, que difere significativamente das formas tradicionais de contratação de projetos de software.
Ao final de cada semana, o cliente recebe novas funcionalidades, completamente testadas e prontas para serem colocadas em produção.
2 - Pequenas Versões (Small Releases):
A liberação de pequenas versões funcionais do projecto auxilia muito no processo de aceitação por parte do cliente, que já pode testar uma parte do sistema que está comprando.
As versoes chegam a ser ainda menores que as produzidas por outras metodologias incrementais, como o RUP.
3 - Metáfora (Metaphor):
Procurar facilitar a comunicação com o cliente, entendendo a realidade dele.
O conceito de rápido para um cliente de um sistema jurídico é diferente para um programador experiente em controlar comunicação em sistemas de tempo real, como controle de tráfego aéreo.
É preciso traduzir as palavras do cliente para o significado que ele espera dentro do projeto.
4 - Projecto Simples (Simple Design):
Simplicidade é um princípio do XP.
Projeto simples significa dizer que caso o cliente tenha pedido que na primeira versão apenas o usuário "teste" possa entrar no sistema com a senha "123" e assim ter acesso a todo o sistema, você vai fazer o código exato para que esta funcionalidade seja implementada, sem se preocupar com sistemas de autenticação e restrições de acesso.
Um erro comum ao adotar essa prática é a confusão por parte dos programadores de código simples e código fácil.
Nem sempre o código mais fácil de ser desenvolvido levará a solução mais simples por parte de projecto.
Esse entendimento é fundamental para o bom andamento do XP. Código fácil deve ser identificado e substituído por código simples.
4 - Projecto Simples (Simple Design):
Simplicidade é um princípio do XP.
Projeto simples significa dizer que caso o cliente tenha pedido que na primeira versão apenas o usuário "teste" possa entrar no sistema com a senha "123" e assim ter acesso a todo o sistema, você vai fazer o código exato para que esta funcionalidade seja implementada, sem se preocupar com sistemas de autenticação e restrições de acesso.
Um erro comum ao adotar essa prática é a confusão por parte dos programadores de código simples e código fácil.
Nem sempre o código mais fácil de ser desenvolvido levará a solução mais simples por parte de projecto.
Esse entendimento é fundamental para o bom andamento do XP. Código fácil deve ser identificado e substituído por código simples.
5 - Time Coeso (Whole Team):
A equipe de desenvolvimento é formada pelo cliente e pela equipe de desenvolvimento.
6 - Testes de Aceitação (Customer Tests):
São testes construídos pelo cliente em conjunto com analistas e testadores, para aceitar um determinado requisito do sistema.
7 - Ritmo Sustentável (Sustainable Pace):
Trabalhar com qualidade, buscando ter ritmo de trabalho saudável (40 horas/semana, 8 horas/dia), sem horas extras.
Horas extras são permitidas quando trouxerem produtividade para a execução do projeto.
8 - Reuniões em pé (Stand-up Meeting):
Reuniões em pé para não se perder o foco nos assuntos de modo a efetuar reuniões rápidas, apenas abordando tarefas realizadas e tarefas a realizar pela equipe.
9 - Posse Coletiva (Collective Ownership):
O código fonte não tem dono e ninguém precisa ter permissão concedida para poder modificar o mesmo.
O objetivo com isto é fazer a equipe conhecer todas as partes do sistema.
10 - Programação em Pares (Pair Programming):
É a programação em par/dupla num único computador. Geralmente a dupla é criada com alguém sendo iniciado na liguagem e a outra pessoa funcionando como um instrutor.
Como é apenas um computador, o novato é que fica à frente fazendo a codificação, e o instrutor acompanha ajudando a desenvolver suas habilidades. Dessa forma o programa sempre é revisto por duas pessoas, evitando e diminuindo assim a possibilidade de erros (bugs).
Com isto, procura-se sempre a evolução da equipe, melhorando a qualidade do código fonte gerado.
11 - Padrões de Codificação (Coding Standards):
A equipe de desenvolvimento precisa estabelecer regras para programar e todos devem seguir estas regras.
Dessa forma parecerá que todo o código fonte foi editado pela mesma pessoa, mesmo quando a equipe possui 10 ou 100 membros.
12 - Desenvolvimento Orientado a Testes (Test Driven Development):
Primeiro crie os testes unitários (unit tests) e depois crie o código para que os testes funcionem.
Esta abordagem é complexa no início, pois vai contra o processo de desenvolvimento de muitos anos. Só que os testes unitários são essenciais para que a qualidade do projeto seja mantida.
13 - Refatoração (Refactoring):
É um processo que permite a melhoria contínua da programação, com o mínimo de introdução de erros e mantendo a compatibilidade com o código já existente.
Refactorizar melhora a clareza (leitura) do código, divideo em módulos mais coesos e de maior reaproveitamento, evitando a duplicaçao de código-fonte.
14 - Integração Contínua (Continuous Integration):
Sempre que realizar uma nova funcionalidade, nunca esperar uma semana para integrar na versão actual do sistema.
Isto só aumenta a possibilidade de conflitos e a possibilidade de erros.
Pontos Positivos?
Seguindo os requisitos expostos, anteriormente, o XP poderá trazer inúmeros benefícios ao mercado, de forma que o processo de desenvolvimento se torne mais ágil e flexível.
Um desses benefícios é a agilidade no Planejamento (Planning Games) de não definir uma especificação completa e formal dos requisitos, ao contrário das metodologias tradicionais.
Outro é a produção de sistemas simples que atendam aos atuais requisitos, não tentando antecipar o futuro e permitindo atualizações freqüentes em ciclos bastante curtos.
A comunicação com o cliente, no XP, mostra-se mais intensa que nos métodos tradicionais, devendo o cliente estar sempre disponível para tirar as dúvidas, rever requisitos e atribuir prioridades, utilizando-se de sistemas de nomes, em vez de termos técnicos para facilitar a comunicação.
O código é sempre escrito em duplas, visando a melhorar a qualidade do código por um custo muito baixo, às vezes menor do que o desenvolvimento individual.
O código deve estar padronizado, para que todos na equipe possam entender o que está sendo escrito e possa ser validado durante todo o desenvolvimento, tanto pelos desenvolvedores quanto pelos clientes, a fim de se saber se os requisitos estão ou não sendo atendidos.
Pontos negativos?
No entanto, o XP não deve ser aplicado a qualquer tipo de projeto.
O grupo de desenvolvedores deve formar uma equipe de 2 a 10 integrantes, que devem estar por dentro de todas as fases do desenvolvimento.
É necessário realizar vários testes, às vezes, alterar o projeto em decorrência destes.
A equipe tem de ser bastante interessada e pró-ativa, para assegurar a alta produtividade, e o cliente deve estar sempre disponível para tirar dúvidas e tomar decisões em relação ao projeto.
MODELO CASCATA
O que é Cascata?
O modelo em cascata é uma das metodologias com maior ênfase no planejamento, seguindo seus passos através da captura dos requisitos, análise, projeto, codificação e testes em uma seqüência pré-planejada e restrita.
O progresso é geralmente medido em termos de entrega de artefatos—especificação de requisitos, documentos de projeto, planos de teste, revisão do código, e outros.
O modelo em cascata resulta em uma substancial integração e esforço de teste para alcançar o fim do ciclo de vida, um período que tipicamente se estende por vários meses ou anos.
Algumas equipes ágeis usam o modelo em cascata em pequena escala, repetindo o ciclo de cascata inteiro em cada iteração.
Outras equipes, mais especificamente as equipes de Programação extrema, trabalham com atividades simultaneamente.
Como funciona?
No modelo em cascata original de Royce, as seguintes fases são seguidas em perfeita ordem:
- Elicitação de requisitos
- Projeto
- Construção (implementação ou codificação)
- Integração
- Teste e depuração
- Instalação
- Manutenção de software
Para seguir um modelo em cascata, o progresso de uma fase para a próxima se dá de uma forma puramente sequencial. Por exemplo, inicialmente completa-se a especificação de requisitos — elaborando um conjunto rígido de requisitos do software, embora as especificações dos requisitos reais sejam mais detalhados, em um procedimento para projeto.
O software em questão é projetado e um blueprint é desenhado para implementadores seguirem — este projeto deve ser um plano para implementação dos requisitos dados.
Quando e somente quando o projeto está terminado, uma implementação para este projeto é feita pelos codificadores.
Encaminhando-se para o próximo estágio da fase de implementação, inicia-se a integração dos componentes de software construídos por diferentes times de projeto.
(Por exemplo, um grupo pode estar trabalhando no componente de página web da Google e outros grupos pode estar trabalhando no componente servidor da Google. Estes componentes devem ser integrados para juntos produzirem um sistema como um todo).
Após as fases de implementação e integração estarem completas, o produto de software é testado e qualquer problema introduzido nas fases anteriores é removida aqui.
Com isto o produto de software é instalado, e mais tarde mantido pela introdução de novas funcionalidades e remoção de defeitos.
Pontos Positivos?
O desenvolvimento é estruturado com sequência nas fases, todas as atividades são fundamentais e estão na ordem certa.
Um dos pontos fortes do modelo cascata está na ênfase dada a uma abordagem disciplinada, está na definição da documentação liberável em cada fase e está na recomendação de que todos produtos de cada fase sejam formalmente revisados.
Inerente a cada fase estão os procedimentos de verificação e validação (incluindo testes).
Grande parte do sucesso do modelo cascata está no fato dele ser orientado para documentação. No entanto deve-se salientar que a documentação abrange mais do que arquivo do tipo texto. Abrange representações gráficas e mesmo simulação.
Pontos negativos?
A principal desvantagem do modelo cascata é a dificuldade de acomodação das mudanças depois que o processo está em andamento. Uma fase tem de estar completa antes de passar para a próxima.
O tamanho e dificuldade deste esforço de integração e teste é uma das causas das falhas do projeto em cascata.
Métodos ágeis, pelo contrário, produzem um desenvolvimento completo e teste de aspectos (mas um pequeno subconjunto do todo) num período de poucas semanas ou meses.
Enfatiza a obtenção de pequenos pedaços de funcionalidades executáveis para agregar valor ao negócio cedo, e continuamente agregar novas funcionalidades através do ciclo de vida do projeto.
Referencia Bibliografia
SCRUM - http://www.oficinadanet.com.br/artigo/1971/metodos_ageis_scrum
XP - http://intranet.fia.edu.br/acesso_site/fia/academos/revista3/6.pdf
CASCATA- http://www.refatorar.arquiweb.com.br/index.php?/Desenvolvimento/desenvolvimento-agil.html
http://pt.wikipedia.org/wiki/Modelo_em_cascata
http://www2.dem.inpe.br/ijar/CicoloVidaSoftPrado.html
Quando se fala em variáveis surgem algumas dúvidas grandes para quem está começando. Qual a forma certa de fazer, como posso chamar, como não devo declarar e assim por diante. Muitas dúvidas no qual um dia também tive.
É uma posição nomeada de memória, que é usada para guardar um valor que pode ser modificado pelo programa.
Um dado é considerado variável quando tem a possibilidade de se alterado em algum instante no decorrer do tempo de execução do algoritmo.
Ex: Peso de uma pessoa
Ex: float Vpeso;
Há cinco tipos básicos de dados em C. Todos os outros tipos de dados em C são baseados em um destes tipos. O tamanho e a faixa variam de acordo com o processador e a implementação do compilador.
Tipos básicos de variáveis
char: caracter (um caracter)
char[10]: String (vetor de caracteres)
Int: Inteiro
float: real (seis digitos de precisao)
double: real (dez digitos de precisao)