Blog do Prof. Robson Soares Silva – Notícias e Dicas de TI

Tecnologias de Informação com ênfase em Java, Android, Banco de Dados Oracle/PgSQL/MySQL, Linux entre outras – UFMS Câmpus de Ponta Porã

mar

15

Detector de Pragas com recursos de visão computacional para Android

By Robson Soares

Tenho um projeto de pesquisa chamado Detector de Pragas Móvel, ele é um projeto inovador para pesquisa e aplicação em agronegócio, coordenado por mim (Prof. Robson Soares Silva da UFMS de Ponta Porã) e desenvolvido pelo aluno de Ciência da Computação Willians Magalhães Primo, tem por objetivo indicar a possibilidade da existência de determinadas pragas e as principais características das mesmas. A pesquisa terá a duração de 1 ano e permite detectar doenças através de imagens, usando algoritmos avançados de visão computacional, e estaremos aumentando a base de imagens e a precisão de detecção.

Computação Móvel + Visão Computacional + Agronegócio => Detector de Pragas Móvel

A pesquisa terá a duração de 1 ano, onde construímos uma primeira versão para ser utilizado pelos produtores rurais e termos um retorno sobre a sua aplicação com as doenças inicialmente implementadas, e está disponível para download em: https://play.google.com/store/apps/details?id=com.ufms.cppp.detectordepragas.

No momento o aplicativo está programado para indicar a possibilidade de dois tipos de pragas para a soja (olho de rã e ferrugem asiática), e quatro tipos de pragas para frutas cítricas (leprose, verrugose, cancro cítrico e melanose). A partir de agora estaremos aumentando o banco de doenças, para que ele possa em breve poder indicar a possibilidade de detectar as principais no país e outros lugares do mundo.

A Fábrica de Software faz um agradecimento especial ao Prof. Wesley Nunes Gonçalves que é referência aqui no CPPP para os estudos que estão sendo desenvolvidos sobre visão computacional.

Assim o produtor rural deve procurar um especialista para ver se a suspeita é verdadeira ou não, pois podem existir situações onde determinadas imagens ainda não consigam ser detectadas totalmente pelo aplicativo.

O Brasil é líder mundial em agronegócio e acreditamos que com o retorno dos produtores rurais estaremos aprimorando os algoritmos para aumentar a atuação do aplicativo que prevemos até o final do ano ser uma referência nesta área, para detectar as doenças nas principais produções do país, já que nas nossas pesquisas ele é único no Brasil com este padrão de atuação e funcionamento.

ago

18

Tudo sobre Eventos da Fronteira de Ponta Porã

By Robson Soares

O projeto “Eventos da Fronteira de Ponta Porã” divulga a história da cidade de Ponta Porã e os eventos importantes que ocorrerão na mesma durante o ano. O aplicativo mostra também alguns pontos importantes e turísticos da cidade, como bancos, restaurantes, hotéis, para que a população em geral e o turista possa se localizar ainda melhor e ter acesso a informações importantes sobre Ponta Porã.

Este projeto foi desenvolvido na Fábrica de Software da UFMS/CPPP, e foi implementado pelo aluno Cleidimar Viana dos Santos e as últimas atualizações foram efetuadas pelo aluno Willians Magalhães Primo, e o projeto é coordenado pelo Prof. Robson Soares Silva.

Com este projeto a UFMS está contribuindo com a cidade de Ponta Porã e também Pedro Juan, desenvolvendo produtos que podem ser usados pela sua população em geral e pelos turistas que vistam a cidade.

A Fábrica de Software UFMS/CPPP busca o desenvolvimento de software de forma ágil e com qualidade. A Fábrica busca seguir e sedimentar uma estrutura de desenvolvimento e organização que proporcionará o desenvolvimento de Softwares e Soluções de Gestão nas mais diversas áreas.

Este projeto foi construído com a parceria com o Convention&Visitors Bureau que tem por objetivo divulgar eventos governamentais e corporativos, fortalecer o turismo de compras, desenvolver a região e possibilitar que Ponta Porã se fortaleça como um ponto de referência de qualidade de serviço e atendimento.

ago

7

Testes de Software: google recompensou um pesquisador com R$ 80.000 reais por descobrir uma falha no Chrome OS

By Robson Soares

Olá pessoal,

Olha esta matéria do site Olhar Digital, é um ótimo site, vale a pena, são matérias super atualizadas e muito bem escritas e montadas. Nesta matéria é destacada a atuação dos Testadores de Software (chamados na matéria de caçadores de falhas). Existem muitas empresas de testes de software independentes, especializadas em testar as funcionalidades, segurança e performance dos softwares. Eles passam a vida em busca de vulnerabilidades nos sistemas de bancos, hospitais, laboratórios.

São vários tipos de testes: testes funcionais (caixa preta e caixa branca), testes de carga, testes de segurança, etc. A profissão de testador de software é uma ótima alternativa para atuar no mercado de trabalho, com bons salários e muitas vagas em aberto, atenção aí pessoal, uma boa oportunidade de mercado de trabalho para caçadores de falhas.

Recentemente o Google recompensou um pesquisador com mais de 80.000 reais por descobrir falhas no Chrome OS. A Microsoft oferece 100.000 dólares para achar falhas no novo Windows 8.1. O Google pagou 580 mil dólares em recompensa. O Mozilla também pagou alto, chegando a 570 mil dólares. Mais qualidade e segurança para nós usuários finais.

Estamos criando um grupo na fábrica de software para atuar diretamente no departamento de teste de software dos aplicativos em desenvolvimento e também desenvolvidos, de acordo com o perfil do pessoal.

Fonte: Olhar Digital

jul

30

Lançada 1a. edição da revista eletrônica da PREAE/UFMS: Sinapse UFMS e Sociedade

By Robson Soares

Foi lançada a 1a. edição da revista eletrônica da Pró-Reitoria de Extensão, Cultura e Assuntos Estudantis (PREAE) da UFMS: Sinapse UFMS e Sociedade.

Tivemos a alegria e satisfação de ter um artigo publicado sobre o Desenvolvimento de Aplicativos para Smartphones e Tablets (página 25) em Ponta Porã, o site é http://sinapse.ufms.br/.

É um marco na história da UFMS, onde esta revista possibilita que os alunos, professores e técnicos da UFMS conheçam os trabalhos desenvolvidos na universidade, e possibilita divulgá-los ainda mais e permite a integração entre todos os envolvidos nos projetos.

A versão em PDF pode ser baixada aqui. Sinapse UFMS e Sociedade: 1a. Edição

jul

26

Apresentação da Fábrica de Software

By Robson Soares

A apresentação sobre a Fábrica de Software pode ser visulizada aqui: Fábrica de Software UFMS Robson 2013

jul

21

Diferença entre verificação e validação em Teste de Software

By Robson Soares

A verificação tem o objetivo de avaliar se o que foi planejado realmente foi realizado. Ou seja, se os requisitos, funcionalidades e performance documentados foram implementados.

A validação tem o objetivo de avaliar se o que foi entregue atende as expectativas. Ou seja, se os requisitos, independente do que foi planejado, estão implementados para atender ao negócio (cliente). A Validação final do sistema é realizada pelo cliente ou usuário.

jul

21

Visão geral sobre a importância do Teste de Software

By Robson Soares

Olá pessoal,

Este post é para destacar a importância de se testar os softwares, onde na fábrica de software assim que tivermos um espaço específico, desejo criar uma equipe responsável por Testar os Softwares. Assim nenhum software será disponibilizado sem que seja homologado pela equipe de teste de software.

Os sistemas de software estão cada vez mais presentes em nossas vidas, e para um sistema ser disponibilizado ao usuário final o mesmo deve ser testado. Mas o que é o teste de software? Algumas respostas são mostradas a seguir:

- É um processo sistemático que tem por objetivo encontrar defeitos (Myers, 1979)

- É verificar se o software está fazendo o que deveria fazer, de acordo com seus requisitos, e se não está fazendo o que não deveria fazer (Rios e Moreira, 2003);

- É o processo de executar um programa com o objetivo único de encontrar defeitos – Glenn J Meyers “The Art of Software Testing”

- Teste é o processo de operar um sistema ou componente do sistema sob condições específicas, observando e registrando o resultado e fazendo uma avaliação de alguns aspectos do sistema ou componente – IEEE Standard Glossary

Existem 2 tipos testes de software: testes caixa branca e testes caixa preta.

A) Os testes caixa preta são realizados sem conhecimento da operação interna (código) do software, é feito analisando o resultado obtido, geralmente tomando por base casos de uso e especificações de requisitos.

B) Já os testes caixa branca são feitos com conhecimento da operação interna, onde o testador pode desenvolver códigos para realizar os testes de todas as aplicações de cada componente.

Os testes devem ser realizados em vários níveis no desenvolvimento de software. Os principais níveis de testes de software são:

Teste de unidade ou testes unitários.

Esse nível de teste tem por objetivo testar a menor unidade do software, tentando provocar falhas de regra de negocio. Esse teste é feito por pequenos trechos de código isoladamente.

Teste de integração

Verifica se há falhas na entre os módulos ou interfaces, quando esses são integrados ao tentar fazer o funcionamento de um todo.

Teste de sistema

Avalia o sistema como um todo, como se fosse um usuário final, inserindo dados reais e analisando se suas respostas atendem aos requisitos.

Teste de aceitação

No inicio do desenvolvimento são declarados quais serão as funcionalidades que serão testadas para que o software seja declarado como entregue, esse nível de testes são efetuados geralmente por um grupo de usuários que verificam algumas funcionalidades para que o software seja considerado como aceito.

Papeis e responsabilidades

Na disciplina de testes podemos ter três papeis Gerente de testes, Analistas de testes e os testadores

Gerente de Testes

Este profissional tem todo o conhecimento sobre os aspectos do processo da Engenharia de Software, tem conhecimento do sistema e/ou aplicação em teste, experiência em varias ferramentas de testes, ele tem como papel garantir a execução no processo de testes, prepara todo o processo de teste adequado para cada necessidade, faz avaliações no processo, acompanha seus defeitos e correções.

Analista de Teste

O Analista de Teste tem experiência em programação, tem conhecimento do sistema e/ou da aplicação em teste, experiência em vários tipos e técnicas de testes, tem um entendimento no que é defeito, ele tem como papel monitorar detalhadamente o processo de testes e o resultado de cada ciclo se for necessário, elabora os artefatos de testes.

Testador

Tem experiência em varias tipos de testes, conhece varias técnicas e automação de testes, seu papel é executar os testes, reportar os defeitos e automatizar os testes.

Leia mais:

Testes de software – Níveis de testes http://www.devmedia.com.br/testes-de-software-niveis-de-testes/22282#ixzz2ZhzNQkHR

Testes de software – Níveis de testes http://www.devmedia.com.br/testes-de-software-niveis-de-testes/22282#ixzz2ZhyvrZQ6

Testes de software – Introdução http://www.devmedia.com.br/testes-de-software-introducao/22281#ixzz2ZhrTUCpo

Importância do teste de software – http://www.profissionaisti.com.br/2011/04/a-importancia-dos-testes-de-software/.

jul

2

Visão Computacional: Programação com Opencv

By Robson Soares

Na UFMS Câmpus de Ponta Porã, foi ministrado um minicurso com o Prof. Hemerson Pistori, que nos mostrou os conceitos sobre Visão Computacional e a programação com OpenCV.

O OpenCV foi criado pela Intel na Rússia. A Intel produz mais hardware, mas tem uma equipe da Intel que dá suporte. Considerada a principal biblioteca para visão computacional do mundo. Gratuito com código fonte aberto.

Site Oficial do OpenCV: http://opencv.org
Site do Prof. Hemerson Pistori: http://pistori.weebly.com/
Exemplos de Código: http://docs.opencv.org/doc/tutorials/introduction/linux_gcc_cmake/linux_gcc_cmake.html#linux-gcc-usage

Vamos demonstrar a criação de um exemplo simples para mostrar uma imagem. O nome do arquivo é o DisplayImage.cpp

#include
#include

using namespace cv;

int main( int argc, char** argv )
{
Mat image;
image = imread( argv[1], 1 );

if( argc != 2 || !image.data )
{
printf( “No image data \n” );
return -1;
}

namedWindow( “Display Image”, CV_WINDOW_AUTOSIZE );
imshow( “Display Image”, image );

waitKey(0);

return 0;
}

CMake gera arquivos para o Make. E o Make gera os arquivos para o gcc.

Agora você tem que criar seu arquivo CMakeLists.txt. O conteúdo do arquivo é mostrado a seguir:

cmake_minimum_required(VERSION 2.8)
project( DisplayImage )
find_package( OpenCV REQUIRED )
add_executable( DisplayImage DisplayImage.cpp )
target_link_libraries( DisplayImage ${OpenCV_LIBS} )

Para compilar e executar o código deve executar os seguintes comandos:

cd
cmake .
make
./DisplayImage lena.jpg

jun

10

Linguagem C: solução da combinação do uso da função gets e a função scanf

By Robson Soares

Olá pessoal,

Para poder usar a função gets e scanf juntas, devemos após o uso do scanf, executar uma chamada à função fflush(stdin). esta função limpa o buffer do teclado, permitindo que a função gets funcione corretamente.

Exemplo:

#include “stdio.h”
#include “stdlib.h”
int main()
{
char nomes[5][100];// estamos declarando um vetor de 5 posições e em cada posição
// pode-se ter até 100 caracteres. Uma matriz de 5 x 100
float notas[5];

int count;
for (count=0;count<5;count++){
printf(“\nDigite um nome: “);
gets(nomes[count]);
printf(“\nDigite a nota deste aluno: “);
scanf(“%f”, ¬as[count]);
fflush(stdin); // esvazia o buffer do teclado
}
printf(“\n\nOs nomes informados foram os seguintes:\n\n”);
for (count=0;count<5;count++){
printf(“\nNome: %s\n”, nomes[count]);
printf(“\nNota: %.1f\n”, notas[count]);
}
system(“pause”);
return 0;
}

A função fflush(stdin), faz a limpeza do buffer do teclado, ela é útil para consumir, sem armazenar, todos os caracteres da entrada padrão, ou seja, limpa a entrada padrão. Assim o comando gets funciona normalmente após o uso da função scanf.

Referência: PUCRS

jun

1

Desinstalar um aplicativo Android na Máquina Virtual

By Robson Soares

Caros desenvolvedores para Android,

Tudo bem?

Este post é para mostrar o comando que é utilizado para desinstalar um aplicativo na máquina virtual do seu Android no computador devido a algum tipo de problema de instalação e re-execução.

Neste caso tenta-se executar o projeto aparece a mensagem: “Re-installation failed due to different application signatures. You must perform a full uninstall of the application. WARNING: This will remove the application data!”

Para resolver este problema eu acessei a pasta onde o android está instalado e a pasta platform-tools.

O comando a ser executado é: adb uninstall ‘pacote da sua aplicação’

Por exemplo no meu Notebook executei da seguinte forma:

C:\Projeto Android 2013\android-sdk_r08-windows_2_3\android-sdk-windows\platform
-tools>adb uninstall com.example.questao1
Success

C:\Projeto Android 2013\android-sdk_r08-windows_2_3\android-sdk-windows\platform
-tools>adb uninstall com.educaingles
Success

Abs a todos