agosto 2nd, 2010

Nodipo: ferramenta de levantamento colaborativo de requisitos para software livre

José Eduardo De Lucca1, Yuri Gomes Cardenas2

1Departamento de Informática e Estatística
2Curso de Bacharelado em Sistemas de Informação
1,2Universidade Federal de Santa Catarina (UFSC) – Florianópolis – SC – Brazil

Abstract. This paper introduces a collaborative requirements elicitation tool, called Nodipo, which aims to fill the gap of some areas where free software is not or is too little available. Based on Web 2.0 and on researches that focus on the end-user participation on software design and requirements elicitation, the tool’s structure is made of elements that make possible the interaction and collaboration between end-users and other stakeholders, so that they are able to share knowledge about the application domain and elicit requirements with certain formalization degree.

Resumo. Este artigo apresenta a ferramenta de levantamento colaborativo de requisitos Nodipo, com a qual se objetiva suprir áreas de aplicação na sociedade em que o software livre é ausente ou pouco presente. Baseada na Web 2.0 e em estudos que levam em conta a participação de usuários-finais no processo de elicitação de requisitos e na modelagem de software, a estrutura da ferramenta possui elementos que viabilizam a interação e a colaboração entre os próprios usuários-finais e os demais participantes, de forma que os mesmos possam compartilhar conhecimento sobre o domínio da aplicação e elicitar requisitos com um nível mínimo de formalização.

Publicado nos Anais do XI Workshop de Software Livre, promovido pela SBC  durante o 11º Fórum Internacional de Software Livre (Porto Alegre, Julho-2010)

Os grandes algoritmos são como a poesia da computação

novembro 8th, 2009

O título do post é de autoria de  Francis Sullivan

Estava “folheando” a internet e deparei-me com o artigo abaixo, escrito
por ocasião dos 50 anos do algoritmo de autovalores de matrizes (2000) e achei
muito interessante e que deveria registrar aqui para ter onde achar fácil no futuro.
O original, na web, contém os links aos diversos artigos clássicos que apresentam os algoritmos…

Fonte:
http://francisthemulenews.wordpress.com/2009/08/10/john-francis-y-uno-de-los-10-algoritmos-mas-importantes-del-siglo-xx/

Um dos artigos citados Barry A. Cipra, “The Best of the 20th Century: Editors Name Top 10 Algorithms,” SIAM News 33, May 16, 2000 [pdf gratis].

Em época de provas e avaliações

junho 25th, 2009

Um repasse em posturas e atitudes:

(via BR-Linux) Professor de computação acusa aluno de, ao publicar o código-fonte de seus exercícios, estar ajudando os alunos do futuro a colar – ou algo assim: Professores pré-históricos na Era da Informação: “O Ars Technica trouxe um interessante artigo sobre um estudante de ciência da computação da San Jose State University (EUA) que, após a conclusão de uma disciplina, publicou os códigos-fonte feitos por ele como resposta aos exercícios e atividades.

Para ir direto na matéria da Ars Technica esse é o link http://arstechnica.com/open-source/news/2009/06/academic-source-code-dust-up-symptom-of-cs-education-ills.ars
A tradução do título também ajuda a pensar…
O assunto teve uma certa repercussão em diversos sites especializados e não-especializados – sendo os principais citados no texto.

Acho que de vez em quando todos pensamos em coisas como as que cito abaixo. Mas raramente as discutimos no âmbito universitário… Pena…

  • Devemos usar as provas não somente como avaliação, mas como apoio ao aprendizado dos alunos, devolvendo-as integralmente e bem comentadas depois de corrigi-las.
  • Dadas as condições atuais (leia-se internet), é sábio pedir trabalho teórico escrito? Tenho certeza de que os objetivos seriam atingidos de forma mais segura se sugerir um tema de pesquisa e depois fazer um teste rápido para “garantir” que o tema foi estudado…
  • Até quando alguns vão achar que os estudantes não devem “compartilhar” código de um semestre para o outro? Alguém é inocente achando que eles não fazem isso (há milênios)? Acho que ninguém pode alegar inocência… E neste caso, como chamar essa atitude de fechar os olhos?
  • Inverter a lógica e estimular o compartilhamento, usando-o como uma ferramenta didática pode eliminar um grande stress e melhorar o desempenho dos alunos: afinal, codificar não é a única forma de aprender a programar: compreender e aprender o que um código (de outrem) faz a ponto de poder alterá-lo, melhorá-lo, integrá-lo também são excelentes oportunidades de aprendizagem…
  • Qual é o sentido em vetar o acesso às páginas de conteúdo didático (colocando uma senha ou fechando o acesso ao moodle a pessoas não matriculadas)? O conhecimento só deve ser de alguns?
  • Ou ainda, o que está pensando aquele professor que coloca uma senha num arquivo ZIP com os slides? Ou que configura um arquivo PDF com proibição de impressão? Alguém acha que isso impede os estudantes de passar adiante os slides? Nahhh E qual é o problema de passar adiante os slides? Ainda, alguém acha que tal configuração de PDF vai evitar que se imprima tal arquivo? Isso é para amadores…
  • Quando é que finalmente as pessoas vão deixar de se esconder no escurinho e de slides longos, entediantes e bloqueadores da interatividade em uma aula? Precisamos de posturas, didáticas e  softwares mais adequados para dar um uso mais interessante aos quase onipresentes projetores multimídia… 150 transparências em 30 minutos não é aula…

Sem segundas intenções, só compartilhando alguns pensamentos e na expectativa de colher algumas outras sugestões…

Sobre computação em nuvem e outras “tendências”

outubro 21st, 2008

Na falta de inspiração própria para escrever e tendo encontrado um  excelente texto para pensar, lá vai:

De Caspa.tv  / 21/10/08 / Vendidos en la “nube” (em espanhol) trago esse texto (tradução livre, pontos principais):

Uma das chaves para que a Internet tenha sido gerada tal como a conhecemos é que ela não nasceu em um ninho empresarial. A gênese, em pesquisas acadêmicas financiadas por militares, influenciadas talvez até pelo movimento hippie de então, gerou-se uma tecnologia sem amarras em que o poder está dividido por todas as partes (ou quase isso) – requisito militar para evitar o colapso da rede no caso de guerra…

O exemplo contrário está nas redes de telefonia celular, que construíram sua rede e oferecem conteúdos associados com uma perspectiva empresarial, de acordo com seus únicos interesses. Outro exemplo são os portais genéricos, surgidos no final dos anos noventa e início dos anos 2000, que só prosperam enquanto existe uma massa de analfabetos digitais que vagam pela Internet que lhes mostram, cheia de links para downloads pagos e conteúdos exclusivos para assinantes. Se não tem negócio, não tem link…

Dar o mínimo para conseguir o máximo. O importante é conseguir o máximo de benefícios a custa das tecnologias que mantém o poder com os usuários… Mas isso não vai ser fácil, no futuro…

Na Internet, as coisas também estão se alterando. Debaixo do termo “Cloud computing” ou computação em nuvem, são oferecidos serviços a baixo custo ou gratuítos, que antes estavam baseados na área de trabalho do usuário. Ao utilizar esses serviços na nuvem, os usuários perdem poder ao executar suas ações ao terem que aceitar as normas e políticas de uso de uma empresa. Estas políticas de uso surgem de decisões empresariais que definem a linha do que é considerado comportamento moral, social e de pensamento dos usuários que as usam.

Por exemplo: a política de Flickr de filtrar, moderar e até apagar fotografias de nús e pelos pubianos de fotógrafos profissionais. Estas fotos não são ilegais, ainda que algumas pudessem ser de gosto duvidoso. O mesmo ocorre em outros sistemas populares de conteúdos, como Youtube e Fotolog. Estas empresas dividem o mundo em preto e branco. Legislam com seus programas e mantendo o maior número de usuários possível usando seus serviços de forma branca, pura e neutra… Os cinzas não estão permitidos. Lessig analisa essa situação em seu livro “Code“.

Por isso se compreende que um “hippie” como Stallman tenha se posicionado contra o “Cloud computing” (radicalmente contra, como é de seu feitio).

No mundo em que a liberdade te oferece as ferramentas livres, uma vez que uses os serviços de terceiros para despreocupar-te dos teus dados, tens que seguir as normas deles. Ainda que algo seja legal em teu país, não será na “nuvem”.
Em analogia com o mundo físico, é como pensar que a maior liberdade e independência estão com quem tem uma casa, horta com gainheiro, seu próprio poço d’água e sabem cultivar a terra. Muito esforço frente à comunidade comodidade de viver em uma “nuvem”. Ou não?

Software pelo modelo indiano

setembro 14th, 2008

Abaixo um texto que escrevi há algum tempo e que foi para uma lista de discussão (e publicado também no www.softwarelivre.org)

“O Brasil deveria seguir o exemplo da Índia pra desenvolver e exportar software….blá…blá…blá…”

Será?

“O que eles fazem lá é o que se chama Serviço de baixo valor agregado: meramente programação. Não é desenvolvimento(que é um serviço de alto valor agregado)…se quisermos oferecer soluções com o “estilo brasileiro”, com concepção e soluções pensadas aqui, o que representará um maior valor agregado e portanto maior remuneração, a Índia não pode ser um modelo…”
Debate na lista do PSL-Brasil:

[Estive fora uns dias e não pude acompanhar o desenvolvimento desta thread, e portanto, não sei se alguém citou os estudos que vou recomendar abaixo. Desculpem se for duplicação.]

Subsídios fundamentais ao debate são conhecer a realidade e o histórico da evolução do setor. A avaliação do momento é sempre limitada se o fazemos somente de observações instantâneas e baseadas exclusivamente em nosso próprio ponto de vista. Assim, sugiro irmos atrás de informações complementares para saber porque estamos da maneira como estamos e porque a India está do jeito que está. E como é que realmente estamos como é que realmente a Índia está.

Em 2002 foi feito um estudo comparativo dos setores de software de 3 países emergentes: Brasil, China e Índia. Este estudo foi organizado pelo MIT, com a participação de diversas instituições nestes 3 países. A parte brasileira foi realizada pelo Softex. Os resultados deste estudo podem ser encontrados aqui (correr a página até o final, texto “A indústria de software no Brasil…”).(link quebrado) Agora está aqui, link: A Indústria de Software no Brasil – 2002 – Fortalecendo a Economia do Conhecimento.

Tem a versão completa em inglês, a parte completa referente ao brasil em português e uma síntese da comparação em português.

Claro que todo este estudo foi feito em 2001, com a perspectiva do setor empresarial de então (que, de modo geral, não mudou tanto assim): software proprietário… Mas é uma base importante para compreendermos o momento atual.

Um comentário sobre o que disse o Spagnolo: para programar da forma que os indianos fazem, não precisa compreender inglês, basta compreender especificações UML. E, para isso, eles são hiper-treinados (ou talvez fosse melhor dizer adestrados?). Já ouvi um relato de uma empresa BRASILEIRA que queria testar 2 empresas indianas de desenvolvimento de software: enviaram a mesma especificação para 2 empresas e receberam de volta 2 implementações praticamente idênticas (até mesmo em coisas como o número de espaços de identação, nos pontos de inclusão de comentários, etc). Ou seja, não é só na leitura das especificações que eles são bem treinados, mas também nas práticas e processos sistematizados de desenvolvimento – uma coisa que brasileiro não é “muito ligado”…

O que eles fazem lá é o que se chama Serviço de BAIXO VALOR agregado: meramente programação. Não é DESENVOLVIMENTO (que é um serviço de ALTO VALOR agregado), porque não supõe criação, busca de soluções, planejamento, especificação, etc. É só mão-de-obra, literalmente – paga-se pelo trabalho das mãos dos programadores; e não cabeça-de-obra.

Se pensamos em criar empregos só em quantidade, o modelo indiano é válido. Desenvolvimento de software não é tão intensivo de mão-de-obra qto outros setores (construção civil, indústria mecânica, turismo, …) e dentro do desenvolvimento de software, o número de pessoas envolvida com programação é maior do que o número de pessoas envolvida com concepção e suporte, p.ex. Então, se só olhamos para a questão do número, sem nos preocuparmos com a questão do nível de agregação de valor e do salário, vender “capacidade de programação” é a forma fácil de ocuparmos mais gente. E tem muita gente vivendo disso, hoje. Conheço uns quantos estabelecidos aqui em Floripa vendendo serviços de desenvolvimento (basicamente programação) para empresas americanas, diretamente. Recebem em dólares, vivem em reais, implementam o que mandarem… Resolve-se o problema pessoal, mas não o do país.

Mas se quisermos oferecer soluções com o “estilo brasileiro”, com concepção e soluções pensadas aqui, o que representará um maior valor agregado e portanto maior remuneração, a Índia não pode ser um modelo…

Mapas mentais, já!

junho 25th, 2008

Situação corriqueira: tinha que preparar uma palestra para uma disciplina. Como seria sobre um tema relativamente novo para mim, achei melhor buscar uma ferramenta para organizar as idéias para a palestra e descobri que poderia usar um mapa mental. Mas também descobri que poderia ser não só para isso, mas também para apoiar a própria palestra.

O resultado foi bem positivo, porque fugiu dos sonolentos slides que invariavelmente nos levam a dispersar e “pescar”, ainda mais em uma apresentação às 8 da manhã de uma segunda-feira (como seria o caso)…

A ferramenta escolhida foi o freeMind, software livre – licença Gnu GPL, bem estável e com um conjunto de recursos adequado para o que me propunha. A página oficial do freeMind (freemind.sourceforge.net) é carregada de informações úteis, plugins, conversores, intruções de instalação, etc. Usei a versão 0.8 (apesar da versão 0.9 já estar disponível em beta, achei que seria melhor ir no garantido – e havia o recado para não usar a versão beta em ambiente de produção, o que sempre é um bom conselho). Ele é feito em Java, então é possível rodá-lo com a mesma interface em Windows, Linux e MacOs, bastando escolher a versão adequada para fazer o download (sugestão: optar pela versão MAX (e não pela MIN), pois o pacote MAX já contém os plugins de exportação para PDF, calendário e outros).

Há dois momentos para usar o software:

  • na elaboração do mapa
  • na apresentação do mapa (ou seja, a palestra)

Read the rest of this entry »

Ajude a sustentar a Wikipédia e outros projetos, sem colocar a mão no bolso, e concorra a um Eee PC!

junho 24th, 2008

…e também a pen drives, card drives, camisetas geeks, livros e mais! O BR-Linux e o Efetividade lançaram uma campanha para ajudar a Wikimedia Foundation e outros mantenedores de projetos que usamos no dia-a-dia on-line. Se você puder doar diretamente, ou contribuir de outra forma, são sempre melhores opções. Mas se não puder, veja as regras da promoção e participe – quanto mais divulgação, maior será a doação do BR-Linux e do Efetividade, e você ainda concorre a diversos brindes!

O “dono da cor magenta” começa a exercer seus direitos…

abril 5th, 2008

Sobre um tema já comentado aqui ( A cor magenta tem dono, agora o dono da cor (a grande corporação de telefonia T-Mobile, do grupo Deutch Telecomm) começa a tentar exercer seus direitos sobre a mesma, pedindo que (vejam só!) blogs relacionados com celulares não usem essa cor em seus logotipos…

É aquela história: um dia nos tiram algo que não nos importamos, cedo ou tarde, nos levam tudo o que nos importa… a liberdade!

Via Barrapunto: ” Hace tiempo comentábamos que T-Mobile tiene registrado el color magenta. Pues bien, recientemente T-Mobile ha exigido a Engadget Mobile, uno de los blogs sobre móviles más importantes, que deje de usar el color magenta en su logotipo. Como respuesta, la red de Engadget y otros blogs también importantes se han vestido de color magenta. La carta recibida se puede leer aquí y aquí.”

Inclusão digital é dedada!

março 7th, 2008

Pega uns vovôzinhos e um povo que nunca teve acesso a computador e ensina Windows e seus cacarecos que são portas de entrada escancaradas de vírus, worms, trojans e etc: msn (ops Windows Live Messenger), Internet Explorer, Outlook Express, etc. [clicou, pegou; desde uma pequena gripe, até um virus mortal]

Saindo dali, esse pessoal compra seu computador (até esse mesmo do programa do governo de computador baratinho e o próprio vendedor da loja já “dá o serviço” sugeringo e encaminhando para a instalação de um Windows piratex sobre o “porcaria do linux” que vem instalado, (por 20 reais). O vovô ainda compra um modem ADSL e contrata o serviço com a BrasilTelecom (mais um problema para ele se livrar no futuro).

Daí, começam a chegar e a sair os famosos lindos e-mails com pensamentos de auto-ajuda em slides powerpoint, mensagens de denúncias e avisos vindas de “fontes seguras”, ofertas imperdíveis, correntes para salvar criancinhas bastando clicar no link, coisas assim…

Pronto, temos mais um computador ZUMBI, sequestrado, infestado de trojans e usado por terceiros para as coisas mais infames, como mandar SPAM, tentar invadir sites de bancos, roubar as senhas dos pobres vovôs, etc…

De tempos em tempos ele tem que chamar um guri, à quem paga uns 50 “reau”, para “reinstalar” o windows que “de uma hora para outra” não está funcionando mais…

Inclusão digital, para esses vovôs, com Windows e caterva (inseguro, caro, totalmente vulnerável) é como dizia aquele senador: é dedada!!!

Inclusão digital com windows é dedada!

Livros livres

fevereiro 28th, 2008

Em uma conversa na lista PSL-Brasil, um dos contertúlios comentou que, ao colocar-se um livro numa rede P2P só estamos mudando de intermadiário: enquanto um livro impresso tem a editora entre o autor e o leitor, numa rede P2P há o “distribuidor” entre o autor e o interessado.

Bom, o suposto da substituição do intermediário é quase esse, mas não significa que os intermediários são da mesma … “categoria” (digamos assim).

Enquanto o editor (na verdade, toda a cadeia de produção, publicidade, distribuição e revenda) é alguém que só se mexe pelo lucro, o replicador gratuito está aí pela cooperação, compartilhamento, para fazer a sociedade crescer e avançar.

O modelo de ter que pagar pelo livro na livraria foi uma evolução histórica que surgiu em um momento em que a tecnologia para imprimir 1 (um) livro era caríssima e reproduzi-lo manualmente levava muito tempo. Ou seja, é algo do final do tempo das trevas… E é nisso que “esse pessoal” ainda tenta se agarrar… Read the rest of this entry »