Baixe o app para aproveitar ainda mais
Prévia do material em texto
w w w .i n a te l. b r Engenharia de Sistemas Cap. 1 - Engenharia de Sistemas Aula 2/20 Prof. Afonso Celso Soares EC205 – Engenharia de Software I Adaptado do material dos professores Guilherme A. B. Marcondes e Valeska P. P. Marcondes Baseado no livro: Engenharia de Software – Roger S. Pressman – Sexta Edição w w w .i n a te l. b r Engenharia de Sistemas Sistema – O que é? Hardware Software Rede de Comunicação w w w .i n a te l. b r Engenharia de Sistemas O que é? • Engenharia de Software é uma consequência da Engenharia de Sistemas. • Software é um item de um sistema maior. Antes de construí-lo, o sistema deve ser entendido. • A Engenharia de Sistemas tem o foco em vários elementos (e não só em Software) que: – devem ser analisados, projetados e organizados (funcionamento harmônico) e – podem formar um produto, um serviço ou uma tecnologia para a transformação ou controle da informação. w w w .i n a te l. b r Engenharia de Sistemas • Os objetivos devem ser determinados. • Identificação dos papéis: Como obter o entendimento sobre o Sistema ? – Hardware – Software – Pessoas – Base de dados – Procedimentos e – Outros elementos • Os requisitos operacionais devem ser identificados, analisados, especificados, modelados, validados e gerenciados. • Essas atividades formam a base da Engenharia de Sistemas. w w w .i n a te l. b r Engenharia de Sistemas • Deve ser produzida uma representação efetiva do Sistema. • Pode ser – Protótipo – Especificação – Modelo simbólico • Importante: eles devem comunicar as características operacionais, funcionais e comportamentais do Sistema. Qual é o produto de trabalho ? w w w .i n a te l. b r Engenharia de Sistemas • Revise todos os produtos de trabalhos gerados (especificações, protótipos, modelos, etc.). • De preferência junto aos usuários finais, clientes ou outras pessoas envolvidas. • Verifique a clareza, consistência e completude. Como garantir que está certo ? Espere mudanças nos requisitos do sistema e gerencie-as! w w w .i n a te l. b r Engenharia de Sistemas • Você possui uma empresa de buffet • Ela é contactada por um grande cliente que quer oferecer um jantar para várias autoridades e pessoas importantes. • Grande oportunidade de negócios. Nada pode falhar! • O que você faz? Por onde começar? Exemplo Não adianta somente a comida ser boa, o sistema todo deve funcionar bem! w w w .i n a te l. b r Engenharia de Sistemas • Primeiro é preciso obter um bom entendimento sobre o sistema! Exemplo Segundo o dicionário Aurélio, sistema pode ser definido como: 1. Conjunto de elementos, materiais ou ideais, entre os quais se possa encontrar ou definir alguma relação; 2. Disposição das partes ou dos elementos de um todo, coordenados entre si, e que funcionam como estrutura organizada. • Algumas perguntas podem ser feitas: – Quando irá ocorrer (data, horário)? – Que local? Quantas pessoas? – Como será a festa? Música? Bebidas? Iluminação? – Como será o ambiente? Aberto? – Etc, w w w .i n a te l. b r Engenharia de Sistemas w w w .i n a te l. b r Engenharia de Sistemas • Depois que o “todo” foi entendido, é necessário determinar a fronteira (escopo) de ação do serviço (fornecedora do jantar). • A partir daí é possível gerar uma especificação e representação para serem apresentadas ao cliente! Exemplo w w w .i n a te l. b r Engenharia de Sistemas • “Um conjunto ou arranjo de elementos que são organizados para realizar um objetivo pré-definido por meio do processamento de informações”1 . • O objetivo pode ser suportar algumas funções de negócio ou desenvolver um produto. • Para atingir o objetivo, os sistemas baseados em computador utilizam vários elementos que podem ser combinados de várias formas para transformar a informação. Sistemas baseados em Computador 1 - Webster’s definition w w w .i n a te l. b r Engenharia de Sistemas • Software: – Programas de computador, estrutura de dados e documentação relacionada. • Hardware: – Dispositivos eletrônicos que possuem capacidade computacional, que permitem o fluxo de dados e dispositivos eletro-eletrônicos (dispositivos de telecomunicações, switches de rede, sensores, etc.). • Pessoas: – Usuários, operadores de hardware e software e cliente. Elementos de um Sistema baseado em Computador w w w .i n a te l. b r Engenharia de Sistemas • Base de Dados: – Uma grande e organizada coleção de informação que é acessada via software. • Documentação: – Informação descritiva do uso e/ou operação do sistema (manual do usuário, ajuda on-line, Web sites, etc.). • Procedimentos: – Os passos que definem o uso específico de cada elemento do sistema ou o contexto no qual o sistema reside. Elementos de um Sistema baseado em Computador w w w .i n a te l. b r Engenharia de Sistemas 1. Geralmente inicia-se com uma “Visão de Mundo”, ou seja, o domínio inteiro, do negócio ou produto, é examinado para garantir que um contexto adequado possa ser estabelecido. 2. A “Visão do Mundo” é refinada para enfocar um domínio de interesse (Visão de domínio). 3. Dentro do domínio específico, são analisadas as necessidades quanto aos elementos de software, hardware, pessoas, dados, etc. (Visão de elemento). 4. Finalmente a análise, projeto e construção dos elementos é iniciada (Visão detalhada). Hierarquia da Engenharia de Sistemas w w w .i n a te l. b r Engenharia de Sistemas Hierarquia da Engenharia de Sistemas F o n te : E n g e n h a ri a d e S o ft w a re – R o g e r S . P re s s m a n – 6 a E d iç ã o World view Business or Product Domain Domain of interest Domain view System element Element view Detailed view w w w .i n a te l. b r Engenharia de Sistemas Engenharia de Sistemas é um processo de modelagem. Se o foco está na “Visão de mundo” ou na “Visão detalhada”os engenheiros devem criar modelos que: • Definem o processo que cumpre as necessidades da visão em questão. • Representem o comportamento do processo e as suposições no qual o comportamento é baseado. • Deixem de forma explícita as entradas e saídas e os relacionamentos dos itens no modelo. Modelagem de Sistemas w w w .i n a te l. b r Engenharia de Sistemas Fatores a serem considerados na modelagem Pressupostos Limitações Simplificações Restrições Preferências w w w .i n a te l. b r Engenharia de Sistemas Fatores a serem considerados na modelagem Pressupostos Limitações Simplificações Restrições Preferências Exemplo: A especificação de um robô w w w .i n a te l. b r Engenharia de Sistemas Fatores a serem considerados na modelagem Pressupostos Limitações Simplificações Restrições Preferências • Reduzem a quantidade de variações. • Permitem que o modelo reflita o problema de forma clara. O robô deverá fazer movimentos com os braços para cima e parabaixo. w w w .i n a te l. b r Engenharia de Sistemas Fatores a serem considerados na modelagem Pressupostos Limitações Simplificações Restrições Preferências • Permitem que o modelo seja criado em prazo oportuno. O robô terá precisão de 5 cm em seus deslocamentos. w w w .i n a te l. b r Engenharia de Sistemas Fatores a serem considerados na modelagem Pressupostos Limitações Restrições Preferências Simplificações • Ajudam a delimitar a fronteira do sistema. O robô somente andará em solo liso, sem ondulações. w w w .i n a te l. b r Engenharia de Sistemas Fatores a serem considerados na modelagem Pressupostos Preferências Simplificações Limitações Restrições • Guiam a maneira pela qual o modelo será criado. • Definem abordagem adotada quando o modelo é implementado. O robô ficará sujeito às restrições impostas pelo processador definido, que são ..... w w w .i n a te l. b r Engenharia de Sistemas Fatores a serem considerados na modelagem Pressupostos Simplificações Limitações Restrições Preferências • Indicam arquitetura preferida para: • Dados • Funções e • Tecnologia O robô deverá usar sistema operacional Linux (embarcado). w w w .i n a te l. b r Engenharia de Sistemas • Muitos sistemas baseados em computador interagem com o mundo real de uma forma reativa: os eventos do mundo real são monitorados e o sistema reage controlando máquinas, processos e pessoas. • Até recentemente era difícil prever o desempenho, eficiência e comportamento de tais sistemas antes de construí-los. • Muitos sistemas da categoria reativa controlam máquinas e /ou processos (ex, aviões comerciais, refinarias de petróleo) que devem ser operados com extremo grau de confiabilidade. Se o sistema falha, significa perda econômica e humana! Simulação de Sistemas w w w .i n a te l. b r Engenharia de Sistemas • Atualmente, ferramentas de software para Modelagem e Simulação de Sistemas estão sendo usadas para eliminar surpresas quando esses sistemas estão sendo construídos. • Tais ferramentas são utilizadas durante o processo de engenharia de sistemas, enquanto os papéis dos elementos (hardware, software, pessoas, etc) estão sendo especificados. • Ferramentas de Modelagem e Simulação permitem que seja feito o “test drive” da especificação do sistema. Simulação de Sistemas w w w .i n a te l. b r Engenharia de Sistemas Simulação de Sistemas Se a capacidade de Simulação de um sistema reativo não for disponível, os riscos do projeto aumentam! Considere utilizar um modelo de processo iterativo, que permitirá a observação de itens como desempenho, já na primeira release entregue! w w w .i n a te l. b r Engenharia de Sistemas • Todo sistema pode ser modelado. • Eles podem ser modelados em diferentes níveis de abstração (visão de mundo, visão de domínio, visão de elemento). • À medida que se “desce” nestes níveis os detalhes dos componentes são modelados. • Técnicas de modelagem: – UML (Unified Modeling Language) Modelagem w w w .i n a te l. b r Engenharia de Sistemas • Sistemas de alta tecnologia incorporam elementos de software, hardware, pessoas, documentação e procedimentos; • A Engenharia de Sistemas ajuda a transformar as necessidades do cliente em um modelo de sistema que fará uso de um ou mais desses elementos; • A Engenharia de Sistemas inicia-se com uma “Visão de Mundo”, que é refinada para uma “Visão de domínio” do problema. Depois é analisado cada elemento dentro do domínio e finalmente cada elemento é detalhado. Conclusão w w w .i n a te l. b r Engenharia de Sistemas Cap. 1 - Engenharia de Sistemas Adaptado do material dos professores Guilherme A. B. Marcondes e Valeska P. P. Marcondes Baseado no livro: Engenharia de Software – Roger S. Pressman – Sexta Edição Prof. Afonso Celso Soares EC205 – Engenharia de Software I
Compartilhar