Elicitação de Requisitos de sistemas Safety-critical

Sistemas safety-critical são aqueles que, em caso de falha, podem causar danos severos ou morte de indivíduos e/ou danos significativos ao meio ambiente. Esses sistemas estão presentes em diversos equipamentos que fazem parte do nosso cotidiano, como, por exemplo, carros (e.g. sistema de controle de frenagem, controle de piloto automático, ajuste de tração), aviões (e.g. sistema de controle de porta, sistema de ajuste de rota, navegação), e equipamentos médicos (e.g. sistema de ajuste de radiação em maquinas de ressonância magnética, sistemas de gatilho de marca-passo).

 IEEE_logoVocê já se perguntou como os requisitos desses sistemas são elicitados e documentados? As regras para tratar requisitos de safety são um tanto quanto diferentes das praticas “tradicionais” de elicitição de requisitos. Para que os produtos sejam homologados, e então liberados para o mercado, os equipamentos tem que ser desenvolvido seguindo praticas descritas em padrões ISO/IEEE (e.g. ISO 26262, ISO 14971). Esses padrões cobrem práticas que vão da especificaçao até à implantação do sistema. Nesse post vamos tratar apenas dos itens que são comuns à fase de requisitos de sistemas safety-critical.

Processos de elicitação de requisitos de safety, em geral, seguem 5 passos:

1 – Identificação do ítem: Considerando o domínio automotivo, o item não é o carro em si; mas um sistema que, ao final, irá compor o automóvel, como, por exemplo, o sistema de controle de tração, o sistema de piloto automático, etc.

2 – Análise de riscos e ameaças (hazard and risk analysis): Nessa fase são analisados e documentados todos os riscos inerentes àquele sistema. Um exemplo de hazard é “Piloto automático não desativar quando requisitado pelo motorista”. A cada um desses eventos é associado um Safety Integrity Level ou SIL (isso é assunto para outro post), que corresponde a uma indicação do quão catastrófico esse evento pode ser cruise-control-traktor-headercaso aconteça.

3 – Estabelecer Safety Goal: Cada evento ameaçador é associado a um safety goal ou, traduzindo literalmente, meta de segurança. Por exemplo, o safety goal associado ao hazard “Piloto automático não desativar quando requisitado pelo motorista” pode ser “Piloto automático precisa ser desativado quando requisitado pelo motorista”.

4 – Requisitos funcionais de safety: Para cada safety goal, uma série de requisitos funcionais de safety são derivados. Exemplo: “Ao pisar pedal de freio, piloto automático deve ser desativado”.

5 – Requisitos técnicos de safety: Cada requisito funcional de safety deve ter detalhes técnicos de como ele será implementado. Essa especificação deve conter detalhes dos blocos funcionais que vão implementar a função (hardware e/ou software).

normas-iso

No processo de certificação do produto, todos os artefatos e documentos associados são analisados e avaliados quanto a consistência, detalhamento, de modo a julgar a eficácia e eficiência do produto. Uma vez homologado, o produto é liberado para o mercado.

Processos de engenharia de safety são muito complexos e rígidos. Muitas outras técnicas são usadas para assegurar que esses sistemas não falharão. E, caso falhem, que o efeito seja o menos trágico possível.

No próximo post irei escrever sobre o que vem sendo feito no Brasil na área de sistemas safety-critical; mais especificamente no que diz respeito a software embarcado em equipamentos médico-hospitalares.

Privacidade na web! Será que existe?

Ao meu ver existem dois pontos relativos a privacidade pessoal na web que devem ser levados em consideração:

  1. Nós estamos escancarando cada vez mais nossas informações na internet (principalmente através das redes sociais). Nossos dados, opiniões, relações, fotos, desejos, gostos, etc! Está tudo nos facebooks, twitters, youtubes,  google+, amazon (suas compras e seus hábitos de compras), etc. Essa informação é facilmente encontrada por qualquer um, e ela por si só já é perigosa. Precisamos ter muito cuidado.
  2. Mas adianta ter cuidado?? Até as coisas que não abrimos para o mundo todo, como nossos emails ou nossas conversas via voz no skype, estão sendo (podem ser) devidamente analisadas e acompanhadas por entidades superiores. E o que nós podemos fazer diante disso? No momento nada…

O ponto 1 acima é algo que precisamos aprender a conviver e aprender com tempo. Mas o ponto 2, é algo inadmissível que precisa ser mudado e precisamos criar formas na web onde não fiquemos nas mãos desses “magnatas da informação”. Recentemente essa questão de espionagem atingiu a mídia do mundo inteiro com o caso Snowden. Recentes relatos mostram como essas “magnatas da informação” ajudam (e podem ajudar) o governo dos EUA a espionarem e bisbilhotarem a privacidade alheia. Microsoft (outlook e skype), Google (principalmente youtube e gmail), etc são somente alguns exemplos de “magnatas” que tem “nossas vidas” nas mãos deles.

E agora? O que fazer?

Minha previsão sobre isso tudo é que, a longo prazo, essas magnatas vão modificar a forma como implementam seus serviços para uma forma mais “descentralizada” da informação (aonde as empresas magnatas não terão poder e domínio sobre todas as informações). Mas isso é uma coisa difícil de acreditar e ainda mais difícil de checar se é realmente acontece o que as magnatas dizem que acontece.

Então a possibilidade mais tangível ao meu ver (uma vez que as pessoas amadureçam como usuários da internet) é que vamos gradativamente parar de utilizar serviços e sistemas dessas magnatas e migrar para soluções descentralizadas que serão mais seguras (apesar de não serem lá tão maduras ou bonitas como as soluções das magnatas). Esses serviços e soluções provavelmente usarão tecnologia P2P (peer-to-peer), ou algo mais avançado que ainda não conhecemos. Soluções aonde a informação seja descentralizada e seja de todos, regulamentada e protegida por todos, ao invés de somente por uma empresa “dona” dos dados. Soluções assim já são realidade hoje em dia, e um exemplo muito bom é o do BitCoin (leia aqui se você não conhece o bitcoin).

A outra possibilidade é comprar máquinas de escrever ao invés de usar computadores 🙂 A Rússia já está fazendo isso para produção de documentos confidenciais (veja aqui isso)

Temos que lembrar que a humanidade toda é um bebê no mundo da web, e precisamos começar a amadurecer, crescer, abrir os olhos e parar de engatinhar… Caso contrário, temos que continuar aceitando calados os pontos 1 e 2 que citei acima.

Como reduzir o tempo gasto em testes?

Teste é sempre um gargalo! Não dá pra estimar quanto tempo é gasto em testes (e certificação),  mas algumas fontes mostram que cerca de 50% do esforço para desenvolver um produto é gasto em testes. Com esse dado, e o senso comum de quem trabalha com desenvolvimento de software, teste de software se torna um excelente alvo para ser estudado com o objetivo de se reduzir o tempo gasto.

Obviamente, muitos estudos já foram feitos nessa direção, e nesse post vamos falar um pouco sobre um artigo que realizou um mapeamento sistemático com o objetivo de identificar todos os trabalhos existentes (acadêmicos) que tratam sobre redução de tempo e esforço de testes. O artigo, publicado em 2012, tem como título “Reducing test effort: A systematic mapping study on existing approaches” e pode ser encontrado aqui.

Primeiramente, é claro que poderíamos reduzir o esforço de testes simplesmente tendo menos testes, mas é claro que reduzir a qualidade do produto final é inadmissível, principalmente quando tratamos de sistemas críticos e safety-relevant.

Diante disso, o artigo identificou 5 categorias que se propõem a diminuir o esforço gasto com testes (consequentemente diminuindo o tempo também na maioria das vezes). As cinco categorias são:

  • Test Automation – 50% dos estudos identificados nesse mapeameanto sistemático abordam essa categoria. Isso não é surpreendente pois automatizando testes muito tempo consegue ser economizado.
  • Prediction – 28% dos estudos abordam predição, no sentido de dar suporte a decisões sobre quanto esforço de teste precisa ser gasto para um dado sistema e como distribuir esse esforço entre as diversas atividades.
  • Test input reduction – 15% dos estudos abordam essa categoria, com o intuíto de ajudar da seleção e priorização  de test cases (essa categoria também é conhecida como redução de suítes de teste)
  • Quality assurance (QA) before testing – Essa categoria (encontrada em 5% dos estudos) lida com atividades executadas antes dos testes propriamente ditos e que ajudam a reduzir os testes. Essas atividades são: análises estáticas, inspeçoes e revisões.
  • Test Strategies – Essa categoria (encontrada em 2% dos estudos) aborda pontos  como a seleção de diferentes técnicas de teste e também seleção de diferentes níveis de teste para economizar tempo e esforço.

É claro que esses pontos são focados em estudos acadêmicos, e que nos projetos reais da vida real podem existir outras abordagens para reduzir esforço dos testes. Você usa/conhece alguma abordagem? Compartilhe conosco 🙂

Vou cancelar minha conta do facebook… quer saber o(s) motivo(s)?

Quem me conhece ou acompanha alguns dos meus posts vai ver que o Facebook para mim é uma questão meio complicada. Quem acompanha o BdB também já deve ter visto alguns posts meus reclamando a respeito do facebook. Se quiser entender melhor esse post você pode primeiramente ler esses outros aquiaqui e aqui. Caso não

67037_474539079272861_1104199120_nqueira ler os posts antigos, tudo bem, você pode começar a ler por aqui mesmo.

Nem todos vão concordar com meus argumentos
Queria começar esclarecendo que o que estou falando aqui reflete apenas a minha opiniao sobre o assunto. Entao todos os pontos de vista sao pessoais, e nao refletem a opinao do blog.  A grande maioria dos argumentos aqui são a respeito de como utilizar da melhor forma e também o motivo pelo qual você utiliza. Provavelmente, algumas pessoas vão odiar esse post, outras pessoas vão se identificar, e outras até vão parar de ler antes de chegar nesse ponto.

Queria também ressaltar que meu objetivo com este post nao é fazer com que você cancele sua conta do facebook, mas talvez que você reflita um pouco sobre sua utilizacao e sobre os pontos que vou falar 🙂

O facebook tem muitos pontos positivos…
e ponto final! Sei do poder como ferramenta de rede social que é, a quantidade de dinheiro que movimenta através de seus anúncios, etc. Sei que cada vez mais criamos grupos, e até disciplinas de faculdade e assuntos mais “sérios” sao tratados e discutidos dentro do facebook. Além disso como ferramenta de marketing e divulgacao ele é espetacular. O próprio blog (Bytes Don’t Bite) tem uma página no facebook para divulgacao dos posts, e vai continuar tendo, pois é um ótimo canal de comunicacao. Talvez até, o facebook seja o bode expiatório no meu caso. E o cancelamento da minha conta simplesmente uma atitude em direcao ao movimento de DESCONECTAR-SE! Mas vamos aos motivos do cancelamento.

1- Meu tempo é muito precioso, aliás, o seu também é…
Acredito que todos nós temos vontade de investir nosso tempo em coisas que regularmente não fazemos como indivíduos (como ler mais livros, fazer exercícios, aprender uma nova lingua, aprender uma nova tecnologia, estudar para um concurso, etc…), e também como coletividades que somos (dar mais tempo para seus pais, mais tempo para seus filhos, para seus irmãos, se importar com os outros, fazer mais favores, escutar as pessoas, conversar, etc…).

Tudo isso demanda tempo, mas só temos 24 horas no dia, e visitar alguém ou algo do tipo pode tomar muito tempo. Conversar com seus amigos, fazer uma ligacão, mandar um email,  toma muito tempo. No entanto, gastamos uma quantidade CONSIDERÁVEL de HORAS no facebook diariamente (é óbvio que isso não vale para todo mundo, mas tem uma quantidade absurda de pessoas que vão se identificar).

Eu decidi que: Quero dar mais tempo para minha família, meus amigos, para as pessoas e para meus projetos pessoais.

2- A mudança de valores que vem junto com uma “curtida do facebook”…
Sabe aquela sensação que tínhamos antigamente quando recebíamos uma carta? Era muito legal, você sabia que alguém (que provavelmente se importava o suficiente com você para isso) tinha gastado o tempo dela para escrever algo para você. Tudo bem que o email veio ao mundo,  e substituiu praticamente por completo essa situação descrita a pouco. Mas, ainda hoje, a sensação de receber um email (destinado a você somente) é algo muito precioso (pelo menos para mim) e ainda dá uma sensação de satisfação muito grande.

É muito bom quando comentam e curtem nossas fotos e status no facebook. É legal ver que muitas pessoas curtem, e muitas dessas pessoas realmente se importam com conosco, se preocupam conosco, e procuram fazer com que a relacao de amizade vá além de um curtir. No entanto, para muitas outras pessoas aquele curtir é um resumo da relacao que se tem, a “consideração” que muitos demostram uns ao outros, hoje é um simples CURTIR na sua foto/status.

Eu decidi que: Não vou demonstrar minha amizade e meu carinho por alguém utilizando um simples curtir. Quero fazer a diferença na vida de verdade, e não no facebook.

3- Fora do facebook vamos perder muita coisa que acontece no dia-a-dia…
Primeiramente queria dizer que não tenho NADA importante acontecendo no facebook.

Além disso, eu possuo telefone celular, telefone fixo, email, whatsapp, linkedin, instagram, twitter, foursquare, skype, facetime, blog, slideshare, pinterest, etc… Isso que significa que se alguém quiser verdadeiramente entrar em contato comigo, não é pelo fato de eu não ter facebook que essa pessoa não vai conseguir entrar em contato.

Caso alguma delas tome mais meu tempo do que eu gostaria eu simplesmente vou cancelar minha conta também, ou pensar em alternativas que minimizem o problema.

Eu decidi que: Tudo que tirar meu tempo e não trouxer benefícios muito claros para mim eu vou tirar da minha vida.

4- Roda de amigos, todos eles de olho no celular…stock-footage-two-female-friends-with-mobile-phone-in-bar-outdoors-camera-stabilizer-shot
É muito triste ver isso, mas a gente faz parte disso e faz isso sem sentir. As pessoas são os bens importantes que temos na vida, e ainda assim estamos ao lado delas (nossa familia, amigos, etc) e simplesmente abaixamos a cabeça para checar e responder as notificações do facebook (ou qualquer outra app) no celular a cada 10 minutos. Ou simplesmente trocamos uma conversa real, para responder conversas virtuais no celular. Por esse motivo eu já tenho desinstalado o facebook do meu celular a um bom tempo, e não me arrependo nem um pouco. Talvez outras apps, como whatsapp, também sejam o motivo de trocarmos conversas e relacoes reais por virtuais.

Eu decidi que: Quando estiver com pessoas, não quero que o celular tenha maior atenção que as próprias pessoas

5-O facebook amplifica o alcance das nossas opinioes e pensamentos… Boas ou ruins…
Neste ponto, eu vou  usar um texto que li em um blog da Luciana Honorata nesse link e achei muito bom, e reflete exatamente o que penso sobre esse ponto.

“Antigamente, quando não havia internet, “todo mundo” ficava sabendo das catástrofes. Os desastres naturais, os acidentes aéreos, a enchente não sei de onde, o assassinato de Daniela Perez, a morte de Ayrton Senna… Todo mundo chorava, lamentava, comentava e criticava. As pessoas tinham suas opiniões formadas, mas elas ficavam restritas ao seu círculo social. Vizinhos, família, colegas de trabalho. Caso tivessem um comentário infeliz a fazer, deixavam uma marca negativa em seis, sete pessoas, e quando muito, (sendo bem pessimista) 20 ou 30 desafortunados os ouviam, mas isso não causava um efeito tão devastador na imagem de um grupo quanto nos dias de hoje. 

A internet, entretanto, facilitou a comunicação de um modo que potencializou o poder de influência das pessoas. Sites, blogs e redes sociais massificaram a opinião, e agora todo mundo diz o que pensa quando quer e bem entende sobre qualquer coisa, não na mesa do restaurante, para um público que se pode contar nos dedos da mão, mas para milhares de indivíduos, simplesmente quando decide responder ao sr. Facebook ‘ O que você está pensando?’ “

Como ela falou, sempre fomos desse jeito que somos agora,  a única diferenca é o alcance das nossas opinoes e comentários. Entre o pensamento e o teclado, acredito que exista uma distancia menor do que entre um pensamento e a boca. Agora temos “coragem” de escrever qualquer coisa no facebook. Coisa que nao teriamos “coragem” para dizer cara a cara com alguém, mas é tao fácil simplesmente escrever no facebook. É muito comum pessoas reclamando de TUDO, e “metendo o pau” em todo tipo assunto possível. É comum ver opinioes de pessoas que você nunca conhecia antes, e nao por nao terem tido contato suficiente, mas simplesmente porque o nível de “coragem” dessas pessoas ao publicar algo no facebook é muito alto. Diferentemente de uma conversa cara a cara.

Além disso,  a “coragem” aumenta pelo fato de nao precisarmos nos preocupar com o impacto de algo que falamos, quem nao gostou do que você falou que lhe bloqueie.

Eu decidi que: Quero evitar falar “besteiras” e “reclamacoes” para um público de milhares de pessoas sem me preocupar com o alcance real dessas palavras e com as consequencias disso. E nas redes sociais que ainda continuar participando quero ter cuidado com o que falo, e contar até 10 antes de compartilhar, postar, responder, rebater, curtir, etc.

7- E a privacidade?
Repare que eu ainda nao toquei no ponto da privacidade, que por sinal é muitíssimo discutido. Privacidade é algo que nao me preocupa muito pois ninguem é forcado a usar o facebook (ou qualquer outra rede social). Entao existe uma opcao simples para escapar dos problemas de privacidade do facebook: Parar de utilizar! Cancelar sua conta. Mas…. se você quiser utilizar e ainda assim manter um nível bom de privacidade você vai ter problemas sim, tenho certeza. Nao consigo pensar em nada na web que exponha tanto sua vida pessoal com o facebook. Se tiver algum outro servico ou app ou qualquer outra coisa que exponha tanto ou ainda mais que o facebook por favor me avisem.

6- Porque ainda daqui a 10 dias somente que vou cancelar minha conta no facebook?

O motivo disso é simplesmente porque pode ser que eu esteja errado, então se alguém me der motivos fortes o suficiente para não cancelar, eu posso até mudar de idéia. É importante salientar também que se eu julgar que por algum motivo o facebook é uma parte integral da minha vida que eu não posso viver sem ele eu simplesmente reativo minha conta (mas eu espero de verdade que isso não aconteça).

O que falta para implementação de Cidades Inteligentes no BR?

Cidade inteligente (CI) é um tema que está bastante em voga, tanto na mídia, como no mercado em geral. Por ser um tema muito abrangente, mas ao mesmo tempo específico para cada país, região, e/ou cidade; ainda não há um consenso a respeito da definição do termo Cidade Inteligente. Apesar disso, os envolvidos na temática convergem sobre o conceito, que basicamente associa as cidades ao crescimento inteligente, baseado em Tecnologias da Informação e Comunicação (TICs).
city-and-wires É fato que hoje em dia as TICs são uma ferramenta valiosa para qualquer área desempenhar seu papel na sociedade. Em se tratando do contexto de CI, o emprego de TICs pode alavancar diversas melhorias significativas para os cidadãos, como por exemplo, melhoria da qualidade do ar, deslocamento mais eficiente, atendimento de saúde especializado, dentre outros.

No Brasil a IBM largou na frente. Inicialmente com um projeto no Rio (leia mais aqui e aqui) e agora foi a vez de Porto Alegre firmar parceria com a gigante para se tornar Smart (aqui).

Lá fora, diversas iniciativas, patrocinadas por alguns gigantes como (novamente) a IBM, McLaren, Microsoft, Telefonica/Vivo e Santander, já estão rodando a todo vapor. Como exemplos podemos citar os casos de SingapuraEspanha e Portugal. Nestes projetos a grande sacada foi entender que Cidade Inteligente é muito mais um problema social do que tecnológico.

Social no sentido de que é necessário envolver as pessoas, independente de renda e faixa etária, como parte da solução. Não adianta investir maciçamente em infraestrutura e sistemas e não pensar em técnicas de incentivo a participação da população, visto que as pessoas constituem o pilar que da liga na combinação de TICs + Cidades.

É preciso desenvolver soluções para que a sua tia que não sabe nada de tecnologia possa usufruir e contribuir com a brincadeira. Iniciativas como The Fun Theory devem ser pensadas e discutidas. Recentemente a dinâmica conhecida como “Piano Staircase” foi implantada em São Paulo em plena estação Osasco da CPTM.

Por outro lado, sabemos que diversas iniciativas que são sucesso mundo afora não emplacam no Brasil. Alguns dizem que é o “jeitinho brasileiro”, outros a falta de infraestrutura (como por exemplo, 3G, 3GMax, 4G…) e alguns aspectos culturais.

Dessa forma, caro leitor do BdB, gostaria de levantar a seguinte discussão: Qual a sacada para o Brasil? A mesma aplicada lá fora? Ou o problema é o “jeitinho brasileiro”? Ou então a falta de infraestrutura? Futebol? BBB? Ou alguma outra coisa?

Deixe seu comentário e vamos fazer deste blog um “smart blog”.

In-Car Connectivity – Carros Conectados à Internet

Screen shot 2012-12-20 at 11.47.10No Salão do Automóvel de Frankfurt de 2011, a Ford anunciou o Evos Concept Car. Dentre as inúmeras inovações propostas, uma que se destaca é a interação do carro com serviços disponíveis na nuvem, que pretende transformar a maneira que guiamos. A idéia geral é apresentada por Paul Mascarenas – Ford Chief Technical Officer and Vice President Research and Innovation -, e pode ser assistida no vídeo disponível nesse link. Muito marketing vem sendo feito sobre o Evos; em especial, o 2012 Sydney Motor Show deu grande destaque ao conceito de automotive cloud connectivity. No entanto, pouco se vê se concretizando. Mais informações sobre o Evos pode ser encontrada aqui.

ericsson_logo

Quem parece que vai concretizar essa história de In-Car Connectivity é a Volvo e a Ericsson. No último dia 17/12/2012, a Ericsson anunciou uma parceria com a Volvo que promete conectar carros com serviços disponíveis na nuvem. O anúncio pode ser lido na íntegra aqui. Desde então, o assunto tem sido muito comentado; por exemplo, Volvo and Ericsson Partner for In-Car Connectivity, e Ericsson e Volvo Lançam Carro Conectado na Nuvem

Agilidade é Ritmo!

Assitir palestras de alguns gurus é sempre interessante! Mesmo quando a palestra não está legal, em algum momento você pode escutar alguma frase ou alguma explicação que pode mudar sua vida. Eu diria que é mais ou menos como um atacante de futebol que é artilheiro, mas está jogando uma péssima partida, mas o técnico o deixa em campo pois a qualquer momento ele pode fazer um gol!

Dito isto, eu estava em uma longa palestra com um artilheiro, mas a palestra não estava tão interessante. Mas em determinado momento, falando sobre agilidade,  ele disse: “Agile is about rhythm!” Essa frase então chamou minha atenção e fiquei atento a explicação do que isso significava, e fez sentido pra mim.

Se você participa de um projeto que tem um determinado ritmo como por exemplo entregar um release do software a cada 6 meses, você tem “muito tempo” para pensar/fazer/detalhar requisitos, “muito tempo” pra implementar e por aí vai. É óbvio que você vai terminar fazendo mais do que o necessário para o momento e talvez não consiga finalizar tudo, além de colher o feedback muito tarde (em 6 meses tudo pode mudar).

No entanto, se você tem um ritmo de fazer um release por mês, você tem menos tempo pra focar em vários requisitos, por isso você só seleciona alguns deles (os mais importantes do ponto de visto do cliente), você nao tem tanto tempo pra discutir requisitos em um nível de detalhes muito aprofundado (a  não ser que realmente seja preciso) e você não tem tempo para perder tempo com reuniões sem sentido e etc, então você foca em desenvolver aquilo que tem pra ser desenvolvido de forma a receber feedback o mais rápido possível e mudar o mais rápido possível (antes que o custo da mudança seja muito caro ou inviável).

Ah, acho que tem um cenário pior do que os dois que apresentei, que é o caso de você não ter ritmo nenhum!

E você o que acha? Qual o ritmo que faz mais sentido para você ou para sua empresa?

A primeira impressão é a que fica ?

Em nosso dia-a-dia, frequentemente, entramos em contato com pessoas e empresas, que até então não conhecíamos. Nesse instante, automaticamente, registramos nossas primeiras impressões sobre as características e comportamentos do outro. Impressões essas, que com o passar do tempo poderão se mostrar verdadeiras ou não, porém, definitivamente, influenciam na maneira como agimos e interagimos.

Nos tempos atuais podemos fazer uma análise parecida da relação das pessoas com os softwares, desde os aplicativos e jogos, que instalamos em nossos dispositivos móveis aos sistemas complexos que utilizamos em nosso ambiente profissional.

Essa primeira impressão de clientes e consumidores em relação a um software pode ser afetada por diversos fatores, entre eles:

– Interface gráfica

– Facilidade de Uso

– Performance (lentidão)

– Falhas (bugs)

No entanto, ao contrário das pessoas, primeiras impressões ruins de um software dificilmente são revertidas, isto acontece porque é muito fácil para o usuário, simplesmente, buscar por outro sistema, que apresente o mesmo serviço, porém com um nível de qualidade satisfatório. Principalmente, no ambiente web e nos dispositivos móveis, onde essa troca é ainda mais simples e menos custosa.

E o que podemos fazer para que nosso software não cause uma má impressão?

Acredito que o aspecto central é conhecermos bem as reais necessidades dos nossos clientes, identificar os aspectos fundamentais tanto do ponto de vista funcional como não-funcional e, definitivamente, nunca relegar a segundo plano a qualidade, afinal há cada vez menos espaço e tolerância com sistemas defeituosos e pouco confiáveis.

Link Adicional – The power of a first Impression

E não esqueça de nos seguir no Twitter e juntar-se a nós no Facebook para ser informado das novas atualizações do blog!

O que vi e ouvi na 64th Feira de Veículos Comerciais em Hannover

Entre os dias 20 e 27 de Setembro, o Hannover Messe sediou a 64th feira de veículos comerciais, IAA 2012(Internationale Automobil-Ausstellung). Esse evento reúne os principais produtores de veículos de grande porte como caminhões, carretas, utilitários de menor porte como vans e combos, assim como produtores de peças e tecnologias para veiculos dessa categoria.Tive boas conversas com gente da Mercedes, Volvo, Bosch, BorgWarner, Donaldson, e alguns outros nomes desse mercado. Foi bom ver as novidades, e, claro, a evolução do software nesses produtos. Os hot-topics foram: comunicação carro-a-carro, personalização, integração com smart phones, e ampla integração com redes sociais. Em especial, a Bosch estava mostrando um sistema que permite personalizações em um caminhão, com base na sincronização entre o iPhone do motorista e o sistema central do veículo. Mais especificamente, antes de entrar no caminhão,  o motorista iniciava um app, e algumas configurações como regulagem de bancos e espelhos, e o esquema de cores do painel eram ajustados.

No que diz respeito a redes sociais, as preferências de restaurantes e localização de amigos, por exemplo, também fazem parte desses sistemas. Se em determinado momento o motorista iniciar uma busca de restaurantes próximos se sua localidade, o sistema dará destaques especiais a restaurantes que tenham similaridades com as preferências dele definidas em redes sociais, e mostrará como esses locais tem sido avaliados pelos demais clientes.

No que tange desenvolvimento desses sistemas, todos destacaram que o fato do software ter assumido papel chave nesse contexto foi importante, tendo em vista todo beneficio gerado. No entanto, os efeitos colaterais tem sido grandes. O principal problema destacado foi: Atraso na entrega do produto. Os cronogramas de projetos desses sistemas nunca estiveram tão atrasados. E todos culpam os times de desenvolvimento de software. Aquela velha historia que ouve-se frequentemente “a culpa é do pessoal da informática” se tornou comum nesse meio.

Muitos destacaram a necessidade de contratação imediata de profissionais qualificados para atuar no desenvolvimento de sistemas dessa natureza. As demanda são diversas: gerenciamento de requisitos, modelagem arquitetural, teste, controle de evolução,  gerência de configuração, e gerenciamento de projetos foram enfaticamente citados.

O mercado está aquecido. Apesar da crise na europa, as empresas tem contratado engenheiros de software aos montes. Aos interessados, se dediquem a aprender inglês. Sem ele todo conhecimento adquirido com métodos e técnicas computacionais não terão valia alguma por aqui.