engenharia de sistema

75
5/27/2018 EngenhariadeSistema-slidepdf.com http://slidepdf.com/reader/full/engenharia-de-sistema 1/75

Upload: bola-de-neve

Post on 17-Oct-2015

48 views

Category:

Documents


0 download

TRANSCRIPT

  • Engenharia de Sistemas

    PARA

    LEIGOS

    IBM EDIO LIMITADA

    Cathleen Shamieh

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio LimitadaPublicado por Wiley Publishing, Inc. 111 River Street Hoboken, NJ 07030-5774 EUA www.wiley.com

    Copyright 2011 by Wiley Publishing, Inc., Indianapolis, Indiana EUA

    Publicado por Wiley Publishing, Inc., Indianapolis, Indiana EUA

    Nenhuma parte desta publicao pode ser reproduzida, armazenada em um sistema de recuperao ou transmitida de qualquer forma ou por qualquer meio eletrnico, mecnico, de fotocpia, gravao, digitalizao ou outro, exceto se permitido sob as Sees 107 ou 108 do 1976 United States Copyright Act, sem a aprovao prvia por escrito da Editora. Solicitaes de autorizao para a Editora devem ser enviadas para Permissions Department, John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030, EUA, (201) 748-6011, fax (201) 748-6008, ou online para http://www.wiley.com/go/permissions.

    Marcas comerciais: Wiley, o logotipo da Editora Wiley, Para Leigos, o logotipo do personagem da srie A Referencefor the Rest of Us!, The Dummies Way, Dummies.com, Making Everything Easier, e imagens comerciais relacionadas so marcas comerciais ou marcas registradas da John Wiley & Sons, Inc. e/ou suas afiliadas nos Estados Unidos e em outros pases, e no podem ser usadas sem autorizao por escrito. Todas as outras marcas comerciais so de propriedade de seus respectivos proprietrios. A Wiley Publishing, Inc., no associada a nenhum produto ou fornecedor mencionado neste livro.

    LIMITE DE RESPONSABILIDADE/ISENO DE GARANTIA: A EDITORA E O AUTOR NO OFERECEM REPRESENTAES OU GARANTIAS DE QUALQUER NATUREZA COM RESPEITO PRECISO OU INTEGRIDADE DO CONTEDO DESTE TRABALHO E ESPECIFICAMENTE SE ISENTAM DE TODA E QUALQUER GARANTIA, INCLUINDO, SEM LIMITAO, GARANTIA DE ADEQUAO A UMA DETERMINADA FINALIDADE. NENHUMA GARANTIA PODE SER CRIADA OU CONCEDIDA POR MATERIAIS DE VENDA OU PROMOCIONAIS. AS RECOMENDAES E ESTRATGIAS AQUI CONTIDAS PODEM NO SER ADEQUADAS A TODAS AS SITUAES. ESTE LIVRO VENDIDO COM O ENTENDIMENTO DE QUE A EDITORA NO SE COMPROMETE A PRESTAR SERVIOS JURDICOS, CONTBEIS OU OUTROS SERVIOS PROFISSIONAIS. EM CASO DE NECESSIDADE DE ASSISTNCIA PROFISSIONAL, DEVE-SE PROCURAR OS SERVIOS DE UM PROFISSIONAL COMPETENTE. NEM A EDITORA NEM O AUTOR DEVEM SER RESPONSABILIZADOS POR PREJUZOS DECORRENTES DO USO DESTE MATERIAL. O FATO DE QUE UMA ORGANIZAO OU SITE SEJA MENCIONADO NESTE TRABALHO COMO CITAO E/OU FONTE POTENCIAL PARA INFORMAES ADICIONAIS NO SIGNIFICA QUE A EDITORA OU O AUTOR ENDOSSE AS INFORMAES QUE A ORGANIZAO OU SITE POSSA FORNECER OU AS RECOMENDAES QUE POSSA FAZER. ALM DISSO, OS LEITORES DEVEM LEVAR EM CONTA QUE OS SITES DA INTERNET APRESENTADOS NESTE LIVRO PODEM TER SIDO ALTERADOS OU DESATIVADOS APS A PUBLICAO DO PRESENTE MATERIAL.

    Para informao geral sobre os nossos outros produtos e servios, entre em contato com o nosso Business Development Department nos Estados Unidos pelo telefone 317-572-3205. Para detalhes cobre como criar um livro Para Leigos personalizado para a sua empresa ou organizao, entre em contato com [email protected]. Para informao sobre o licenciamento da marca Para Leigos para produtos servios, entre em contato com BrandedRights&[email protected]: 978-1-118-37062-9

    Fabricado nos Estados Unidos da Amrica

    10 9 8 7 6 5 4 3 2 1

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Agradecimentos da EditoraTemos muito orgulho deste livro e das pessoas que trabalharam nele. Para detalhes sobre como criar um livro Para Leigos para a sua empresa ou organizao, entre em contato com [email protected]. Para detalhes sobre o licenciamento da marca Para Leigos para produtos servios, entre em contato com BrandedRights&[email protected].

    Aqui esto algumas das pessoas que ajudaram a colocar este livro no mercado:

    Compras, Edio e Desenvolvimento de mdia

    Editora de projetos: Carrie A. BurchfieldGerente de edio: Rev MengleEditora snior de compras: Katie FeltmanRepresentante de desenvolvimento de

    negcios: Sue BlessingEspecialista de projetos de publicao

    personalizada: Michael Sullivan

    Servios de redao

    Coordenadora snior de projetos: Kristie ReesLayout e artes grficas: Melanee HabigRevisora: Jessica Kramer

    Publicao e edio, Srie Para Leigos de tecnologia

    Richard Swadley, Vice-Presidente e Editor executivo do grupoAndy Cummings, Vice-Presidente e EditorMary Bednarek, Diretora Executiva, ComprasMary C. Corder, Diretora de Edio

    Publicao e edio, Srie Para Leigos de consumidores

    Diane Graves Steele, Vice-presidente e editora, Srie Para Leigos de consumidores

    Servios de redao

    Debbie Stailey, Diretora de servios de redao

    Desenvolvimento de negcios

    Lisa Coleman, Diretora, Desenvolvimento de novos mercados e marcas

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Viso geral do contedoIntroduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

    Captulo 1: Criao de produtos inteligentes . . . . . . . . . .3

    Captulo 2: Domando a fera com a Engenharia de Sistemas . . . . . . . . . . . . . . . . . . . . . . .13

    Captulo 3: Requisitos revolucionadores . . . . . . . . . . . .23

    Captulo 4: Abstrao do sistema de modelagem . . . . .35

    Captulo 5: Garantia da qualidade de primeira . . . . . . .43

    Captulo 6: Capacitao da colaborao e gerenciamento das mudanas por equipes grandes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51

    Captulo 7: Dez maneiras de ganhar com a Engenharia de Sistemas . . . . . . . . . . . . . . . . . . . . . . . .61

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Introduo

    P rodutos inteligentes so encontrados em qualquer lugar. Eles acompanham seus pacotes, controlam os sinais de trnsito, voam aeronaves e o orientam para o seu destino. Eles so o centro dos sistemas e servios que voc usa todos os dias dos smartphones aos carros inteligentes, sistemas mdicos, e sistemas aeroespaciais e de defesa.

    Produtos inteligentes, instrumentados e interconectados revolucionam a forma como as pessoas interagem e executam suas tarefas dirias. Com uma combinao de eletrnicos, softwares, sensores e outros hardwares, temos a tecnologia necessria para criar produtos multifuncionais personalizados. E, com a nossa imaginao ilimitada, temos o potencial de definir centenas de sistemas e servios inovadores personalizados voltados para o valor.

    O grande desafio ao criar produtos inteligentes a organizao: como podemos integrar com eficcia uma combinao complexa de tecnologias para criar um sistema de sistemas inteligentes que cumpram o que prometem e atinjam o seu potencial? A soluo est com a engenharia de sistemas.

    Engenharia de Sistemas Para Leigos, IBM Edio Limitada, explica o que a engenharia de sistemas e como ela pode ajud-lo a controlar a complexidade natural do desenvolvimento de produtos inteligentes conectados. Se quiser acelerar a colocao do produto no mercado, garantir a agilidade dos negcios e oferecer produtos inteligentes de alta qualidade e, ao mesmo tempo, reduzir os custos, Engenharia de Sistemas Para Leigos, IBM Edio Limitada, o livro para voc.

    Como este livro est organizadoOs sete captulos deste livro tm por objetivo ajud-lo a entender o problema que a engenharia de sistemas tenta resolver e todas as etapas para resolv-lo. Eis aqui um resumo do seu contedo:

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 2 Captulo 1 define os produtos inteligentes e explica porque eles

    justificam uma nova abordagem ao desenvolvimento de sistemas.

    Captulo 2 um resumo de alto nvel da engenharia de sistemas.

    Captulo 3 expe o papel fundamental que os requisitos desempenham no ciclo do desenvolvimento de sistemas.

    Captulo 4 mostra como os modelos podem aprimorar o seu entendimento da estrutura e do comportamento do sistema.

    Captulo 5 explica como verificar se voc construiu o sistema certo (validao) e construiu o sistema corretamente (verificao).

    Captulo 6 sugere formas de aprimorar a colaborao dos times de desenvolvimento.

    Captulo 7 fornece exemplos de algumas empresas reais que incorporaram a engenharia de sistemas nas suas principais prticas de negcios.

    cones usados neste livroAo ler este livro, voc ver vrios cones chamativos criados para destacar certa informao.

    LE

    MBRE-SE

    Este cone destaca os conceitos principais que voc deveria memorizar.

    DICA

    Este cone exibido prximo s sugestes viveis que tm por objetivo facilitar, e muito, a sua vida.

    AVISO!

    Estes so o oposto de uma dica. So sugestes que, quando ignoradas, certamente iro dificultar, e muito, a sua vida.

    CO

    ISAS

    TCNICAS

    Sei que voc no precisa saber de tudo o que sei, mas este cone d um pouco mais de detalhe sobre o que absolutamente necessrio, por isso voc pode pular se quiser.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 1

    Criao de produtos inteligentes

    Neste captuloComo lidar com a demanda de sistemas inteligentes interconectados

    Reconhecimento dos desafios na estrada para o sucesso

    Mudana de marcha para abranger um cenrio mais amplo

    P ense nisso: Ao dar r para sair de casa, o seu carro envia um sinal para a sua casa para armar o sistema de alarme e fechar a porta da garagem. O seu celular se sincroniza automaticamente com o sistema de comando de voz do seu carro e o sistema de posicionamento global (GPS) integrado analisa a situao do trfego ao vivo e sugere uma rota alternativa que gaste menos tempo para ir para o trabalho. O seu carro avisa que est na hora de trocar o leo, confere a sua agenda no seu smartphone, sugere horrios possveis para compromissos, e oferece para ligar para o seu posto de gasolina favorito. O carro at informa sobre a condio potencial de enchentes na sua volta do trabalho.

    possvel que um veculo que j foi conhecido como uma carruagem sem cavalo possa ser to inteligente e til? Claro que sim!

    Neste captulo, voc ir descobrir qual a fora motriz dos produtos inteligentes, como eles trabalham em conjunto, e porque voc deveria adotar novos processos de negcios no seu desenvolvimento.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 4

    O que os produtos inteligentes tm de to inteligentes?

    Os produtos inteligentes so a grande febre do momento. difcil imaginar a vida antes dos aparelhos eletrodomsticos de cozinha programveis, videogames interativos e celulares multitarefa que gravam vdeo, imprimem fotos, surfam a Internet e tocam msica. Uma aeronave pode achar o seu caminho evitando colises e contamos com drones inteligentes e outros sistemas de defesa de preciso para manter a nossa segurana.

    E por que estes e outros objetos inanimados podem realizar feitos to incrveis?

    Entrega de valor com os sistemas inteligentesSistemas inteligentes movidos por software esto surgindo em todo o ecossistema:

    Sade: Software personalizado oferece uma acesso confivel e seguro s imagens mdicas complexas e relatrios atravs de dispositivos mveis, viabilizando que os profissionais mdicos revejam a informao do paciente fora do consultrio e acelerem os diagnsticos de emergncia.

    Servios pblicos: A comunicao bidirecional entre o fornecedor de energia e os consumidores atravs de uma grade inteligente facilita o controle inteligente do consumo de energia. Por exemplo, as lavadoras de roupas podem ser ligadas pela grade quando a energia mais barata, e certos aparelhos eletrodomsticos podem ser desligados durante os horrios de pico de consumo. Os carros inteligentes so outro exemplo nesta rea.

    Aparelhos inteligentes: Os aparelhos conectados da casa fornecem status atualizado do consumo de energia com interfaces intuitivas de usurio. O controle remoto destes aparelhos viabiliza que os consumidores atinjam o nvel de conforto desejado e reduzam o consumo de energia.

    Entretenimento: As TVs inteligentes fornecem acesso sem fio Internet, permitindo que os consumidores aluguem vdeos, faam compras, consultem a previso do tempo, estabeleam novas pginas personalizadas e faam download de aplicativos.

    Automotivo: Os sistemas anticoliso inteligentes integram uma tecnologia GPS diferencial, comunicao sem fio, e displays grficos a bordo para alertar o motorista sobre veculos prximos e at mesmo fazer uma manobra de emergncia.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 1: Criao de produtos inteligentes 5

    Mistura de ingredientes tecnolgicosAtualmente os produtos e servios inteligentes so o resultado da convergncia das tecnologias de manufatura, eletrnica e da informao. Os fabricantes de pensamento rpido perceberam que poderiam aproveitar os tremendos avanos dos microeletrnicos, software, dispositivos mecnicos, sensores e atuadores para criar produtos para impressionar os clientes e engolir os concorrentes. Por isso eles pegam um pouquinho disso, um pouquinho daquilo, misturam (com uma certa ajuda dos amigos engenheiros), e ta-r inventam produtos que at mesmo George Jetson acharia inovador!

    LE

    MBRE-SE

    Os produtos inteligentes so de todos os formatos e tamanhos, mas em geral, podem ser caracterizados com trs adjetivos:

    Instrumentados: Dispositivos esportivos de produtos inteligentes, como cmeras, detectores de movimento, sensores de posio, receptores sem fio, som, calor e umidade leve, e campos magnticos que monitoram constantemente as operaes e farejam a vizinhana. Com o estabelecimento deste tipo de contexto, os produtos inteligentes podem se adaptar ao ambiente em tempo real.

    Interconectados: Quando dois ou mais produtos interagem entre si e compartilham informao, eles podem oferecer valor que vai alm da capacidade individual de cada produto. Conecte-os na Internet e no sistema de apoio ou outros sistemas de IT, e o cu o limite!

    Inteligentes: Com o uso de dados sensoriais, tendncias histricas e informao do perfil do usurio, os produtos bem projetados podem fazer previses, otimizar os resultados e personalizar a experincia do usurio.

    Juntando tudo isso com softwareNo h dvida que o condutor mais importante da revoluo do produto inteligente o crescimento fenomenal da capacidade de processamento. Como o crebro por trs de cada produto inteligente, os microprocessadores integrados executam algoritmos, analisam dados, fazem clculos numricos complicados, e controlam todos os componentes mecnicos e eletrnicos de um produto inteligente.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 6Para fazer o trabalho, os microprocessadores executam milhares s vezes milhes de linhas de cdigos de software. Por exemplo, hoje em dia, os carros topo de linha contm dezenas de microprocessadores que executam provavelmente 100 milhes de linhas de cdigos com o objetivo expresso de oferecer 250 a 300 funes para os motoristas e passageiros.

    Com os fabricantes de semicondutores criando microprocessadores cada vez mais potentes, a oportunidade para os desenvolvedores de software criarem novas funes geniais est subindo como um foguete. E isto uma boa coisa porque muitos hardwares que diferenciam os produtos esto se transformando em commodities. Cada vez mais o software, e no os eletrnicos, que destaca um produto e determina quais produtos iro conquistar a fatia do mercado.

    CO

    ISAS

    TCNICAS

    A flexibilidade inerente do software oferece inmeras oportunidades para o desenvolvimento de recursos e funes adicionais, permitindo que os fabricantes atualizem seus produtos de acordo com as expectativas de novidades por parte dos clientes. Por exemplo, os MP3 mais populares no so simples tocadores, eles armazenam bibliotecas de msica, transmitem vdeo, do suporte a mensagens, fornecem games e executam aplicativos de terceiros. Os melhores produtos podem ser facilmente atualizados para incluir funes para que acompanhem as mudanas do mercado.

    Tornando-se viral com padres abertos

    CO

    ISAS

    TCNICAS

    Em 2013, um nmero incrvel de 1,2 bilhes de dispositivos eletrnicos de consumo conectados estaro em 800 milhes de casas com acesso de banda larga. Se voc tem algumas boas ideias sobre como oferecer servios de valor agregado pela Internet, deve estar salivando com estes nmeros.

    Imagine se todos os dispositivos eletrnicos fossem criados no vcuo, com cada fabricante desenvolvendo a sua prpria forma de se conectar com a Internet e se comunicar com o mundo exterior. Poderia haver muito bate-papo nas linhas, mas nenhuma delas seria til. Que perda de oportunidade!

    No se preocupe! Algumas pessoas realmente inteligentes com grandes vises do futuro tiveram a ideia de criar padres abertos, ou concordaram em maneiras para enviar mensagens dos dispositivos para provedores de servio. Quanto maior o nmero de empresas que usam os protocolos de comunicao definidos pelos padres abertos, maiores as oportunidades para

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 1: Criao de produtos inteligentes 7todos ns. A populao est evoluindo rapidamente para uma Internet de coisas um ecossistema global de produtos e servios inteligentes e conectados.

    Ateno aos clientesGrande parte da populao mundial consiste em usurios experientes de produtos inteligentes.

    CO

    ISAS

    TCNICAS

    Somente em 2010, cerca de 40 milhes de dispositivos de navegao pessoal foram vendidos no mundo e, em 2008, mais de 55 milhes de pessoas arrebataram iPods.

    Se voc viaja frequentemente, nem se preocupa com o tempo ruim durante um voo pelo pas porque sabe que o avio tem um equipamento inteligente que garante a segurana da sua viagem. Os usurios experientes conhecem muito bem a capacidade dos produtos inteligentes de hoje em dia e esto exigindo produtos mais inteligentes ainda.

    Os consumidores atualmente exigem produtos confiveis, interativos em tempo real e querem este produto agora! E se voc tiver sorte (e for inteligente) o suficiente para fazer a entrega na hora, no deve relaxar porque seus clientes j esperam um upgrade!

    LE

    MBRE-SE

    Com a incorporao da capacidade de personalizao e de integrao nos designs, possvel criar produtos voltados para as necessidades individuais do usurio e adapt-los ao ambiente do usurio. Os clientes querem produtos que prometem facilitar e tornar suas vidas mais divertidas, no entanto, cada um deles tem uma forma nica de fazer as coisas, com um conjunto de valores distintos, implicncias e idiossincrasias. Os clientes querem produtos inteligentes to fceis de personalizar quanto baixar o aplicativo mais recente de smartphone!

    Produtos Inteligentes no so ilhas

    Voc pode perceber que no mais suficiente criar um produto independente, legal, cheio de recursos. Os produtos inteligentes de hoje devem ser inteligentes o suficiente para interagir com outros produtos inteligentes.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 8Vejamos um carro moderno, por exemplo (veja Figura 1-1). Um carro topo de linha tpico contm um conjunto de subsistemas de software sofisticados criados para tornar a experincia divertida, melhorar a segurana e otimizar a eficcia do combustvel: freios antitravamento, sistema anticoliso, controle de conforto, segurana e muito mais. O projeto e criao de um carro inteligente que na realidade um sistema de sistemas envolve a integrao complexa de componentes mecnicos, eltricos e eletrnicos, sem mencionar a execuo adequada de, aproximadamente, 100 milhes de linhas de cdigos.

    Para complicar ainda mais as coisas, os carros inteligentes interagem com diversos outros sistemas externos ao prprio carro. Os servios baseados em locais, sistemas de diagnstico de veculos e sistemas de recarga de carro hbrido/eltrico so apenas alguns dos muitos sistemas com os quais um carro pode interagir em um ecossistema automotivo maior.

    Parece complicado, no ? Mas mesmo! Mas tambm incrivelmente til. Por exemplo, se o sistema de segurana do seu carro projetado para interagir com centros de resposta de emergncia, ele pode fornecer detalhes do acidente para os socorristas baseado na coleta de dados dos sensores do carro. Os detalhes essenciais, como a fora do impacto, por exemplo, podem auxiliar o operador do servio de emergncia a determinar quais recursos de salvamento mais apropriados devem ser enviados.

    Controle de cruzeiroadaptativo

    Controle do veculohbrido e eltrico

    Viso panormicade 360 graus

    Navegaointeligente

    Sistemas degerenciamento de

    frota e trfego

    Recarga do veculopor rede hbrida/eltrica

    inteligente

    Servios de emergncia,diagnstico de veculo,

    GPS/servios de localizao

    Anticolisopreditiva

    Alarmes de segurana com auxlio

    do motorista

    Subsistema-intensivoem software

    Sistema de Sistemas

    Integrao da engenhariamecnica, eletrnica, software e eltrica

    Figura 1-1: Um carro inteligente um sistema de sistemas de um ecossistema maior.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 1: Criao de produtos inteligentes 9

    Normalmente, os recursos mais valiosos de um produto inteligente no esto totalmente dentro do prprio produto mas so fornecidos com a interao com outros produtos ou servios do ecossistema. Da mesma forma como as pessoas, os produtos inteligentes precisam colaborar e compartilhar a informao!

    AVISO!

    Poder compartilhar os dados no quer dizer que voc deveria! A privacidade, a segurana e os regulamentos (dentre outras coisas) podem ter um grande impacto no seu design!

    Identificao de desafios novos e empolgantes

    O desenvolvimento de um produto inteligente de sucesso que oferea uma experincia personalizada para diversos tipos de clientes inconstantes e exigentes que queiram tudo para ontem , como dizer, um trabalho nada fcil. Voc pode ser um expert de renome na sua rea, tentando desesperadamente aceitar o fato de que nem a sua educao de elite nem a sua vasta experincia o preparou para os enormes desafios que voc enfrenta atualmente.

    LE

    MBRE-SE

    Antes de escalar a montanha, para desenvolver produtos inteligentes de sucesso, voc precisa abordar as seguintes questes especficas:

    Domnio de mltiplas capacidades: Voc precisa ser especialista em diversas reas tcnicas, incluindo manufatura, eletrnicos, engenharia mecnica e engenharia de software. Embora a maioria das empresas seja forte em uma ou duas destas reas, esta especializao raramente encontrada sob um mesmo teto.

    Ser uma casa de software de categoria internacional: Se voc um fabricante de produtos que considera o software como um mal necessrio, melhor procurar um hipnotizador porque a maioria dos inteligentes dos produtos inteligentes so do software que ainda no se codifica a si mesmo (pelo menos, ainda no).

    Integrao do trabalho de desenvolvimento de hardware e de software: Com as funes voltadas para o software tomando o centro do palco, voc precisa fazer com que seus times de hardware e de software realmente trabalhem juntos e no apenas joguem os mdulos acabados para integrao e teste.

    Gerenciamento eficaz de times distribudos: Se os seus times de desenvolvimento esto localizados em cidades, fusos horrios e/ou

    LE

    MBRE-SE

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 10pases diferentes, tente facilitar os trabalhos em colaborao para garantir resultados eficientes, precisos e cooperativos.

    Interao com outros sistemas: Voc no deve lanar o nico produto do mercado que no consiga interagir com a Internet, sistemas de apoio de IT e outros sistemas interconectados. Os produtos independentes no so to inteligentes assim e muito provavelmente sero fracassos independentes.

    Conformidade garantida: Mesmo que o seu produto no esteja ligado diretamente aos padres regulatrios ou da indstria, ele pode interagir com um produto ou servio que esteja, por isso previna-se para que todos os outros garotos queiram jogar com voc.

    Mudana das prioridades do design: Priorize o seu design para capacidade de atualizao e no estabilidade do produto. Concentre-se nas prioridades de design certas. Para a rea aeroespacial pode ser a segurana, para a defesa pode ser a proteo, para os eletrnicos de consumo pode ser a capacidade de atualizao.

    Reduo do ciclo de vida do produto: Com a demanda de novos recursos causando a reduo da vida do servio at mesmo dos melhores produtos, o seu trabalho entrar no mercado na hora certa com o conjunto certo de recursos.

    Adaptao aos requisitos sempre diferentes: A mudana das necessidades do cliente, as condies dinmicas dos concorrentes e do mercado, e as metas corporativas repensadas so motivos vlidos para os pedidos irritantes de mudana. Se voc for inteligente, descubra como lucrar com a mudana.

    Pesquisa dos perigos potenciaisA falha de abordar os desafios relacionados com a criao de um novo produto inteligente que seja uma bobagem pode deix-lo em maus lenis isso sem falar no prejuzo para a sua imagem e para os lucros.

    Os erros que possam parecer pequenos e fceis de corrigir em um produto independente normalmente so aumentados e distribudos atravs de um design de sistema interconectado. Um bug de software pode criar um caos quando no detectado no incio do processo de desenvolvimento, aumentando os custos e causando atrasos na programao. Com a quantidade de softwares nos dispositivos dobrando a cada dois anos, fcil entender porque 66% dos designs de software dos dispositivos ultrapassam o oramento, e porque 24% dos grandes projetos so cancelados devido a atrasos irrecuperveis da programao.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 1: Criao de produtos inteligentes 11

    Se voc no puder desenvolver produtos complexos em um ciclo mais curto sem comprometer a qualidade, voc est fadado a perder a renda e manchar a sua marca. No entanto, os produtos inteligentes e interconectados normalmente tm centenas ou at milhares de requisitos exclusivos, sendo difcil imaginar ser possvel manter a qualidade e reduzir o ciclo de desenvolvimento.

    Se voc no estiver preparado para responder facilmente s novas demandas do mercado ou ameaas dos concorrentes, no se espante ao perder a fatia do mercado para organizaes mais ligeiras. Para muitas organizaes, somente chegar ao design inicial certo j um desafio: quase um tero de todos os dispositivos produzidos hoje em dia simplesmente falham na conformidade com as especificaes de performance ou funcionais. Voc pode apostar que estes dispositivos estaro fora das prateleiras muito rapidamente!

    DICA

    No porque voc tem um talento tcnico especial trabalhando no design do sistema que o sucesso garantido. Muitos sistemas falham devido a erros nas especificaes da interface do sub-sistema, fidelidade com os requisitos ou comunicaes do conhecimento principal e no de engenharia.

    Reconhecimento da necessidade da mudana do paradigma

    Depois de aceitar o fato de que para ter sucesso no mercado atual voc precisa mudar como o valor entregue com os seus produtos, voc pode iniciar a examinar novamente o planejamento, gerenciamento e processos de desenvolvimento do seu produto. E imediatamente voc ver a necessidade de mudar para se concentrar na inovao e na mudana com o software como a base para este diferenciador.

    Antigamente, quando o hardware mandava, o Design auxiliado por computador 3D (CAD) e o gerenciamento da Lista tcnica de materiais (BOM) eram tudo para o desenvolvimento de produto sequencial (veja Figura 1-2). O seu time de desenvolvimento de hardware usou um sistema CAD para desenhar o hardware para atender um conjunto de requisitos, enquanto que o time de software trabalhou com um conjunto de requisitos diferentes, porm relacionadas, para produzir o cdigo necessrio. O design CAD e o BOM foram entregues para a fbrica que calculou a forma mais rpida e mais barata de manufaturar o produto. Finalmente, os engenheiros de integrao e de teste (de outro departamento) carregaram o software e fizeram o teste geral do produto.

    AVISO!

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 12

    Anlise dosRequisitos

    Design

    Desenvolvimento

    Integraoe Teste

    Implementao

    Planejamento

    Operaese

    Manuteno

    Design CAD

    BOM

    Requisitos

    Figura 1-2: Desenvolvimento de produto sequencial.

    No mundo de hoje, este tipo de processo de desenvolvimento sequencial baseado em documentos simplesmente no d mais certo. Imagine tentar responder rapidamente aos eventos inesperados do mercado ou aos pedidos de novos recursos. Cada mudana exige voltar para o incio e refazer todo o processo sequencial. Sua empresa iria definhar num piscar de olhos!

    LE

    MBRE-SE

    Se a sua empresa depende de um sistema inteligente para sobreviver, preciso deixar de lado os processos antigos sequenciais baseados em documento e desenvolver todo um novo conjunto de processos centrais para o futuro.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 2

    Domando a fera com a Engenharia de Sistemas

    Neste captuloAvaliao da engenharia de sistemas

    Ajuste da euforia do projeto com a realidade do mundo

    Modelagem do seu design

    V oc j pensou como a NASA conseguiu administrar com sucesso o desenvolvimento de um sistema to complexo como a da aeronave espacial Apollo? Como times to diferentes de engenheiros de projeto, programadores, fabricantes terceiros e outras pessoas conseguiram trabalhar juntos no primeiro voo tripulado para a lua? Bom, na realidade isto no poderia ter sido realizado sem a ajuda da engenharia de sistemas.

    A engenharia de sistemas uma abordagem interdisciplinar da criao de sistemas maiores e complexos que atendam a um conjunto definido de requisitos de negcios e tcnicas. As indstrias aeroespacial e de defesa usam a engenharia de sistemas h muito tempo e muito do que elas aprenderam est sendo aplicado em outras indstrias. Com os sistemas de transporte, redes eltricas, e sistemas de telefonia e de rede tornando-se cada vez mais inteligentes, preciso mtodos dos voos espaciais para constru-los.

    CO

    ISAS

    TCNICAS

    A engenharia de sistemas existe desde os anos 1940s, mas comeou a ganhar fora fora da NASA nos anos 1990s. Foi nessa poca que os fabricantes comearam a transformar os produtos ordinrios em sistemas inteligentes com a incorporao da tecnologia da informao passando a ser um ponto crucial no desenvolvimento de produtos. Somente recentemente o software passou a assumir um papel central.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 14Com a capacitao de funes sem limites nos produtos, o software passou a ter um papel central em todos os tipos de produtos, viabilizando muitos novos tipos de interconexes das peas e do produto com o mundo. O maior nmero de conexes aumentou exponencialmente a complexidade do sistema deixando as empresas sem alternativa, tendo que eliminar os silos de desenvolvimento e criar novas maneiras de gerenciar a complexidade.

    Neste captulo, voc saber exatamente o que a engenharia de sistemas, como ela pode ajud-lo a gerenciar a complexidade e a desenvolver produtos mais inteligentes e inovar at chegar no topo.

    Engenharia de SistemasSe voc perguntar a cinco especialistas exatamente o que a engenharia de sistemas, vai receber provavelmente cinco talvez at seis respostas diferentes! O motivo que o termo engenharia de sistemas usado para vrias coisas diferentes e, em parte, porque o conceito de sistemas tem se modificado h dcadas, e por isso a engenharia de sistemas no teve escolha, e se modificou tambm!

    No se preocupe! Enquanto alguns doutores possam se preocupar com os detalhes e o escopo da engenharia de sistemas, a maioria dos especialistas concorda com a sua fundao. Nesta seo, veremos o que esta fundao e como constru-la.

    Enxergar a floresta e as rvores

    LE

    MBRE-SE

    A engenharia de sistemas uma prtica e um processo ao mesmo tempo (veja Figura 2-1):

    Como prtica, se preocupa com cenrio geral: como um sistema funciona e se comporta em geral, como ele faz a interface com os seus usurios e outros sistemas, como seus subsistemas interagem e como reunir vrias disciplinas de engenharia para um trabalho conjunto.

    Como processo, define uma abordagem estruturada slida para o desenvolvimento do sistema que possa ser aplicado ao sistema de sistemas ou dentro das disciplinas especficas da engenharia.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 2: Domando a fera com a Engenharia de Sistemas 15

    Subsistema Subsistema Subsistema

    Componente de Software

    Componente Mecnico

    Componente de Software

    ComponenteEltricoEn

    genh

    aria

    de

    Sist

    emas

    Proc

    esso

    conc

    eito

    , des

    ign,

    cria

    o,

    ope

    ra

    o

    Engenharia de SistemasPrtica

    anlise de disciplinas, modelagem do sistema de sistemas

    Sistema

    Sistema SistemaSistema

    Figura 2-1: A engenharia de sistemas uma prtica e um processo ao mesmo tempo.

    No importa o tipo de anlise, a engenharia de sistemas a aplicao da disciplina ao processo de desenvolvimento do sistema. E esta disciplina tem dois sabores distintos:

    Disciplina tcnica garante a execuo rigorosa de um processo de desenvolvimento sensato, desde o conceito at a produo e a operao.

    Disciplina do gerenciamento organiza o trabalho tcnico em todo o ciclo de vida do sistema, incluindo a facilitao da colaborao, definio do fluxo de trabalho e implementao das ferramentas de desenvolvimento.

    Alguns princpios de orientao a seguirCom a unio da amplitude com a profundidade, a engenharia de sistemas tem por objetivo ajud-lo a administrar os detalhes de um trabalho complexo de desenvolvimento sem esquecer das metas gerais do projeto.

    DICA

    Comece com a adeso ao seguinte conjunto de princpios de orientao:

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 16 Fique focado no prmio. Defina o resultado desejado para um

    projeto desde o incio e no se afaste da sua meta, mesmo que a coisa fique louca.

    Envolva pessoas interessadas. Pea a opinio dos clientes, usurios, operadores, gerentes de nvel C e outras pessoas ao tomar as decises nas diferentes etapas do processo de desenvolvimento.

    Defina o problema antes de encontrar a soluo. Mantenha a mente aberta quanto aos meios para os fins, para examinar vrias alternativas e escolha a melhor soluo para o resultado desejado.

    Divida o problema em partes administrveis. Decomponha o sistema em subsistemas menores, e divida cada subsistema nos componentes de hardware ou software. Outro princpio o gerenciamento das interfaces destes pedaos para a garantia da integrao e entrega da capacidade emergente exigida.

    Espere para escolher a tecnologia especfica. Espere at estar bem adiantado no processo antes de selecionar os componentes fsicos para evitar o compromisso com uma tecnologia desatualizada ou desnecessria quando estiver pronto para implementar o design.

    Conecte os requisitos com o design. Confirme se voc pode justificar as decises de design conectando-as com as necessidades tcnicas e de negcios especficas.

    Teste logo, teste frequentemente. Aproveite os prottipos, simuladores, emuladores e qualquer outro mtodo para que todos envolvidos no projeto vejam logo o sistema. Confira se os testes provam o atendimento dos requisitos com a sua conexo.

    Explorao do processo da engenharia de sistemas

    Muito bem, voc tem fortes princpios orientadores, mas como coloc-los em ao? Bem, uma maneira de fazer isso desenvolver um processo consistente para a engenharia de sistemas que abranja estes princpios.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 2: Domando a fera com a Engenharia de Sistemas 17Aproximadamente nos ltimos 20 anos, os especialistas de sistemas complexos desenvolveram e refinaram o conhecido Modelo V do processo de engenharia de sistemas (veja Figura 2-2). O Modelo V uma representao grfica de uma srie de etapas e procedimentos para o desenvolvimento de sistemas complexos.

    AceitaoTestes

    SistemaTestes

    SubsistemaTestes

    Unidade/Dispositivo Testes

    Conceito dasOperaes

    (ConOps)

    ProjetoDetalhado

    Designde Alto Nvel

    Especicao do Sistema

    Desenvolvimento deSoftware/Hardware

    Implementao

    Denio e Decomposio

    Inte

    gra

    o e

    Rec

    ompo

    si

    o

    Validao do Sistema

    Vericao do Sistema

    Vericao dos Subsistemas

    Vericao dasUnidades/

    Dispositivos

    Figura 2-2: O Modelo V do processo de engenharia de sistemas.

    Ao traar o V da esquerda para a direita, voc executa o processo de engenharia de sistemas em uma srie de etapas, assim:

    Conceito de Operaes (ConOps): Identificao e documentao das necessidades dos principais interessados, capacidade geral do sistema, funes e responsabilidades e medidas da performance para a validao do sistema no final do projeto.

    Especificao do Sistema: Detalhe dos requisitos verificveis do sistema que atendam s necessidades dos interessados definidas no ConOps.

    Design de Alto Nvel: Design de uma arquitetura de sistema de alto nvel que atenda os requisitos do sistema e preveja a manuteno, atualizaes e integrao com outros sistemas.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 18 Projeto Detalhado: Exame do design do sistema, desenvolvimento

    dos requisitos de componentes que do suporte compra de hardware dentro do oramento.

    Desenvolvimento de Software/Hardware: Seleo e procura da tecnologia apropriada, e desenvolvimento do hardware e software para o cumprimento das especificaes detalhadas do projeto.

    Teste de Unidade/Dispositivo: Teste de cada componente da implementao de hardware, verificao da funcionalidade de acordo com os requisitos dos componentes.

    Teste do Subsistema: Integrao dos componentes de hardware e de software em subsistemas. Teste e verificao de cada subsistema de acordo com os requisitos de alto nvel.

    Teste do Sistema: Integrao dos subsistemas e teste de todo o sistema de acordo com os requisitos do sistema. Confirmao de que todas as interfaces foram implementadas adequadamente e de que todos os requisitos e limites foram atendidos.

    Teste de Aceitao: Confirmao de que o sistema cumpre com os requisitos e atinge as metas desejadas.

    Durante o processo de engenharia de sistemas, criao e refinamento da documentao do sistema. Em cada etapa esquerda do V na Figura 2-2, crie os requisitos para a prxima etapa, bem como um plano para a verificao da implementao do atual nvel de decomposio. Por exemplo, durante a etapa de ConOps, voc cria um documento com os requisitos de alto nvel do sistema que conduz etapa de Especificao do Sistema, e cria o Plano de Validao do Sistema que conduz ao Teste de Aceitao. Em cada etapa direita do V, voc cria a documentao de suporte ao treinamento, uso, manuteno, instalao e teste do sistema.

    DICA

    Com a conexo de todas as etapas esquerda do V de todos os requisitos e referindo-se a estes requisitos durante o trabalho em direo direita do V, voc estar muito mais propenso a permanecer fiel sua misso original e manter a objetividade durante o processo. Estas conexes so conhecidas na engenharia de sistemas como rastreamento. O Captulo 3 abrange os requisitos e o rastreamento com detalhes.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 2: Domando a fera com a Engenharia de Sistemas 19

    Gerenciamento da complexidade com modelos

    Alguns modelos so teis, principalmente para um projeto de engenharia complexo. Se voc puder desenvolver mtodos relativamente baratos para o design, teste e verificao do sistema antes de produzi-lo, possvel economizar bastante tempo e dinheiro e at mesmo o seu trabalho! Uma maneira de fazer isso usar modelos para fazer o design e refinar o sistema durante o processo de desenvolvimento.

    LE

    MBRE-SE

    Com os modelos do sistema possvel capturar a complexidade em diversos nveis, incluindo o sistema de sistemas (tambm conhecido como ecossistema), sistema, subsistema e nveis de componentes. Com eles possvel explorar os detalhes de cada um destes nveis, conhecidos como nveis de abstrao, independentemente e ocultar ou expor os detalhes de acordo.

    Os modelos podem ter diferentes formatos. No nvel mais simples, pode ser apenas uma planilha usada para calcular alguma propriedade emprica do sistema. Por outro lado, pode ser uma simulao de computador interativa altamente complexa.

    Por exemplo, para entender como o sistema automotivo (traduo: carro) que voc est desenvolvendo capta e encaminha os dados do impacto em uma coliso para um sistema de resposta de emergncia. preciso explorar a informao sobre os sensores do carro e como o carro interage com o sistema externo, mas voc provavelmente no deve se distrair com detalhes externos, como o diagrama de fiao e colocao de componentes. O modelo certo pode mostrar o que necessrio sem detalhes extra.

    LE

    MBRE-SE

    Os modelos podem proporcionar os seguintes benefcios:

    Permitir a concentrao na informao relevante para a presente questo, e garantir a consistncia do seu design.

    Captura da estrutura (arquitetura) e comportamento (funcionalidade) de um sistema, ilustrando o relacionamento e a interao dos elementos do sistema.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 20 possvel usar os modelos na previso do comportamento em diversos

    nveis de abstrao, permitindo a explorao de diferentes arquiteturas no incio do processo de desenvolvimento e a execuo de estudos de compensao para avaliar as opes de design que faam mais sentido.

    possvel desenvolver modelos executveis para a validao do design de acordo com os requisitos antes da construo do sistema.

    Os modelos permitem a visualizao dos detalhes de um sistema com diversas perspectivas (por exemplo, arquitetura, lgica, funo, dados fsicos, dados, e usurio), para a abordagem de questes especficas.

    possvel explorar modelos que ajudem a administrao do trabalho de desenvolvimento.

    A modelagem oferece uma tremenda visibilidade do sistema, proporcionando um ponto focal potente para a discusso e entendimento mtuo.

    Os modelos oferecem um espao para os pensamentos e critrios de decises, facilitando a colaborao entre voc e seu time de desenvolvimento.

    E, talvez o mais importante, o modelo do sistema fornece um ponto de sincronizao de diversas disciplinas de engenharia, e uma soluo para um dos problemas mais significantes para o desenvolvimento de sistemas inteligentes: como coordenar o hardware e o software.

    Como falar o mesmo idiomaDa mesma forma como um arquiteto usa um conjunto de padres para representar elementos de um prdio em um desenho a ser interpretado por um mestre de obras, um time de desenvolvimento deve usar uma linguagem comum para representar os modelos de sistema que promovam a compreenso geral.

    Em 2001, o International Council on Systems Engineering (INCOSE), juntamente com o Object Management Group (OMG), iniciaram o desenvolvimento de uma linguagem de modelagem comum para as aplicaes de engenharia de sistemas e, em poucos anos, a Linguagem de Modelagem de Sistemas (SysML) nasceu. Criada como uma adaptao da Linguagem de Modelagem Unificada (UML) concentrada no software, a SysML o verdadeiro idioma padro para sistemas de modelagem e sistemas de sistemas.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 2: Domando a fera com a Engenharia de Sistemas 21A SysML usa uma abordagem de diagrama simples para modelar os sistemas (to simples que algumas pessoas os chamam de pintura de caverna), onde a unidade bsica da estrutura um bloco pode ser usada para representar o hardware, software, instalaes, pessoal ou qualquer outro elemento de um sistema. Com uma srie de diagramas de estrutura em ninho, define-se a estrutura interna e o uso desejado de um elemento particular do sistema (por exemplo, um sistema de freio antitravamento). Ento, com uma srie separada de diagramas de comportamento em ninho, possvel mostrar como aquele elemento do sistema interage com outros elementos, e com os atores (usurios, sistemas externos ou o ambiente), para cumprir ou realizar o comportamento.

    Alm da modelagem da estrutura (arquitetura) e do comportamento dinmico (funcionalidade) do sistema, a SysML tambm permite a modelagem dos requisitos e dos par-metros da performance. Por exemplo, em um sistema automotivo, possvel criar um diagrama de requisitos para especificar um limite, como parar a 105 kph em uma distncia de 55 m em uma superfcie limpa e seca e diagramas paramtricos para especificar as equaes que controlam o movimento do carro. E o melhor de tudo, possvel usar as novas ferramentas de software potentes pense como se fosse a construo de um simulador de um novo carro de corrida. Isto significa que voc pode fazer um test-drive para verificar a direo antes mesmo de constru-lo!

    DICA

    Com a definio e a organizao de modelos de construo, a SysML fora os engenheiros e arquitetos de sistemas a ser bastante claros e precisos ao projetar o sistema. Isto reduz a ambiguidade e leva a uma maior qualidade, ciclos de desenvolvimento mais curtos e custos reduzidos.

    Uma boa imagem vale mil (ou um bilho) de palavras

    A melhor maneira de entender a modelagem com a SysML olhar o diagrama da SysML. A Figura 2-3 mostra um diagrama do contexto simples de um carro moderno que tem um receptor integrado do Sistema de Posicionamento Global (GPS) e um controle remoto do sistema de controle de segurana residencial.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 22

    Motorista

    Sistemade VigilnciaResidencial

    Sistema de Posicionamento

    Global

    Carro

    Figura 2-3: Um simples diagrama do contexto de um carro.

    Use o diagrama do contexto para definir os limites, ou contexto, do sistema. Neste caso, o sistema o carro, que interage com trs atores externos do sistema: o motorista, o sistema GPS e o sistema de segurana residencial. Um ator qualquer coisa com o qual o sistema interage, um usurio, outro sistema ou o ambiente. Use o diagrama do contexto para fornecer os detalhes do sistema sendo considerado.

    LE

    MBRE-SE

    Com a definio do sistema e dos seus atores, voc identifica os relacionamentos importantes e, com isso, os requisitos e interfaces. Ai ento tem incio o mapeamento das especificaes da interface e do fluxo de dados entre o sistema e os seus atores.

    AVISO!

    Sem um diagrama do contexto, possvel deixar de ver um ator ou dois e cometer falhas quanto aos requisitos do sistema. Por exemplo, com a falha na definio do sistema de segurana residencial como um ator do ecossistema, o seu carro deixa de ser inteligente o suficiente para armar o sistema de alarme.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 3

    Requisitos revolucionadores

    Neste captuloReconhecimento dos benefcios da mudana

    Cobertura de todos os requisitos com a incluso de casos de utilizao

    Requisitos em cascata no processo de desenvolvimento

    Anlise do impacto da mudana

    Compreenso (do gerenciamento dos requisitos)

    A ntigamente os requisitos eram criados no incio de um projeto e o produto era projetado ao redor destes requisitos e, quando o departamento de marketing informava que o cliente queria fazer uma mudana (ou duas ou trs), voc batia o p, fazia cara feia e reclamava do processo de mudana dispendioso dos requisitos que exigia 57 assinaturas.

    Mas isso est mudando. Em um mercado voltil e competitivo cujo sucesso est atrelado a satisfazer cada vez mais os clientes, voc tem duas opes: mudar ou reclamar. Neste captulo, voc descobrir como projetar os requisitos do sistema j pensando nas mudanas para garantir que o design do sistema satisfaa estes requisitos.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 24

    Adoo da filosofia de mudana

    Nesta nova era de produtos inteligentes, preciso responder rapidamente dinmica do mercado, como as mudanas das necessidades do cliente, novas ameaas de concorrncia ou o mais recente padro regulatrio. Os criadores de produtos tambm observaram durante os ltimos anos que os requisitos devem mudar com o melhor entendimento das necessidades durante o processo de desenvolvimento. Para o processo de desenvolvimento de sistema tradicional, a mudana o inimigo. E o que voc deve fazer?

    Criar um novo processo.

    A boa notcia que outras pessoas que passaram por isso estabeleceram um processo de projeto de requisitos totalmente novo. Mais do que simplesmente uma anlise e definio antecipada dos requisitos, a engenharia de requisitos define completamente o processo para o estabelecimento dos requisitos, atrelando-os aos testes, e facilitando a mudana.

    DICA

    Os requisitos funcionam melhor quando projetados com o pensamento na mudana. A filosofia da engenharia de requisitos que a mudana bem-vinda. Na realidade, a mudana uma meta!

    Compreenso do contextoAntes de estabelecer um conjunto inicial de requisitos para um produto ou sistema inteligente, vale a pena pensar um pouco no problema que o seu produto est tentando resolver. Por exemplo, se a inteno criar um carro, essencial que voc entenda exatamente como e por quem ele ser usado. O carro ser para a cidade, estrada ou corrida? O mercado alvo consiste principalmente em motoristas mais velhos, homens jovens ou pais que no trabalham? O carro ter que enfrentar condies difceis, como frio extremo, rodovias com sal, calor extremo, terreno montanhoso ou alta altitude?

    LE

    MBRE-SE

    A compreenso do contexto essencial para o desenvolvimento de sistemas que alcancem as metas de marketing e de negcios. O contexto significa um conjunto de atores (por exemplo, usurios, outros sistemas e o ambiente) com o qual o sistema interage, e como as interaes do sistema com seus atores so realizadas.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 3: Requisitos revolucionadores 25A Figura 3-1 mostra um diagrama do contexto para um carro com um sistema de navegao integrado e um sistema de controle de segurana de residncia voltado para uso em climas frios. Neste diagrama, o carro tratado como uma caixa preta que interage com os seguintes atores: o motorista, o sistema GPS e o sistema de segurana residencial e o clima frio. A definio do contexto ajuda a entender qual funcionalidade exigida do sistema e que tipo de trocas ocorrem entre o sistema e seus atores.

    Motorista

    Sistemade VigilnciaResidencial

    Ambiente deinvernoCarro

    Sistemade Posicionamento

    Global

    Figura 3-1: O contexto de um sistema delineia os limites e especifica as interfaces.

    A compreenso do contexto tambm ajuda a garantir de que todos os requisitos, relacionamentos e interfaces necessrios sejam considerados antes do incio do processo de desenvolvimento. Por exemplo, a omisso do ator ambiente frio para o carro pode resultar na falha de especificar requisitos de um pacote para convenincia climtica com cabos de bateria pesados e um revestimento protetor do chassi.

    No mais alto nvel de abstrao, o seu sistema uma caixa preta que interage com um conjunto externo de atores. A caixa preta tem um conjunto de subsistemas interconectados (por exemplo, freios antitravamento, sistema de navegao, etc.) que compe o sistema. possvel decompor cada subsistema em um conjunto de componentes interconectados (e, talvez, subsistemas). Em cada nvel da decomposio (por exemplo, sistema, subsistema, componente) do seu sistema, o contexto muda.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 26Compare o diagrama do contexto do carro (veja Figura 3-1) com o diagrama do contexto do subsistema de navegao integrado do carro (veja Figura 3-2). No nvel do sistema, o carro a caixa preta que interage com atores externos. No nvel do subsistema, o subsistema de navegao a caixa preta que interage com diferentes conjuntos de atores: o motorista, o subsistema eltrico do carro e o sistema GPS.

    Motorista

    SubsistemaEltrico

    Sistema de Posicionamento

    Global

    Subsistema de

    Navegao

    Figura 3-2: O contexto muda com a explorao dos diferentes nveis do sistema.

    LE

    MBRE-SE

    A compreenso do contexto delineia os limites do sistema e define as interfaces, estabelecendo a base para uma especificao precisa dos requisitos do sistema.

    Mergulho nos requisitosPense nos requisitos como trs amplas categorias ou nveis:

    Requisitos de origem. So os requisitos obtidos dos clientes ou interessados. Podem ser amplos e gerais, detalhados e especficos, abrangentes ou fragmentados ou mais provavelmente, um pouco de tudo. Como diz o ditado, os clientes no seguem nenhuma regra para oferecer os requisitos o que voc conseguir j lucro.

    Requisitos da misso ou dos negcios. So os requisitos que especificam o contexto operacional do sistema no o que o sistema faz, e sim o papel que ele tem no mundo. Para uma nova aeronave militar, pode descrever os tipos de misses a serem realizadas. Para um novo smartphone, os requisitos dos negcios podem descrever a operao da infraestrutura de comunicao da operadora do celular.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 3: Requisitos revolucionadores 27 Requisitos do sistema/subsistema. So os requisitos que

    definem o que o sistema deve fazer. Eles iniciam em um alto nvel do sistema e so analisados e decompostos para produzir os requisitos dos subsistemas de nvel mais baixo. Eles podem ser expressados com sentenas com o termo deve ou em formatos mais avanados como modelos e diagramas.

    Em cada nvel da abstrao, os requisitos definem o que um sistema deve fazer e como ele deve ser feito, mas no como deve ser implementado. Com os sistemas inteligentes tornando-se cada vez mais complexos, quase impossvel chegar aos requisitos do sistema certos no princpio. E nas reas como de eletrnicos de consumo, por exemplo, no qual a mudana mais importante do que a estabilidade, voc no deve congelar os requisitos no incio do processo de desenvolvimento.

    Busca de mais informaesVale a pena obter a maior quantidade de informaes possvel para os requisitos da origem, do maior nmero possvel de interessados desde o incio do processo de engenharia dos requisitos. Voc deve iniciar com os clientes, claro, mas tambm deve obter informao sobre os padres regulatrios, da indstria e de segurana que governam o seu sistema, interfaces e troca de dados com outros sistemas (como por exemplo, o sistema GPS), e as limitaes dos negcios e de marketing.

    LE

    MBRE-SE

    O objetivo obter os requisitos que descrevam a capacidade e no as funes do sistema. (Por exemplo, o que o sistema deve fazer e no como deveria fazer.) Pergunte a um cliente que esteja descrevendo a funo, o que ele quer. Isto deve levar capacidade.

    Tambm importante especificar os requisitos funcionais e no-funcionais. Use os requisitos funcionais para descrever o que o sistema deve fazer, de acordo com certas informaes. Por exemplo, em um determinado ponto inicial e de destino, o seu sistema de navegao deve apresentar um mapa e exibir uma rota. Use os requisitos no funcionais para especificar os requisitos de performance ou de qualidade, ou para impor limites ao design. Inclua nestes requisitos coisas como velocidade, capacidade, confiabilidade, peso, uso e escalabilidade.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 28Para ter certeza que cobriu todos os ngulos, desenvolva casos de utilizao que descrevam todas as possibilidades de utilizao das funes do sistema. Por exemplo, a funo mapa da rota do seu sistema de navegao pode ser usado para encontrar o posto de gasolina mais prximo ou para mostrar os hotis na vizinhana do meu destino. Os casos de utilizao normalmente so compostos de sequncias de uma ou mais funes do sistema. Os casos de utilizao contam histrias concretas da utilizao do sistema e podem ser usados em trs nveis de requisitos origem, misso/negcios e sistema/subsistema.

    DICA

    Com a captura da utilizao durante o desenvolvimento dos requisitos, mais provvel que voc projete um sistema que proporcione um valor real.

    Satisfao e obteno de requisitosAps avaliar o contexto do sistema e definir um conjunto inicial de requisitos de alto nvel do sistema, use estes requisitos para chegar ao processo de design de alto nvel (veja Figura 3-3). Durante o processo de design so desenvolvidos os requisitos adicionais, como o Plano de Verificao do Sistema a ser atingido durante o teste do sistema, ou os limites do design arquitetnico que devem ser alcanados pelo projeto detalhado.

    Requisito:Emisses

    atende padro de emisso ultra baixo

    Requisito:Eficincia de combustvel

    Requisito:Frenagem

    Mini vanEspecificao

    Verificado porCaso de teste

    Acelerao mxima

    Refinado porCasos de utilizao

    Acelerar

    Requisito:Potncia

    Preenchido porPotncia

    Subsistema

    derivadoRequ

    Requisito:EcoFriendly

    Requisito:Acelerao

    Requisito:Performance

    Figura 3-3: Processo do design de alto nvel.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 3: Requisitos revolucionadores 29

    O exame do alcance do seu design atende os requisitos desenvolvidos no nvel de design anterior (mais alto) e trazem requisitos que devem ser usados pelo nvel do teste correspondente, bem como do nvel de design seguinte (mais baixo).

    Como voc pode ver, a definio de requisitos est expandindo, pois as linhas que diferenciam os requisitos do design esto cada vez mais tnues, e a conexo entre o teste e o design tornam-se crticas. O conjunto final de requisitos uma combinao dos requisitos iniciais do sistema de alto nvel com os requisitos obtidos durante o processo de design.

    Criao dos diagramas dos requisitos

    Embora os requisitos antigos baseados em texto ainda sejam necessrios para grandes projetos com obrigaes contratuais, normalmente no so suficientes no mundo atual dos produtos inteligentes complexos, flexveis e focados no cliente. Felizmente, a Linguagem de Modelagem de Sistemas (SysML) amplamente adotada fornece uma base de trabalho para os requisitos de modelagem. Enquanto os grandes conjuntos de requisitos de texto ainda existem em um banco de dados, principalmente os enviados pelo cliente, existem agora novas formas melhores de visualizar e trabalhar com conjuntos de requisitos afins.

    A SysML permite a criao de modelos de requisitos hierrquicos que ilustram as dependncias, classificam os requisitos como originais ou derivados, e captam a lgica da opo do design. So dois os nveis de requisitos de sistema de alto nvel: EcoFriendly e Performance. (Veja Figura 3-3.) O requisito EcoFriendly tem um sub-requisito especfico que Emisses.

    O requisito Performance tem trs sub-requisitos, sendo um deles a Acelerao. O sub-requisito Acelerao mais refinado em casos de utilizao especficos. definido um plano de teste para acelerao mxima (um requisito que o processo deve atender). Finalmente, o sub-requisito Acelerao gera um requisito derivado para energia, atendido pelo subsistema Potncia.

    Os diagramas dos requisitos SysML permitem a fcil visualizao dos relacionamentos e a resposta de perguntas do tipo: Quais requisitos o subsistema Potncia atende? ou Qual pode ser o impacto da mudana

    LE

    MBRE-SE

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 30do requisito Tamanho da Carga? Quando os requisitos so tratados como parte integral da arquitetura do sistema, muito mais fcil visualizar o impacto das mudanas dos requisitos do seu sistema. E esta no uma das metas da engenharia de sistemas?

    Direcionamento das decises do design com os requisitos

    Com os requisitos em cascata no processo de design, a natureza de alguns deles podem levar a opes de design especficas. Por exemplo, ao projetar um sistema anticoliso de avio, o incio do processo pode apresentar trs opes de design, cada uma delas satisfazendo os requisitos funcionais para evitar a coliso:

    Sistema de radar de bordo

    Transponder

    Principalmente manual (comunicao com o controle de trfego areo)

    Cada opo de design tem o seu conjunto nico de componentes, requisitos de espao e custos, e envolve certo nvel de colaborao dos sistemas com seus atores (por exemplo, controle de trfego areo). Com a maior decomposio do design, possvel encontrar um requisito no funcional, como espao mximo da cabine de comando que limita as opes de design (o sistema de radar no cabe!).

    Os engenheiros de sistemas usam uma tcnica chamada estudo de compensao para avaliar as muitas opes de design que devem ser adotadas. basicamente a mesma coisa que todos fazem ao tomar uma deciso importante. Identificar os fatores importantes para a deciso, pontuar cada alternativa de cada fator, adicionar ajustes de ponderao e tomar a deciso. Os estudos de compensao normalmente exigem vastas pesquisas para a avaliao total das alternativas.

    O acompanhamento de todos os requisitos e como eles afetam as outras partes do sistema so um mal necessrio para a oferta de produtos de sucesso. As ferramentas de software prontas para uso ajudam a administrao dos requisitos do sistema.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 3: Requisitos revolucionadores 31

    A omisso de um requisito pode causar problemas srios. Por exemplo, possvel projetar um porta-copos para automveis mais fenomenal do mundo, mas se ele ficar localizado embaixo do som do carro fazendo com que o seu caf latte grande bloqueie os controles porque voc esqueceu de levar em considerao o requisito de deixar um amplo espao livre no design, voc vai errar feio. Erros como esse podem sair muito caro.

    Malabarismo com os requisitos e Designs

    No exemplo de anticoliso para avies na seo anterior, vamos supor que voc selecionou a opo de design transponder do sistema. Esta opo semiautomtica envolve o monitoramento dos sinais do transponder do avio na rea por parte do controle de trfego areo. A opo de design dispara sub-requisitos de um design de subsistema de transponder e um plano de teste do subsistema.

    Voc j est bem adiantado no design do subsistema quando recebe um pedido de mudana de requisito. O novo requisito especifica que a aeronave deve evitar colises de modo independente. A sua opo de design no atende a este novo requisito, por isso preciso colocar este design de lado e trabalhar com uma opo alternativa, o sistema de radar.

    Certas mudanas podem produzir requisitos derivados de um design de subsistema que podem propagar-se at o design do sistema. Por exemplo, as restries de custo podem limitar a escolha de um componente do sistema que, por sua vez, limitam a funcionalidade do subsistema, afetando os requisitos originais. Antigamente (alguns anos atrs!) este processo de propagao da mudana consumia muitas horas ou at semanas, com os engenheiros rastreando e modificando os documentos e designs relevantes nos documentos em processador de texto, slides de apresentao e planilhas. A introduo de modelos no processo ajuda muito, conforme discutido no Captulo 4.

    LE

    MBRE-SE

    Estabelea um processo formal para mudanas de requisitos e assim entender facilmente o impacto das mudanas no design do seu sistema.

    AVISO!

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 32

    Vinculao dos requisitos com os testes

    Voc concluiu o design de um novo sistema de navegao de automvel super-sensvel. O prottipo j foi construdo e o time de testes informou que o sistema est funcionando muito bem. Na realidade, ele calcula a velocidade da rota entre dois pontos com tal velocidade (graas ao seu algoritmo brilhante), que deve acabar com a concorrncia. O seu chefe, todo orgulhoso, oferece o prottipo para o seu CEO usar durante um dia. O CEO fica impressionado at tentar encontrar o restaurante chins mais prximo e perder a pacincia esperando pela resposta.

    Voc tenta descobrir o que aconteceu e percebe que o seu algoritmo foi otimizado para clculos de rota de ponta-a-ponta mas no para encontrar locais dentro de uma certa distncia. E, embora o plano do teste do seu sistema tenha testado a funcionalidade do sistema, no testou todos os casos de utilizao (ou talvez algum tenha esquecido de criar este caso de utilizao).

    LE

    MBRE-SE

    Um componente principal do processo de engenharia de sistemas o estabelecimento de vnculos entre os requisitos e os testes. Tenha certeza de construir o sistema que voc planejou e no apenas um sistema que funcione.

    Em cada nvel da decomposio do sistema, com o ajuste e a derivao dos requisitos, voc cria e refina os planos de teste para confirmar que o sistema atende aos requisitos. Quando os requisitos mudam, os planos do teste tambm devem mudar. Normalmente, o ato de escrever um critrio para testes de um conjunto de requisitos ajuda a melhorar e a refinar os prprios requisitos.

    DICA

    sempre bom avaliar os requisitos e confirmar que eles podem ser testados e at especificar no incio como eles devem ser testados.

    No esquea de deixar um rastroPara a garantia de que todos os requisitos sejam implementados adequadamente, preciso rastrear cada um deles durante o processo de desenvolvimento e de teste.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 3: Requisitos revolucionadores 33

    Rastreamento dos requisitos a capacidade de vincular cada requisito com trs itens relacionados:

    As necessidades dos interessados (requisitos da origem) que so atendidas

    Os elementos que implementam ou executam o sistema

    O caso de teste que o verifica

    O rastreamento ajuda a garantir a conformidade com os regulamentos e padres, evita o esquecimento de requisitos e mantm o foco nas metas gerais do projeto. Com o estabelecimento de vnculos de rastreamento completos, possvel avaliar exatamente o impacto da mudana de requisitos mais recente ou uma opo de design alternativa antes que a mudana seja feita.

    Recompensa do seu trabalho to duro

    Nos sistemas grandes e complexos, o gerenciamento dos requisitos pode ser um pesadelo. Muitos times de desenvolvimento consistem em centenas e at milhares de arquitetos e engenheiros, e todos eles tocam os requisitos, seja para criar e editar ou simplesmente para rever e entender estes requisitos. O rastreamento normalmente atravessa quatro nveis de decomposio enquanto os requisitos dos interessados so percorridos em cascata at o design do componente e os requisitos de teste. Alm disso, estes nveis de decomposio normalmente atravessam as fronteiras da cadeia de suprimentos, tornando a vida ainda mais desafiadora.

    Um gerenciamento eficaz dos requisitos envolve muitas disciplinas de engenharia, incluindo o design do sistema, arquitetura, software, mecnica, eletricidade e engenharia do teste. As funes dos negcios, como o marketing e compras, tambm esto interessadas no gerenciamento dos requisitos.

    DICA

    As ferramentas de software podem ajudar no entendimento do processo de gerenciamento dos requisitos difceis. Estas ferramentas so projetadas para manter o histrico das auditorias, preservar todas as mudanas,

    LE

    MBRE-SE

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 34conduzir anlises de impacto, e automatizar o processo de gerenciamento da mudana. Elas tambm podem alertar sobre os requisitos ignorados, designs muito trabalhados e no conformidade.

    O gerenciamento dos requisitos muito difcil, mas com a ajuda das ferramentas certas possvel ter um grande retorno em termos de custo, agendamento e sucesso do projeto e manter a sanidade mental.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 4

    Abstrao do sistema de modelagem

    Neste captuloDecomposio do sistema em nveis de abstrao

    Visualizao de como os elementos se encaixam

    Como o sistema deve se comportar

    Ajuste dos modelos do sistema com a iterao

    U ma frmula um tipo de modelo. Ela capta o relacionamento matemtico das variveis inseridas e o representa com uma estrutura matemtica que aplicada a diversos tipos de entradas. A visualizao da frmula ajuda o entendimento da relao dos elementos da estrutura. E, com o uso da frmula, possvel testar vrios tipos de possibilidades diferentes at encontrar a melhor frmula.

    Neste captulo, vamos explorar como possvel usar os modelos do sistema para administrar a complexidade, o relacionamento abstrato essencial do sistema e executar testes econmicos antes da construo do produto.

    Arquitetura do sistema de modelagem

    Os modelos de arquitetura viabilizam a captao da natureza esttica do sistema, incluindo a estrutura e o uso pretendido do sistema. Por exemplo, considere o modelo arquitetnico simplificado de um carro mostrado nas Figuras 4-1 e 4-2.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 36O modelo da estrutura parcial da Figura 4-1 decompe o sistema em diversos nveis. No nvel superior, vemos o sistema geral: o carro. Um nvel abaixo, vemos dois dos muitos subsistemas de um carro: o sistema de freio antitravamento (ABS) e o chassi.

    O subsistema do chassi se decompe ainda mais em outro subsistema (o conjunto dos cubos), um componente mecnico (o pneu), e outros subsistemas e componentes no mostrados neste diagrama. O subsistema do conjunto dos cubos consiste em um componente eletrnico (sensor) e diversos componentes mecnicos no mostrados na figura.

    O subsistema ABS se decompe em um componente mecnico (rotor) e outro subsistema (o controlador antitravamento). O subsistema controlador antitravamento consiste em dois componentes eletrnicos: o detector de trao e o modulador do freio. As linhas pontilhadas que conectam o sensor do conjunto dos cubos com o controlador antitravamento mostram que os dois se relacionam, embora o sensor no seja um elemento do subsistema do controlador antitravamento.

    FreioModulator Sensor

    TraoDetector

    Pneu

    Chassi

    Rotor AntitravamentoControladorConjunto dos

    Cubos

    Mini vanEstrutura

    Sistema de FreioAntitravamento

    (ABS)

    Figura 4-1: Um modelo arquitetnico simplificado de um sistema de minivan.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 4: Abstrao do sistema de modelagem 37

    Os modelos estruturais, como o modelo arquitetnico simplificado mostrado na Figura 4-1, captam a estrutura hierrquica da arquitetura do sistema e ilustram as conexes dos elementos do modelo.

    A Figura 4-2 mostra outra pea do modelo arquitetnico completo: uma viso interna de como as peas do subsistema do controlador antitravamento interagem entre elas e com o sensor do conjunto dos cubos. Neste caso, a sada do sensor conectada sada do detector de trao e a sada do detector de trao conectada sada do modulador do freio. Este diagrama simples ilustra as conexes para indicar o uso pretendido mas no especifica as condies nas quais as interaes acontecem. Os modelos de comportamento (discutidos na prxima seo) so usados para descrever a sequncia de eventos que devem acontecer para que as interaes ocorram (por exemplo, a leitura do sensor indica a perda de trao, e isso faz com que o detector de trao acione o modulador do freio).

    FreioModulator

    Sensor

    TraoDetector

    Controlador Antitravamento

    Figura 4-2: Modelos arquitetnicos captam a informao de uso.

    Os modelos estruturais como estes podem mostrar a arquitetura fsica, como no exemplo acima, ou podem ser usados para mostrar a arquitetura lgica. As arquiteturas lgicas so usadas cada vez mais no desenvolvimento de sistemas complexos porque permitem que os engenheiros calculem as interaes funcionais sem especificar uma estrutura fsica particular. Vejamos o carro da Figura 4-1. H algumas dcadas, os subsistemas de carros, como freios, motor e o rdio, eram completamente separados, e era apenas necessrio entender a arquitetura fsica para construir um carro. Pense agora na arquitetura lgica de um carro que tenha elementos como estes:

    LE

    MBRE-SE

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 38 Propulso, que ultrapassa as fronteiras fsicas dos freios, parte eltrica,

    motor e controles

    Gesto da Informao, que inclui toda a informao recebida, armazenada, enviada ou usada no carro

    Entretenimento, que pode ter componentes fsicos em comum com a propulso e a informao

    Segurana, que pode estar vinculada a muitos outros sistemas do carro como freios, gesto da informao e a interface de usurio do motorista

    Ao considerar a arquitetura lgica separadamente e, o ideal, antes da implementao fsica os engenheiros de sistemas podem adotar abordagens melhores e mais elegantes. Uma abordagem das arquiteturas lgica e fsica uma grande forma de administrar a complexidade dos novos produtos inteligentes integrados que no so mais projetados como o carro do seu av.

    Comportamento do sistema de modelagem

    Para entender como um sistema se comporta, preciso entender como os componentes da arquitetura (lgica e fsica) de um sistema interagem. Os modelos de comportamento do sistema captam a informao dinmica do sistema, como as transies de estado, aes que o sistema executa em resposta a eventos especficos, e interaes das peas que colaboram dentro de um sistema. Os modelos tambm captam o fluxo de dados e o controle das atividades, como por exemplo, como os dados de sada do sensor passam para as atividades ocorridas no controlador antitravamento de um carro, ou como o controle passa de uma pea para outra do sistema.

    A Figura 4-3 mostra um diagrama do estado simplificado que descreve os estados operacionais de um carro. Este carro permanece em um dos quatro estados desligado, marcha lenta, acelerando ou freando at que um evento especfico ocorra (por exemplo, frear) que faz com que o carro passe para outro estado.

    possvel mapear as conexes dos modelos de comportamento com os modelos estruturais para aplicar a consistncia atravs de um processo chamado alocao. Por exemplo, alocao da ao detectar perda de trao para o componente detector de trao do modelo estrutural do sistema, e alocao da ao fora do modulador do freio para o componente modulador do freio.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 4: Abstrao do sistema de modelagem 39

    Marcha lenta

    Acelerando Freando

    frear

    acionar o acelerador

    quando a velocidade = 0

    soltar o freio

    Dirigir

    Desligado

    iniciaro motor

    pararo motor

    Figura 4-3: Modelo de comportamento mostrando as transies dos estados operacionais.

    Nos sistemas complexos, preciso muitos modelos de pequenos comportamentos para representar toda a atividade ocorrida. Em muitos casos, uma atividade aciona uma ao em outra parte do sistema, por isso os modelos individuais so interconectados. Ao final da modelagem de toda a atividade, voc tem um modelo grande, complexo, uniforme e consistente do comportamento geral do sistema.

    DICA

    Com o uso da construo e da semntica da modelagem padro, como as fornecidas pela Systems Modeling Language (SysML), possvel usar ferramentas de software comercial para automatizar a execuo dos modelos de comportamento do sistema. As ferramentas podem traduzir automaticamente as construes de modelagem, como os diagramas de transio do estado, em sentenas com cdigo se-ento-executar. Desta forma, possvel simular o comportamento do sistema no software, viabilizando a execuo dos estudos e-se, ver as alternativas do design e realizar anlises de impacto antes da construo do sistema. Os estudos de compensao, que normalmente levam horas ou at dias, podem ser realizados em minutos desta forma.

    Mapeamento dos modelosOs padres da indstria, como a SysML, so a base para o entendimento comum da modelagem de sistemas em todos estes estgios. Os modelos

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 40SysML so um conjunto de diagramas que representam a estrutura, comportamento, requisitos e limites quantitativos de um sistema. Os diagramas SysML vem em quatro tipos diferentes:

    Estrutura: Descreve que elementos arquitetnicos (lgico e fsico), conhecidos como blocos, esto contidos no sistema ou subsistema e como eles se conectam. Por exemplo, um subsistema de freio antitravamento contm um detector de trao e um modulador do freio.

    Comportamento: Descreve o comportamento do sistema ou subsistema, incluindo as transies de estado, sequncias de atividades, funes e interaes. (Por exemplo, detectar perda de trao aciona fora do modulador do freio.)

    Requisitos: Descreve os requisitos especficos do sistema ou do subsistema. (Por exemplo, fornecimento da distncia de parada especfica.)

    Paramtrico: Descreve os limites paramtricos do sistema ou subsistema. (Por exemplo, a equao da fora de frenagem uma equao paramtrica.)

    Explorao dos quatro estgios da modelagem do sistema

    Os sistemas so por natureza estruturas recursivas que consistem em diversos nveis comeando com o sistema geral no mais alto nvel, e so decompostos em subsistemas e, ento, em componentes. A melhor maneira de modelar um sistema completo usar um processo recursos de multietapas comeando de cima composto dos seguintes quatro estgios. Os estgios formam a palavra CURE, pense como a cura da complexidade:

    Contexto: Estabelece os limites do sistema, identifica as pessoas e os sistemas com os quais o sistema interage (tambm conhecidos como atores) e descreve as interfaces (como eles se comunicam com o sistema e o que eles trocam). Juntos, os elementos deste modelo contextual so conhecidos como a empresa significando o sistema e seu ambiente. Use o diagrama do bloco SysML para isso.

    Uso: Descreve todas as maneiras que os atores usam o sistema. Inclui quem ou o que usa o sistema, e quem ou o que o sistema usa. Isto realizado melhor com histrias especficas, passo-a-passo do tipo

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 4: Abstrao do sistema de modelagem 41narrao do uso do sistema, como casos de utilizao, e ilustradas como diagramas de atividade SysML. Ajusta os requisitos do sistema, e os torna especficos e completos (no esquea, os requisitos de origem podem ignorar muita coisa importante). Os mesmos cenrios de utilizao tornam-se a base para os testes posteriores do sistema de acordo com a informao fornecida pela anlise de utilizao.

    Realizao: Define os modelos da estrutura (arquitetura) e comportamento (funo) que, juntos, descrevem como cada utilizao alcanada pelo sistema atravs da colaborao dos elementos da arquitetura do sistema. O comportamento exigido realizado (torna-se realidade) nos elementos do sistema. Isto muito diferente do processo de design tradicional que aloca os requisitos para os componentes fsicos e torce para que funcione com a utilizao real. Aqui, a utilizao definida especificamente e o design do sistema feito de acordo com as utilizaes especficas, e voc sabe que o sistema projetado para atender estes requisitos de utilizao.

    Execuo: Executa os modelos de comportamento para demonstrar que o design atende estes requisitos. Os modelos simples executveis, at mesmo os nveis mais altos de abstrao so uma forma excelente e econmica de descobrir os problemas complicados, m comunicao, ausncia de requisitos ou requisitos ambguos, e outras questes que atrapalham a programao desde o incio. Todos chegam a um acordo antes de qualquer coisa ser construda.

    Inicia no nvel mais alto da decomposio do design do sistema: o nvel do sistema (por exemplo, uma minivan). Aps estabelecer os modelos de contexto e utilizao, os modelos arquitetnicos e de comportamento de alto nvel so definidos de acordo com os requisitos do sistema. Ai ento, os modelos so executados para demonstrar que o sistema faz exatamente o que deveria fazer. Aps concluir o processo do nvel do sistema, o processo repetido no nvel de decomposio seguinte: o nvel do subsistema.

    Continue a examinar os nveis de decomposio, mudando o contexto ao passar para cada nvel do modelo, at alcanar o nvel mais baixo o nvel do componente onde a implementao fsica do design especificada (por exemplo, eletrnicos, software ou design mecnico).

    Em cada nvel, chegue horizontalmente ao V e execute a verificao e validao, usando o modelo como base. Use modelos executveis e outros tipos de simulaes matemticas e de design para realizar a

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Engenharia de Sistemas Para Leigos, IBM Edio Limitada 42maior quantidade possvel de verificaes antes de chegar ao estgio da implementao.

    LE

    MBRE-SE

    O ponto sagrado aqui um modelo completo do sistema um tipo de verso virtual da realidade do sistema real. Isso ainda no possvel, mas com as ferramentas de modelagem cada vez melhores e aprendendo a se interconectar com as disciplinas de engenharia, estamos cada vez mais perto.

    Porque a modelagem est na moda

    Pode parecer que a modelagem da arquitetura e do comportamento de um sistema complexo no vale a pena at lembrarmos como foi difcil o ltimo projeto, quando ningum do time de desenvolvimento assumiu a responsabilidade por ter ignorado um requisito essencial, e a reunio post-mortem fez a Inquisio Espanhola parecer uma festa.

    Com a modelagem possvel captar todos os detalhes cabeludos do design do sistema de maneira organizada, permitindo a visualizao, entendimento e assimilao das complexidades da estrutura e do comportamento do sistema. Ela permite a explorao de opes diferentes de arquitetura e design, a execuo de estudos de compensao, e a avaliao do impacto das mudanas antes do incio da construo do sistema para a reduo dos riscos e dos custos de desenvolvimento do projeto.

    Modelos fornecem um contexto para a discusso das questes do sistema em diversos nveis. possvel usar modelos para explorar diversas vises de um sistema planejamento, requisitos, arquitetura, design, implementao, acionamento, comportamento, entrada de dados, sada de dados e mais para que voc e seus colegas possam analisar as grandes questes to facilmente quanto as pequenas questes do design.

    Com o uso das linguagens e tcnicas de modelagem padro da indstria, como SysML, possvel reduzir a ambiguidade e remover as barreiras da linguagem que possam existir entre os membros de diversos times de desenvolvimento e fornecer uma nica fonte mestre para o status e a documentao do desenvolvimento do projeto. Uma colaborao melhor e mais clara com documentos precisos proporciona maior eficcia, menores ciclos de desenvolvimento e, acima de tudo, maior qualidade.

    Estes materiais so 2012 John Wiley & Sons, Inc. Qualquer disseminao, distribuio ou uso no autorizado estritamente proibido.

  • Captulo 5

    Garantia da qualidade de primeira

    Neste captuloIntegrao da qualidade no processo de desenvolvimento de sistemas

    Iterao dos testes e do design

    Uso de modelos para revelar erros antecipadamente

    A ntigamente a garantia de qualidade era um processo realizado no final do ciclo de desenvolvimento como se a qualidade fosse um recurso tangvel que pudesse ser adicionada ao produto antes da entrega. E quando os defeitos eram descobertos, era preciso um grande trabalho para identificar e resolver a raiz do problema.

    No mundo de hoje onde os produtos inteligentes com softwares cada vez mais complexos, a qualidade passou a ser parte integral do processo de desenvolvimento de sistemas, trazendo a esperana da