• Nenhum resultado encontrado

Engenharia de Sistemas Computacionais

N/A
N/A
Protected

Academic year: 2021

Share "Engenharia de Sistemas Computacionais"

Copied!
8
0
0

Texto

(1)

UNIVERSIDADE FEDERAL DE ALAGOAS Curso de Ciência da Computação Engenharia de Software I Prof. Rômulo Nunes de Oliveira

Engenharia de Sistemas

Computacionais

Detalhes no planejamento

Detalhes no planejamento

Introdução

Introdução

Na aplicação de um sistema

computacional, o software é apenas um

elemento do todo

Além do software, devemos também

considerar:

„

Hardware

„

Usuários

„

Documentação (manuais, formulários etc)

„

Regras e procedimentos adotados

Engenharia de Sistemas

Engenharia de Sistemas

Computacionais

Computacionais

A Engenharia de Sistemas Computacionais

corresponde ao conjunto de atividades que

deverão ser realizadas para definir sistema

computacional.

„ Especificação „ Projeto „ Implementação „ Validação „ Instalação „ Manutenção

O que é um Sistema

O que é um Sistema

Computacional?

Computacional?

Conjunto de elementos inter-relacionados

que operam juntos para o alcance de

algum objetivo.

Exemplo: Um sistema de processamento

de texto

„

Integra funções de entrada e edição de texto

com funções de produção de documentos

(software e hardware)

(2)

O que é um Sistema

O que é um Sistema

Computacional?

Computacional?

Assim, os elementos de um sistema

computacional são:

„ Software: Os programas de computador, estruturas

de dados e documentação.

„ Hardware: Dispositivos que definem as capacidades

de um computador. Inclui também os dispositivos eletromecânicos (robôs, máquinas mecânicas de produção etc)

„ Pessoal: Usuários operadores do hardware e do

software

O que é um Sistema

O que é um Sistema

Computacional?

Computacional?

Assim, os elementos de um sistema

computacional são:

(...cont)

„ Banco de Dados: Coleção de informações

organizadas de forma sistemática, acessada através de software.

„ Documentação: Manuais formulários e outros

documentos que podem auxiliar no conhecimento do uso e operação do sistema

„ Procedimentos: Regras que especificam o uso

específico de cada elemento do sistema computacional

Sistemas e Subsistemas

Sistemas e Subsistemas

Os elementos de um determinado sistema

podem operar de forma autônoma, são os

subsistemas ou macroelementos.

Exemplos:

„ Uma câmera de vídeo é um sistema independente.

Porém, num sistema de segurança, ela e sua configuração fazem parte do sistema geral.

„ Robôs em processos de produção. São sistemas

fechados independentes, mas operam num sistema mais abrangente.

A Aquisição de Sistemas

A Aquisição de Sistemas

No desenvolvimento de sistemas,

principalmente daqueles mais complexos, é

comum adquirir determinados componentes:

„ Desenvolver tudo normalmente custa mais

„ Integrar partes nem sempre é fácil. É necessário que

exista uma especificação prévia.

„ O projeto de arquitetura do sistema ajuda a definir

quais os subsistemas que serão adquiridos e quais serão desenvolvidos.

(3)

A Aquisição de Sistemas

A Aquisição de Sistemas

Em Sistemas Computacionais é comum a

utilização de componentes customizados

(construídos sob medida) e componentes de

“prateleira”.

„ O software desenvolvido normalmente é o elo de

ligação e adequação entre os componentes.

„ A utilização de componentes free na elaboração de

softwares, também segue a mesma idéia.

Contratante (Usuário) Desenvolvedor Desenvolvedor subcontratado 1 Desenvolvedor subcontratado n

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Precisaremos Especificar softwares... Mas o

que é isso?

Estabelecer da forma mais precisa possível as funções a serem realizadas

Alocar os diferentes componentes de um sistema de computação, como responsável por cada função a ser realizada (solução para implementações)

Deve-se considerar:

„ Realizabilidade „ Desempenho

„ Padronização de interfaces „ Portabilidade

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Definição dos Requisitos

„ Vimos que nesta etapa devemos trabalhar na

identificação dos requisitos do Sistema Computacional a ser concebido.

„ A forma usual de encaminhar esta etapa é

caracterizada por um conjunto de reuniões estabelecidas entre:

Equipe de desenvolvimento do sistema Clientes ou usuários

Em alguns casos, é necessário investigar o processo de trabalho de funcionários.

„ Pode-se considerar basicamente três categorias de

requisitos: os básicos, as propriedades do sistema e

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Definição dos Requisitos

„ Requisitos básicos:

Funções a serem desempenhadas pelo sistema; Não é necessário muito detalhamento nesta etapa (os detalhes vêm depois).

„ Propriedades do sistema

Questões relacionadas ao desempenho, segurança, disponibilidade etc;

„ Características indesejáveis

Propriedades que o sistema não deve possuir. São definições importantes para satisfação do cliente.

(4)

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

O projeto do sistema

„

Particionamento dos Requisitos

Agrupar os requisitos usando algum critério lógico

„

Identificação dos Subsistemas

Busca por subsistemas que irão compor o Sistema Computacional

O entendimento e parcicionamento dos requisitos são importante nessa definição

„

Alocação dos Requisitos

Alocação ou implantação dos requisitos aos subsistemas estabelecidos.

Engenharia de Sistemas

Engenharia de Sistemas

Computacionais

Computacionais

O projeto do sistema

„ Definição das interfaces dos Subsistemas

É necessário que seja de forma precisa

Atenção para o caso da padronização, especialmente quando desenvolvidos por diferentes equipes/empresas.

Particionamento dos Requisitos Identificação dos Subsistemas Alocação de Requisitos Especificação das Funcionalidades Definição das Interfaces

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Desenvolvimento dos Subsistemas

Cada subsistema terá suas funções bem definidas e suas especificidades quanto as competências necessárias ao seu

desenvolvimento

No caso de um subsistema de software, um processo de desenvolvimento será iniciado. De certa forma, o desenvolvimento de

subsistemas está relacionado a uma seleção de componentes de hardware (Engenharia de Hardware)

Definição de desempenho e funcionalidade de software. (Engenharia de Software)

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Desenvolvimento dos Subsistemas

Como já discutimos em aula anterior, a Engenharia de Software envolve as fases:

„ Definição;

„ Desenvolvimento do Software; „ Verificação, Entrega e Manutenção.

Em alguns casos é interessante que os diferentes subsistemas seja desenvolvidos em paralelo. Nos envolvimento de subsistemas de hardware, é interessante manter o desenvolvimento paralelo ou antecipado, para evitar incompatibilidades.

(5)

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Integração do Sistema

Conjunto de atividades para a conexão dos diferentes subsistemas.

Um problema comum encontrado é nesta etapa é o mal funcionamento de um subsistema como conseqüência de uma definição imprecisa As duas estratégias para integração são:

„ Conexão em um único passo (big-bang), onde tudo é integrado em um único passo

„ Na Integração incremental as partes do sistema são integradas aos poucos (facilita a identificação de erros)

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Instalação do Sistema

Problemas típicos nesta etapa:

„

O ambiente para o qual o sistema foi

concebido não é precisamente o mesmo que

foi especificado no início do projeto

(problema comum quando se usa certas

facilidades do SO no projeto, e mude-se de

SO)

„

Resistência dos usuários à implantação do

novo sistema (procurar dialogar, treinar,

acompanhar)

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Instalação do Sistema

Problemas típicos nesta etapa:

(...cont.)

„

Necessidade de coexistência entre um

sistema antigo e o novo sistema.

Principalmente, quando ambos os sistemas

compartilham algum recurso.

„

Obstáculos físicos à instalação do sistema:

Ausência de pontos de energia devidamente aterrados

Falta de pontos de rede (instalados corretamente) Falta de ar-condicionado etc

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Ativação do Sistema

Processo de iniciar o sistema, incluindo toda

informação primária necessária para seu

funcionamento.

Alguns erros podem ocorrer:

É importante testar tudo e verificar incompatibilidades;

Atenção para os procedimentos dos novos usuários.

(6)

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Evolução do Sistema

Por mais que um sistema tenha sido bem

projetado, eventualmente necessitará de

evoluções

Atenção para os possíveis erros trazidos nessa evolução

Uma evolução normalmente é um processo que envolve análise detalhada do sistema atual Associado à evolução, estão também as atualizações provenientes de ajustes no sistema

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Desativação do Sistema

„

Retirar o sistema de operação, quando seu

tempo previsto se esgota, sem comprometer

uma futura reativação.

„

A desativação deve ser rigorosa,

principalmente se o sistema envolver

componentes que prejudicam o meio

ambiente.

„

A desativação normalmente também está

associada a um “processo final” de backup

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Projeto Arquitetural do Sistema

„

Normalmente envolve a elaboração de um

diagrama mostrando o fluxo e

relacionamentos entre os subsistemas

„

As caixinhas indicam os subsistemas e as

setas indicam o fluxo de dados

„

Nem sempre é interessante definir se um

subsistema é um hardware ou software, ou

híbrido.

Projeto Arquitetural do Sistema (exemplo)

Sistema de Radar Sistema de Rádio Sistema de Comunicação de Dados Comunicação da Aeronave Sistema de Telefonia Processador de Posição Backup de Posição Sistema de Simulação da Aeronave Sistema de Mapa Meteorológico Sistema de Contagem Sistema de Informações do Controle Base de Dados de Vôo Processador de Comunicação Backup de Comunicação Terminais de Controle Sistema de Registro de Atividades

(7)

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Projeto Arquitetural do Sistema

„

Durante a definição dos subsistemas,

diferentes categorias de componentes

podem ser identificadas.

Sensores: Elementos capazes de coletar informações a respeito do ambiente, onde o sistema está instalado.

Ex.: radares do sistema de tráfego aéreo, sensores de posicionamento de papel numa impressora

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Atuadores:Componentes que têm por função realizar ações no sistema ou em seu ambiente. Ex.: Válvular para abertura ou fechamento de fluxo

hidráulico, flaps das asas do avião, mecanismo de alimentação de papel numa impressora Componentes computacionais: São elementos capazes de exercer algum processamento de uma dada informação de entrada para gerar um conjunto de informações de saída.

Ex.: processadores gráficos, processadores aritméticos, algoritmos de controle etc

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Componentes de comunicação: Componentes que irão viabilizar a comunicação entre partes de um sistema ou entre o sistema e seu ambiente. Ex.: Placas Tthernet, porta serial, modem

Componentes de coordenação: São componente que executam funções de coordenação do sistema.

Ex.: Um algoritmo de escalonamento em um sistema tempo-real, o controle da sincronia das atividades numa esteira de manufatura

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais

Componentes de interface: Componentes capazes de adaptar uma dorma de representação de informação na forma de representação utilizada pelo componente que vai processá-la. Ex.: Placa de vídeo, conversos analógico-digital

(8)

Engenharia de Sistemas

Engenharia de Sistemas

Computacionais

Computacionais

Exemplo: classificação num sistema de segurança doméstica

Gerar mensagem de localização Sintetizador de voz Interface Coordenar os demais componentes Controlador do alarme Coordenação Realizar chamada a um sistema externo Ativador de chamada telefônica Comunicação

Gerar um sinal de alarme Sirene Atuador Detectar intrusão Sensor de movimento e da porta Sensor Função Componente Classe

Engenharia de Sistemas

Engenharia de Sistemas

Computacionais

Computacionais

Exemplo: classificação num sistema de segurança doméstica

Sensores de Movimento Sensores das Portas Sirene Ativador de chamada Sintetizador de voz Controlador do alarme para um sistema telefônico externo

Referências

Documentos relacionados

A etapa 1, de revisão, busca o reconhecimento de elementos e estruturas já estabelecidas; a etapa 2, promove a seleção de obras de arquitetura que permitam

A produção dos materiais está dirigida especificamente para disciplinas de projeto e para disciplinas de representação gráfica, que se reestruturam na perspectiva

1 Estruturar o perfil das organizações convencionais através de critérios e indicadores bem definidos, listando aqueles que as caracterizam; 2 Avaliar como as organizações

Profª. Adrielle Ledra Semana 23.. 3- Escreva as sentenças abaixo por extenso. Na sua estante, há 184 livros de história. Sua mãe colocou mais 53 livros.. 2- Marque um X

et al., (2012), nos estudos realizados sobre o PCK, são propostas algumas estratégias para reconhecê-lo, como entrevistas, observações de aulas, análise de planejamentos de ensino

6° - Os conflitos decorrentes de contagem de tempo de serviço do professor, para fins de aposentadoria e, conseqüentemente, para obtenção do benefício

Os processos adotados podem ser resumidos em: • Avaliação de riscos e controles; • Documentação e armazenamento da base de perdas; • Gestão de continuidade de negócios;

ITEM SINAPI DESCRIÇÃO UN QTDE Pr... ITEM SINAPI DESCRIÇÃO UN QTDE