Requisitos Sistêmicos e a Semiótica

Posted in processo de produção de software on April 30, 2014 by José Augusto Fabri

A Semiótica tem como objetivo mapear conceitos sobre a semiose (fenômenos culturais caracterizados pelo seu significado e significante) e a concepção dos signos. Ambos os conceitos são derivados da palavra grega σημεῖον (sēmeion) – que significa signo. A teoria que alicerça a semiótica foi utilizada pela primeira vez, em 1670, como disciplina de um curso de medicina por Henry Stubbes (físico Inglês) com o objetivo de estudar a interpretação dos sinais.

A semiótica possuir uma maior abrangência quando alinhada a linguística, ciência esta que tem como objetivo estudar o sistema sígnico (de significados) da linguagem verbal.

A semiótica tem como objetivo mapear todo e qualquer sistema sígnico – Artes visuais, músicas, fotografia, cinema, culinária, vestuário, gestos, religião, ciência, etc.

Outro aspecto importante e caracteriza a semiótica por meio da interpretação dos sistemas sígnico em dois planos complementares: 1 – a forma (significante – aquilo que representa algo); 2 – o conteúdo (significado do que é indicado pelo significante).

Se analisarmos os conceitos que alicerçam a semiótica é possível estabelecer uma relação direta com a concepção dos requisitos em qualquer ambiente sistêmico, pois este ambiente, também é caracterizado pela sua forma e pelo seu conteúdo. A forma caracteriza a representatividade do sistema dentro de um, ou mais, contextos. Esta representatividade se traduz em uma série de conteúdos que podem ser materializados por um conjunto de signos pré-estabelecidos.

Vamos a um exemplo prático:

O sistema universitário possui uma representação concreta dentro dos contextos de ensino, pesquisa e extensão. Este sistema pode significar ascensão social, desenvolvimento de uma nação e melhoria contínua de uma determinada região. O referido sistema é composto de vários objetos que norteiam o seu conteúdo, destaco aqui, professores, pesquisadores, teses, dissertações, artigos científicos, projetos de pesquisa, equipamentos, laboratórios, etc. Dentro da engenharia de software esses objetos podem ser representados por um conjunto símbolos pré-estabelecidos. Os símbolos utilizados na representação devem atacar diretamente os dois planos citados – a forma (significante – aquilo que representa algo) e o conteúdo (significado do que é indicado pelo significante).

Enfim, podemos usufruir dos vários pressupostos da semiótica para explicitar requisitos implícitos, este á um assunto para um bom trabalho de pesquisa.

A relação entre a motivação e a expectativa

Posted in gestão de projetos on April 15, 2014 by José Augusto Fabri

Na sua vida, você deve estabelecer uma relação ótima entre a motivação e expectativa.

Na minha singular visão, a motivação é caracterizada como uma força interior com intensidade oscilante. Acredito ainda que não é possível motivar alguém a realizar uma determinada tarefa. Existe sim a possibilidade de criar um ambiente motivador para a execução de um projeto específico. É neste ambiente que as pessoas encontrarão por si só os motivos para executar ações necessárias ao sucesso de um projeto (de trabalho, pessoal …).

A expectativa caracteriza-se como uma condição de quem espera pela ocorrência de algo (bom ou ruim). Esta espera é baseada em comportamentos e probabilidade.

Em seu dia-a-dia você deve possuir expectativas positivas, fato este que irá motivá-lo para que elas ocorram.  Uma expectativa positiva é o fator crítico de sucesso na construção do ambiente motivador.

O quadro abaixo relaciona de uma forma simples a motivação e a expectativa.

motivacao e expectativa

Mantenha-se no quadrante verde. Evite o quadrante vermelho. Se você trabalha muito e não obtém retorno, reveja suas expectativas – quadrante azul. Se você possui boas expectativas e não está motivado, geralmente, você se encontra no estado de comodismo – quadrante laranja.

O lúdico aplicado na melhoria de um processo de software

Posted in processo de produção de software, qualidade de software on March 31, 2014 by José Augusto Fabri

Várias pessoas questionam o motivo que me levou a construir bonecos e pipas durante os programas de melhoria de processo. O texto abaixo justifica a utilização de tais práticas.

Vários programas de melhoria de processo são abortados durante a sua implementação. Este problema é recorrente em empresas do segmento produtivo de software, pois os responsáveis pela implementação dos referidos programas encaram os modelos de qualidade (CMMI e MPS-BR) como uma “camisa de força, ou seja, as formas de implementação das áreas chaves do processo, propostas pelos referidos modelos, são interpretadas como verdade absoluta.

Durante a melhoria de um processo de software os colaboradores de uma determinada empresa devem alterar a sua forma de trabalho. Novas atividades ou tarefas devem ser inseridas na estrutura do processo, formulários que antes não eram preenchidos passam a ser e, principalmente, aspectos ligados à produtividade e qualidade são questões de suma importância.

Algumas empresas alteram a sua cultura de trabalho durante a execução do plano de melhoria de processo. Trabalhar, como consultor, dentro de um ambiente permeado por estas situações requer certo “jogo de cintura”. É necessário sair do trivial, treinamentos e possíveis alterações na forma de trabalho devem ser implementadas com parcimônia. Técnicas diferenciadas, com foco nas áreas chaves do processo, devem ser atacadas com eficiência e eficácia. A motivação dos envolvidos se caracteriza como um fator crítico de sucesso.

Dentro deste prisma acredita-se que os aspectos inerentes à melhoria de processo de software são suportado por questões ligadas ao ensino e aprendizagem. Ambos ocorrem em duas vias, hora os membros de uma consultoria (em melhoria de processo) compartilham o seu conhecimento com os envolvidos no ambiente produtivo – o ensino – em outros momentos são os envolvidos que agregam ao portfólio da consultoria – a aprendizagem.

Para compor um ambiente de ensino e aprendizagem (de mão dupla) altamente motivador, é necessário trabalhar o conceito do lúdico. A motivação tem como foco proporcionar prazer por meio do desenvolvimento de uma determinada atividade, e uma das formas de obter esse prazer é utilizar o referido conceito.

Salienta-se que os envolvidos com o aspecto produtivo de software, na maioria das empresas, são oriundos de vários ambientes. A diversidade na formação, na origem regional, no aspecto cultural e, principalmente, na experiência caracteriza-se como uma constante. Este fato alinha-se diretamente com uma dos principais pressupostos relacionados a aprendizagem.

“a aprendizagem humana pressupõe uma natureza social específica e um processo por meio do qual os aprendizes penetram, de forma diferenciada, dada a sua diversidade, na vida intelectual daqueles que o cercam” (Vygosky (1991)).

De posse do pressuposto destacado e assumindo que todos os envolvidos em um programa de melhoria de processo concebem representações sobre um determinado objeto (forma de trabalho, formulário a ser preenchido, padrão a ser seguido) por meio de suas práticas sociais (a diversidade na formação, na origem, na cultura, na experiência), e essas representações são delineadas a partir do grau de interesse e de qualidade (da informação obtida ou do produto gerado) proporcionadas pelo objeto; concluí-se que os atores sociais imersos no processo de ensino e aprendizagem estabelecem um relacionamento de simbolização/interpretação para com o objeto manipulado. É, justamente, este relacionamento que configura o significante e o significado do objeto.

O significante caracteriza-se como o signo linguístico é uma “imagem acústica” – sua consistência está na forma do objeto. O significado provê ao ator questões relacionadas ao conteúdo – o que eu posso fazer com o objeto.

O significado é assimilado por meio de uma rede de conhecimento pré-estabelecida pelos atores (envolvidos em um programa de melhoria de processo) é, esse tipo de rede que se encontra a origem e a permanência da simbolização/interpretação dos objetos.

Diversos teóricos da área pedagógica (diSessa et. al. (1982, 1983, 1985, 1988, 1993). Smith et. al. (1993), Clement (1983), McCloskey (1983), Resnick (1983)) têm como premissa que as concepções prévias devem ser compreendidas como parte ativa do desenvolvimento da simbolização/interpretação. Durante a institucionalização (ou melhoria) de um processo, para um determinado meio (ambiente produtivo de software), num mesmo tempo e num mesmo espaço (células produtivas do ambiente – por exemplo: célula de teste) teremos, para cada colaborador diferentes formas de simbolização/interpretação.

Dentro do contexto delineado, é possível delimitar a construção do conhecimento nos aspectos primitivos fenomenológicos, estruturas elementares obtidas por abstrações simples, fracionadas, que se relacionam entre si, com o objetivo de promover um determinado significado.

Segundo Kishimoto (1999), as técnicas lúdicas podem se relacionar de forma perspicaz com as estruturas elementares obtidas pelas abstrações. Estas técnicas são criadas com o objetivo de estimular o processo de aprendizagem. De nada adianta institucionalizar, durante o programa de melhoria de processo, questões ligada à produtividade, qualidade e gerência, se estas não se constituem conceitualmente para todos os envolvidos com o ambiente produtivo de software. Não se espera, por parte dos envolvidos, concepções alternativas sobre as questões delineadas, se estes não estiverem engajados no programa de melhoria. É necessário seduzir  o que lhes é apresentado, que encontrem o verdadeiro significado das atividades/tarefas (do processo), para que possam compreender a importância de um programa de melhoria. As práticas lúdicas vão de encontro à sedução supracitada.

É por meio do lúdico que os envolvidos em um ambiente de melhoria de processo são livres para determinar suas ações. A essência do brincar e a criação de uma nova relação entre os objetos, inerente a uma determinada área chave do processo, podem promover um ganho substancial no tempo e na qualidade de todo programa de melhoria. O brincar se constitui em um processo de extrema importância a favorece as transformações internas de um determinado ambiente.

Por fim, é importante discutir o lúdico como ideia de divertimento, um fazer humano amplo, que vai além de brincadeiras e jogos, traduzindo o sentimento, as atitudes de um sujeito envolvido em uma determinada ação, referindo-se ao prazer da celebração em função de envolvimento efusivo, transpondo a sensação de plenitude que acompanha significados verdadeiros dos brinquedos (em nosso caso, os objetos).

É dentro deste panorama que modelo de processo não pode ser encarado como uma “camisa de força”.

J. A. Fabri – fabri@utfpr.edu.br

Iniciação Tecnológica da UTFPR – Cornélio Procópio gera Plugin astah para contagem de pontos por função

Posted in Ferramentas, gestão de projetos on March 24, 2014 by José Augusto Fabri

brÉ com satisfação que comunico a lançamento (versão beta) do Plugin para contagem de pontos por função em um projeto de software.

O plugin é fruto de um Projeto de Iniciação Tecnológica (PIBIT) da Universidade Tecnológica Federal do Paraná – Campus Cornélio Procópio.

Allan Mori, aluno do curso de Engenharia da Computação, trabalha ativamente na implementação do plugin sob minha orientação.

O Plugin está disponível para a versão 6.7.x do astah professional.

A versão 0.9 do plugin se caracteriza-se como uma  versão beta e tem como objetivo colher melhorias junto a comunidade da engenharia de software.

Link para download do plugin

Link para download da forma de utilização do plugin.

Para sabe mais sobre a teoria de pontos por função acesse: http://wp.me/pcuYv-zd

Parabéns Allan pelo trabalho realizado.

J. A. Fabri – fabri@utfpr.edu.br

Kanban em quadrinhos

Posted in gestão de projetos on March 17, 2014 by José Augusto Fabri

Pessoal, no início do ano tive que apresentar o Kanban a uma empresa de produção de software. Na apresentação utilizei uma estória em quadrinhos. Compartilho com vocês o quadrinhos utilizados.

kanban em quadrinhos

J. A. Fabri – fabri@utfpr.edu.br

A otimização da produtividade em uma empresa de software

Posted in gestão de projetos, processo de produção de software on March 10, 2014 by José Augusto Fabri

Muitos alunos, programadores, engenheiros e empresários me questionam: Como otimizar a produtividade dentro de uma empresa de software?

Minha resposta é direta, o aumento da produtividade está alinhado com o aumento do reuso dos artefato do processo software. Ou seja, mais componentes reutilizáveis dentro do ambiente de produção proporciona menos manutenção de seus produtos e uma melhoria significativa no tempo de produção. Dentro deste contexto você terá maior eficiência, aumentando o valor agregado de seu produto e fortalecendo o seu portfólio. Sua empresa deve se manter no quadrante verde da figura abaixo.

A ausência de um processo e ineficiência na gestão de projetos levam as empresas não praticar plenamente o reuso de software (em todos os níveis: código, artefatos … ). Este fato leva as empresas a trabalharem grande parte do tempo na manutenção corretiva e customizações  das funcionalidades. Ineficiência produtiva, menor valor agregado dos produtos e o enfraquecimento dos portfólios configuram as empresas dentro deste contexto (quadrante vermelho da figura).

reuso-produtividade

Existem empresas de software que desenvolvem para vários domínios do conhecimento, essas, por sua vez, estão impossibilitadas de praticar um alto grau de reuso, e mantém a sua produtividade com um número maior de colaboradores.

Por fim, as empresas que possuem uma base de componentes estável com uma baixa produtividade têm problemas com a prospecção de clientes e fechamento de contratos (quadrante amarelo).

Em qual quadrante se localiza sua empresa?

José Augusto Fabri – fabri@utfpr.edu.br

CMMI – número de certificações – 2013

Posted in processo de produção de software on January 8, 2014 by José Augusto Fabri

CMMI (Capability Maturity Model – Integration ou Modelo de Maturidade em Capacitação – Integração) caracteriza-se como um modelo de referência permeado por práticas (Genéricas ou Específicas) que se relacionam diretamente com a maturidade das das áreas do conhecimento da Systems Engineering (SE – Engenharia de Sistemas), Software Engineering (SW – Engenharia de Software), Integrated Product and Process Development (IPPD – Desenvolvimento Integrado de Processo e Produto) e Supplier Sourcing (SS).

O modelo foi desenvolvido pelo SEI (Software Engineering Institute) da Universidade Carnegie Mellon. Atualmente, o CMMI se caracteriza como uma uma evolução do CMM.

O CMMI é dividido em 5 níveis de maturidade, as empresa classificadas no nível 1 possuem um process ad-hoc, já as emrpesas classificados no nível 5 possuem um processo institucionalizado e otimizado. Geralmente empresas com um processo bem definido, produzem mais e com maior qualidade.

O SEI divulga sistematicamente o número de empresas avaliadas e o número de empresas certificadas. O Figura abaixo apresenta as empresas que possuem um número maior de certificações no nível 5 – classificação efetuada em setembro de 2013.

cmmi sep 2013

O relatório completo sobre as avaliações efetuadas pelos SEI podem ser obtidas neste link.

José Augusto Fabri – fabri@utfpr.edu.br

Follow

Get every new post delivered to your Inbox.

Join 39 other followers