Buscar

Portifólio II 2018 Oficina Mecanica

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 32 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 32 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 32 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

UNOPAR VIRTUAL
Produção Textual Interdisciplinar Individual – 
Cursos Superiores de Tecnologia
OFICINA MECÂNICA – CHAVE DE RODAS
Polo de Betim
 2018
UNOPAR VIRTUAL
Produção Textual Interdisciplinar Individual – 
Cursos Superiores de Tecnologia
OFICINA MECÂNICA – CHAVE DE RODAS
 Nome: Amarildo Miguel de Souza 
 Curso: Análise e Desenvolvimento de Sistemas 
 Orientadores: Anderson Macedo, Merris Mozer; e Roberto Yukio Nishimura
 Semestre: Segundo
Polo de Betim 
2018
RESUMO
	Este trabalho apresenta um sistema para uma oficina mecânica, onde cliente possa agendar serviços automotivos especializados em motor, freio e Suspensão. Nesta oficina também possui serviços elétricos, porém não atendemos serviços de pintura em geral. Os colaboradores da oficina mecânica foram divididos de acordo com especialidade de cada um, com objetivo de melhor atender as necessidades dos nossos clientes. O cliente terá direito a um desconto no pagamento de acordo com valor final dos serviços, ou se preferi poderá parcelar em até 3 vezes no cartão. A oficina mecânica deve ter um ambiente de trabalho limpo, organizado e seguro e seus colaboradores devem se engajar sempre na transparência e eficiência do processo, na qualidade dos serviços e no atendimento.
Palavras Chaves – sistema, cliente, automotivo, pagamento, colaboradores, ambiente, serviços, atendimento.
ABSTRACT
	This work presents a system for a mechanic workshop, where a customer can schedule automotive services specialized in motor, brake and suspension. In this workshop also has electrical services, but we do not service painting services in general. The employees of the machine shop were divided according to the specialty of each one, aiming to better meet the needs of our clients. The customer will be entitled to a discount on the payment according to the end value of the services, or if you prefer, you can pay up to 3 times on the card. The mechanic’s shop must have a clean, organized and safe work environment and its employees must always be involved in the transparency and efficiency of the process, the quality of the services and the service.
Keywords – systems, customer, automotive, payment, employees, environment, services, service.
SUMÁRIO
1. INTRODUÇÃO....................................................................................................................06
1.1. OBJETIVOS......................................................................................................................07
1.2. PÚBLICO ALVO..............................................................................................................07
2. METODOLOGIAS DE ANÁLISE DE SISTEMAS.............................................................07
3. O QUE É UML?....................................................................................................................07
3.1. DIAGRAMA DE CASO DE USO......................................................................................08
3.2 DIAGRAMA DE CLASSE.................................................................................................13
4. BANCO DE DADOS............................................................................................................14
4.1. MODELO CONCEITUAL ................................................................................................15
4.2. MODELO LÓGICO...........................................................................................................16
4.3. ESQUEM FÍSICO..............................................................................................................17
5. ESTRUTURA DE DADOS PILHA......................................................................................21
6. ORGANIZAÇÃO DE COMPUTADORES..........................................................................25
6.1. ESPECIFICAÇÕES TÉCNICA PARA COMPRA DE COMPUTADORES.....................27
7. CONCLUSÃO ......................................................................................................................29
REFERÊNCIAS .......................................................................................................................30
1. INTRODUÇÃO
	Este trabalho apresenta as etapas de elaboração de um plano de negócio para criação de um sistema que será aplicado em uma oficina mecânica que irá oferecer serviços de reparo em automóveis. Quando o proprietário de um veículo busca pelo reparo de seu automóvel, busca não só pela rapidez, mais também pela segurança e confiabilidade dos serviços prestados.
	Dentro deste quadro; podemos observar diante desta incrível necessidade de nossos clientes de que eventuais problemas sejam reparados da maneira mais rápida possível. Observando exatamente essa insegurança por parte de nossos clientes, nosso sistema conta com uma ferramenta de agendamento dos serviços, que faz com que nossos clientes já saibam de antemão que horas o seu carro ficará pronto.
	Partindo então do que foi descrito acima, decidiu-se criar um sistema que fosse instalado nos PCs da oficina mecânica “chave de rodas”, este sistema irá fazer todo gerenciamento da empresa, como cadastros diversos, além da inclusão e finalização dos serviços prestados. Nosso sistema irá utilizar uma linguagem C# e o banco de dados Oracle, foram utilizados conceitos de UML (Linguagem de Modelagem Unificada), que proporcionou que o sistema e o banco de dados fossem respectivamente abstraídos e modelados a partir da essência da documentação do sistema através de diagramas.
	
	
	
.
	
1.1. OBJETIVOS
	O presente trabalho tem como objetivo principal transcrever todo o procedimento necessário para criação de um software e pôr em pratica o conhecimento adquirido no curso de Analise e Desenvolvimento de Sistemas da Universidade do Norte do Paraná (UNOPAR). Este sistema vai gerar facilidade na administração das informações da empresa. Permitindo o aceso fácil cadastros e consultas de informações armazenadas. 
	No final do projeto pretende-se que a oficina “chave de rodas” seja capaz de proporcionar aos seus clientes diversos serviços com qualidade e eficiência aumentadas, mas idealmente acompanhados por uma redução dos custos envolvidos.
1.2. PUBLICO ALVO
	O sistema proposto neste trabalho, visa atender as pequenas empresas da área de reparo automotivo, pois contém módulos específicos para controle de serviços e reparo automotivos.
2. METODOLOGIAS DE ANÁLISE DE SISTEMAS
	
Para a fase de análise, foi utilizada à linguagem UML, uma forma que que representa de forma visual as funcionalidades do sistema, utilizando diagramas de modelagem UML. Para desenvolvimento dos diagramas será utilizada a ferramenta Astah UML, um editor UML leve e compacto. Para criação do MER, foi utilizada o brmodelo ferramenta freeware voltada para ensino de modelagem de banco de dados relacional. Já para criação da Estrutura de Dados “pilha”, foi utilizado a ferramenta Visual Studio 2017 que é um ambiente de desenvolvimento integrado (IDE) da Microsoft para desenvolvimento de softwares especialmente dedicado ao .NET Framework e às linguagem especialmente o C#.
	
3. O QUE É UML?
	UML é um acrônimo para a expressão Unified Modeling Language. Pela definição de seu nome, vemos que a UML é uma linguagem que define uma série de artefatos que nos ajuda na tarefa de modelar e documentar os sistemas orientados a objetos que desenvolvemos. Ela possui nove tipos de diagramas que são usados para documentar e modelar diversos aspectos dos sistemas. A maioria dos problemas encontrados em sistemas orientados a objetos tem sua origem na construção do modelo, no desenho do sistema. 
Muitas vezes as empresas e profissionais não dãomuita ênfase à essa fase do projeto, e acabam cometendo diversos erros de análise e modelagem. Isso quando há modelagem, pois, nós profissionais da área sabemos que muitas vezes o projeto começa já na fase de codificação.
 
3.1 DIAGRAMA DE CASO DE USO
	Esse diagrama documenta o que o sistema faz do ponto de vista do usuário. Em outras palavras, ele descreve as principais funcionalidades do sistema e a interação dessas funcionalidades com os usuários do mesmo sistema. Nesse diagrama não nos aprofundamos em detalhes técnicos que dizem como o sistema faz.
Este artefato é comumente derivado da especificação de requisitos, que por sua vez não faz parte da UML. Pode ser utilizado também para criar o documento de requisitos.
Diagramas de Casos de Uso são compostos basicamente por quatro partes:
Cenário: Sequência de eventos que acontecem quando um usuário interage com o sistema.
Ator: Usuário do sistema, ou melhor, um tipo de usuário.
Use Case: É uma tarefa ou uma funcionalidade realizada pelo ator (usuário)
Comunicação: é o que liga um ator com um caso de uso
Cadastrar Clientes – CRUD
Ator Primário: Recepcionista.
Pré – condição: A recepção estar logada no sistema.
Sumário: A recepção pode cadastrar novos clientes no sistema.
Fluxo Principal:
	1 – A recepcionista solicita dados do cliente.
 2 – A recepcionista acessa a opção “Cadastrar Clientes”
 3 – A recepcionista efetua o cadastro do cliente que será composto dos seguintes dados:
		3.1 Nome completo;
 3.2 CPF; 
 3.3 Endereço; 
 3.4 E-mail;
 3.5 Telefone;
 
 4 – O caso de uso se encerra.
Cadastrar Veículos– CRUD
Ator Primário: Recepcionista.
Pré – condição: A recepcionista estar logada no sistema.
Sumário: A recepção pode cadastrar novos veículos no sistema.
Fluxo Principal:
	1 – A recepcionista solicita dados do veículo.
 2 – A recepcionista acessa a opção “Cadastrar Veículos”
 3 – A recepcionista efetua o cadastro do veículo que será composto dos seguintes dados:
		3.1 Placa do veículo;
 3.2 Modelo; 
 3.3 Fabricante; 
 3.4 Cor;
 3.5 Ano de fabricação;
 4 – O caso de uso se encerra.
Agendar Serviços – CRUD
Ator Primário: Recepcionista.
Pré – condição: A recepção estar logada no sistema.
Sumário: A recepção pode agendar novos serviços no sistema.
Fluxo Principal:
	1 – A recepcionista solicita dados para agenda.
 2 – A recepcionista acessa a opção “Agendar Serviços”
 3 – A recepcionista efetua agenda dos serviços que será composto dos seguintes dados:
		3.1 Dia;
 3.2 Mês; 
 3.3 Ano; 
 3.4 Hora inicial;
 3.5 Hora final;
 4 – O caso de uso se encerra.
Cadastrar Ordem de Serviço – CRUD
Ator Primário: Recepcionista.
Pré – condição: A agendamento já ter sido feito pelo cliente.
Sumário: Este caso se inicia quando o cliente autoriza o serviço.
Fluxo Principal:
	1 – O caso de uso inicia-se quando o cliente faz o agendamento.
 2 – O sistema solicita ao usuário o CPF do cliente para que possa ser resgatado todos os dados do cliente e do agendamento.
 3 – Todas as informações cadastradas são exibidas na tela.
 4 – Sistema solicita a confirmação de criação de O.S.
 5 – A recepcionista confirma cadastro realizado e a criação da O.S.
 6 – O caso de uso se encerra.
Concluir Ordem de Serviço – CRUD
Ator Primário: Gerente.
Pré – condição: A O.S tem que está cadastrada no sistema.
Sumário: O caso de uso tem início quando o cliente chega à oficina para buscar o veículo e realizar o pagamento.
Fluxo Principal:
	1 – O gerente fornece a sua identificação e entra no sistema.
 2 – O gerente acessará a opção “ordem de serviço” e pesquisará pela O.S.
 3 – O gerente irá alterar o status colocando como concluída.
 4 – O caso de uso se encerra.
Registrar Pagamento – CRUD
Ator Primário: Gerente.
Pré – condição: A ordem de serviço deve estar com status “concluído”.
Sumário: O caso de uso tem início a ordem de serviço for concluída.
Fluxo Principal:
	1 – O gerente fornece a sua identificação e entra no sistema.
 2 – Ao entrar no sistema, o gerente acessa à área registrar pagamento.
 3 – O sistema informa as opções de consulta ao valor a ser pago da seguinte forma:
		3.1 Consultar valor por CPF;
 3.2 Consultar valor por placa do veículo; 
 3.3 Consultar valor por OS; 
 4 – O gerente seleciona a opção desejada.
 5 – O sistema solicita a entrada de dados de acordo com opção desejada.
 6 – O sistema exibe o valor de acordo com a consulta.
 7 – O gerente acessa a opção desconto em pagamento.
 8 – O gerente acessa a opção parcelar pagamento.
 9 – O gerente acessa a opção confirmar pagamento.
 10 – O sistema emite a nota fiscal referente ao serviço.
 11 – O caso de uso se encerra.
Remover Clientes – CRUD
Ator Primário: Gerente.
Pré – condição: O cliente deve possuir um cadastro no sistema.
Sumário: Caso algum cliente esteja inativo, o gerente poderá remover o seu cadastro no sistema.
Fluxo Principal:
	1 – O gerente vai na opção “Excluir Cliente”.
 2 – O gerente faz a exclusão do cliente.
 3 – O caso de uso se encerra.
Remover Ordem de Serviço – CRUD
Ator Primário: Gerente.
Pré – condição: A ordem de serviço deve existir no sistema.
Sumário: Este caso se inicia quando o gerente deseja remover uma ordem de serviço (O.S) do sistema.
Fluxo Principal:
	1 – O gerente acessará a opção “remover ordem de serviço”.
 2 – O número da ordem será inserido no sistema para a pesquisa.
 3 – O pedido de confirmação é apresentado.
 4 – O caso de uso se encerra.
Remover Veículo – CRUD
Ator Primário: Gerente.
Pré – condição: O veículo deve possuir um cadastro no sistema.
Sumário: Caso algum veículo esteja inativo, o gerente poderá remover o seu cadastro no sistema.
Fluxo Principal:
	1 – O gerente vai na opção “Excluir Veículo”.
 2 – O gerente faz a exclusão do veículo.
 3 – O caso de uso se encerra.
Realizar orçamento Manutenção – CRUD
Ator Primário: Mecânico.
Pré – condição: O agendamento do serviço deve está cadastrado no sistema no sistema.
Sumário: Caso de uso tem início quando recepcionista agenda o serviço.
Fluxo Principal:
	1 – O mecânico loga no sistema.
 2 – O mecânico realiza orçamento.
 3 – O mecânico insere no sistema o serviço a ser realizado e o valor da hora trabalhada.
 4 – O caso de uso se encerra.
Realizar orçamento Elétrico – CRUD
Ator Primário: Eletricista.
Pré – condição: O agendamento do serviço deve está cadastrado no sistema no sistema.
Sumário: Caso de uso tem início quando recepcionista agenda o serviço.
Fluxo Principal:
	1 – O eletricista loga no sistema.
 2 – O eletricista realiza orçamento.
 3 – O eletricista insere no sistema o serviço a ser realizado e o valor da hora trabalhada.
 4 – O caso de uso se encerra.
Controlar Acesso – CRUD
Ator Primário: Gerente.
Pré – condição: Os funcionários devem loga no sistema.
Sumário: O caso de uso se inicia quando todo a recepcionista, o mecânico e o eletricista logam no sistema.
Fluxo Principal:
	1 – O gerente fornece a sua identificação e entra no sistema.
 2 – Ao entrar no sistema, gerente herda todas permissões dos funcionários.
 3 – O caso de uso se encerra.
Figura 1 – Diagrama do caso de uso da oficina “chave de rodas”
3.2 DIAGRAMA DE CLASSE
	Em programação, umdiagrama de classes é uma representação da estrutura e relações das classes que servem de modelo para objetos. Podemos afirmar de maneira mais simples que seria um conjunto de objetos com as mesmas características, assim saberemos identificar objetos e agrupá-los, de forma a encontrar suas respectivas classes. Na Uniffied Modeling Languagem (UML) em diagrama de classe, uma classe é representada por um retângulo com três divisões, são elas: O nome da classe, seus atributos e por fim seus métodos.
Figura 02: Diagrama de Classes da oficina “chave de rodas”.
4. BANCO DE DADOS
	Segundo Korth, um banco de dados “é uma coleção de dados inter-relacionados, representando informações sobre um domínio específico”, ou seja, sempre que for possível agrupar informações que se relacionam e tratam de um mesmo assunto, posso dizer que tenho um banco de dados. Podemos exemplificar situações clássicas como uma lista telefônica, um catálogo de CDs ou um sistema de controle de RH de uma empresa.
	Já um sistema de gerenciamento de banco de dados (SGBD) é um software que possui recursos capazes de manipular as informações do banco de dados e interagir com o usuário. Exemplos de SGBDs são: Oracle, SQL Server, DB2, PostgreSQL, MySQL, o próprio Access ou Paradox, entre outros. Por último, temos que conceituar um sistema de banco de dados como o conjunto de quatro componentes básicos: dados, hardware, software e usuários. Date conceituou que “sistema de bancos de dados pode ser considerado como uma sala de arquivos eletrônica”. A figura 03 ilustra os componentes de um sistema de banco de dados.
Figura 03: Componentes de um sistema de banco de dados
4.1 MODELO CONCEITUAL
	É a descrição do BD de maneira independente ao SGBD, ou seja, define quais os dados que aparecerão no BD, mas sem se importar com a implementação que se dará ao BD. Desta forma, há uma abstração em nível de SGBD. Uma das técnicas mais utilizadas dentre os profissionais da área é a abordagem entidade-relacionamento (ER), onde o modelo é representado graficamente através do diagrama entidade-relacionamento (DER).
Figura 04: Modelo Conceitual da Oficina “Chave de Rodas”.
4.2 MODELO LÓGICO
	Descreve o BD no nível do SGBD, ou seja, depende do tipo particular de SGBD que será usado. Não podemos confundir com o Software que será usado. O tipo de SGBD que o modelo lógico trata é se o mesmo é relacional, orientado a objetos, hierárquico, etc. Abordaremos o SGBD relacional, por serem os mais difundidos. Nele, os dados são organizados em tabelas.
Figura 05: Esquema Logico da Oficina “Chave de Rodas”
4.3 ESQUEMA FÍSICO
	Inclui a analise das características e recursos necessários para armazenamento e manipulação das estruturas de dados (estrutura de armazenamento, endereçamento, acesso e alocação física), sendo uma sequência de comandos executados em SQL a fim de criar as tabelas, estruturas e ligações projetadas até então e finalmente criar o banco de dados. Abaixo um código gerado através da ferramenta Brmodelo de um modelo físico da oficina “chave de rodas”.
-- Geração de Modelo físico
-- Sql ANSI 2003 - brModelo.
CREATE TABLE servico_especializado (
tipo_serviço varchar(200),
cod_motor int(10),
cod_suspensao int(10),
cod_eletrica int(10),
cod_freio int(10),
FOREIGN KEY(cod_motor) REFERENCES Motor (cod_motor),
FOREIGN KEY(cod_suspensao) REFERENCES Suspensao (cod_suspensao),
FOREIGN KEY(cod_eletrica) REFERENCES Eletrica (cod_eletrica),
FOREIGN KEY(cod_freio) REFERENCES Freio (cod_freio)
);
CREATE TABLE Funcionário (
nome_func varchar(40),
salario decimal(10),
data_nasc date,
CPF_func int(11),
setor varchar(40),
id_func int(10) PRIMARY KEY,
id_gerente int(10)
);
CREATE TABLE Veículo+OS (
modelo varchar(20),
cod_veic int(10),
placa varchar(10),
chassi varchar(10),
marca varchar(20),
categoria varchar(20),
cor varchar(20),
ano date,
data_entrada date,
cod_os int(10),
data_saida date,
valor_total decimal,
valor_serv_espec decimal,
desconto float(4),
parcelamento float(5),
cod_cli int(10),
PRIMARY KEY(cod_veic,cod_os)
);
CREATE TABLE Cliente (
cod_cli int(10) PRIMARY KEY,
CPF_cli int(11),
nome_cli varchar(50),
CEP_cli int(10),
num_casa int(6),
bairro varchar(50),
UF_cli char(2),
cidade_cli varchar(40),
rua_cli varchar(50)
);
CREATE TABLE Gerente (
nm_gerente varchar(40),
id_gerente int(10) PRIMARY KEY,
salario decimal(10),
setor varchar(40),
CPF_Gerente int(11),
data_nasc date
);
CREATE TABLE Motor (
pot_motor varchar(6),
desc_motor varchar(200),
cod_motor int(10) PRIMARY KEY,
quant_oleo varchar(6)
);
CREATE TABLE Suspensao (
desc_direcao varchar(200),
desc_pneus varchar(200),
prec_hr_suspe int(6),
cod_suspensao int(10) PRIMARY KEY,
desc_ruido varchar(200)
)
CREATE TABLE Eletrica (
quant_lamp_queimadas int(5),
quant_farois_queimados int(5),
prec_hr_eletrica int(6),
cod_eletrica int(10) PRIMARY KEY
);
CREATE TABLE Freio (
cod_freio int(10) PRIMARY KEY,
desc_ruido_freio varchar(200),
des_pedal_freio varchar(200),
prec_hr_freio int(6),
desc_freio_puxando varchar(200)
);
CREATE TABLE fone_cli (
fone_cli varchar(12)
);
CREATE TABLE agenda (
id_func int(10),
cod_veic int(10),
cod_os int(10),
FOREIGN KEY(id_func) REFERENCES Funcionário (id_func),
FOREIGN KEY(cod_os,,) REFERENCES Veículo+OS (cod_veic,cod_os)
);
ALTER TABLE Funcionário ADD FOREIGN KEY(id_gerente) REFERENCES Gerente (id_gerente)
ALTER TABLE Veículo+OS ADD FOREIGN KEY(cod_cli) REFERENCES Cliente (cod_cli)
ALTER TABLE servico_especializadoADD FOREIGN KEY(cod_motor) REFERENCES Motor (cod_motor)
ALTER TABLE servico_especializadoADD FOREIGN KEY(cod_suspensao) REFERENCES Suspensao (cod_suspensao)
ALTER TABLE servico_especializadoADD FOREIGN KEY(cod_eletrica) REFERENCES Eletrica (cod_eletrica)
ALTER TABLE servico_especializadoADD FOREIGN KEY(cod_freio) REFERENCES Freio (cod_freio)
	
 5. ESTRUTURA DE DADOS PILHA 
	Pilha – Uma pilha é uma das várias estruturas de dados que admitem remoção de elementos e inserção de novos elementos. Mais especificamente, uma pilha (= stack) é uma estrutura sujeita à seguinte regra de operação: sempre que houver uma remoção, o elemento removido é o que está na estrutura há menos tempo.
São exemplos de uso de pilha em um sistema:
Figura 06 – Estrutura de dados de uma Pilha
Funções recursivas em compiladores;
Mecanismo de desfazer/refazer dos editores de texto;
Navegação entre páginas Web.
etc.
A implementação de pilhas pode ser realizada através de vetor (alocação de memória para elementos é contígua) ou através de listas encadeadas. Numa pilha, a manipulação dos elementos é realizada em apenas uma das extremidades, chamada topo, em oposição a outra extremidade, chamada de base. 
Operações com Pilha:
	Todas as operações em uma pilha podem ser imaginadas como as que ocorre numa pilha de pratos de um restaurante ou como num jogo com as cartas de um baralho:
criação da pilha (informar a capacidade no caso de implementação sequencial – vetor);
empilhar (push) – o elemento é o parâmetro nesta operação;
Desempilhar (pop);
 Mostrar topo;
Verificar se a pilha está vazia (isEmpty);
Verificar se a pilha está cheia (isFull – implementação sequencial - vetor);
Supondo uma pilha com capacidade para 5 elementos (5 nós).
Figura 07 – Função empilhar (push) de uma pilha
Na realidade a remoção de um elemento da pilha é realizada apenas alterando-se a informação da posição do topo.
Figura 08 – Função desempilhar de (pop) de uma pilha.
	Abaixo apresentaremos um código de um programa feito em C# exemplificando a inserção e remoção de um objeto dentro de uma Pilha.
Figura 09: Remoção de um Objeto executado em C# na Estrutura Dados de uma Pilha
Figura 10: Inserção de um Objeto executado em C# na Estrutura Dados de uma Pilha
using static System.Console;
using System.Collections.Generic;
public class Program
{
 public static void Main()
 {
 WriteLine("<Pilha>");
 var minhaPilha= new Stack<string>();
 WriteLine("Para add itens, selecione A");
 WriteLine();
 WriteLine("Para remover itens, selecione R");
 WriteLine();
 WriteLine("Caso queira remover um dado especifico digite W");
 minhaPilha.Push("Carlos");
 minhaPilha.Push("João");
 minhaPilha.Push("Antonio");
 minhaPilha.Push("Ricardo");
 var opc = ReadLine();
 foreach (var nome in minhaPilha)
 {
 WriteLine(nome);
 }
 if (opc == "R")
 {
 WriteLine();
 minhaPilha.Pop();
 foreach (var nome in minhaPilha)
 {
 WriteLine(nome);
 }
 }
 if (opc == "A")
 {
 WriteLine("Digite aqui:");
 minhaPilha.Push(ReadLine());
 WriteLine();
 foreach (var nome in minhaPilha)
 {
 WriteLine(nome);
 }
 }
 if (opc == "W")
 {
 WriteLine("Qual nome:");
 var selecionado = ReadLine();
 var novaPilha = new Stack<string>();
 var totalItens = minhaPilha.Count;
 for (var i = 0; i < totalItens; i++)
 {
 if (minhaPilha.Peek() == selecionado)
 {
 minhaPilha.Pop();
 break;
 }
 else
 {
 novaPilha.Push(minhaPilha.Pop());
 }
 }
 totalItens = novaPilha.Count;
 for (var i = 0; i < totalItens; i++)
 {
 minhaPilha.Push(novaPilha.Pop());
 }
 foreach (var nome in minhaPilha)
 {
 WriteLine(nome);
 }
 }
 WriteLine();
 }
}
6. ORGANIZAÇÃO DE COMPUTADORES
	Dois conceitos fundamentais no estudo dos sistemas de computação são o de Arquitetura e Organização de computadores. O termo arquitetura refere-se aos atributos do ponto de vista do programador, e portanto, têm impacto direto sobre a execução lógica de um programa. O termo organização, refere-se às unidades operacionais e suas interconexões. Desta forma, uma mesma arquitetura pode ser implementada por meio de diferentes organizações.
A arquitetura de um sistema computacional estabelece o modelo da organização e funcionamento de um sistema de processamento, com todas suas partes, divididas em seções, interagindo entre si. Os componentes e suas relações são representados através de sistemas hierárquicos, o que se mostra ideal para o estudo de conjuntos complexos e que atuam em diferentes níveis; separados por suas características, estudaremos o funcionamento de cada um destes componentes.
As funções básicas de um computador são o processamento de dados, armazenamento de dados, transferência de dados e controle. Para desempenhar essas funções o computador precisa executar um conjunto de instruções (programa). Os computadores que conhecemos são baseados no conceito de programa armazenado, introduzido por Von-Neuman. As instruções do programa e os dados são armazenados em uma memória, de forma que a alteração de um programa consiste na alteração de um endereço de memória.
O ciclo de execução de cada uma das instruções de um programa é dividido nos seguintes estados:
Cálculo do Endereço de Instrução;
Busca da Instrução (Instruction Fetch);
Decodificação da Instrução;
Cálculo do Endereço do Operando;
Busca do Operando (Operand Fetch);
Execução da Operação;
Armazenamento do Resultado.
No entanto, os computadores modernos utilizam o conceito de interrupção para diminuir o tempo de ociosidade dos processadores, o ciclo de execução das instruções ganha mais alguns estados. As classes de interrupções mais comuns são interrupções de software, de relógio, de E/S e de falha de hardware.
Componentes básicos de um computador:
Figura 11 - Componentes de um Computador
Unidade Central de Processamento (CPU) – Módulo que realiza as operações necessárias;
Memória Principal – Uma área de trabalho para o armazenamento das informações que serão processadas;
Dispositivos de E/S – Dispositivos para o recebimento de informações e retorno/armazenamento dos resultados;
Sistemas de Interconexão – Um meio através do qual os dispositivos possam se comunicar e transmitir dados;
6.1 ESPECIFICAÇÕES TÉCNICA PARA COMPRA DE COMPUTADORES
	Para oficina mecânica “chave de rodas”, foram feitas algumas pesquisas de mercado, no intuito de montar um layout eficaz, para atender as necessidades de seus funcionários. Veja abaixo algumas das configurações que foram pesquisadas para construção do layout da empresa:
 
Computer 1:
7ª geração do Processador Intel Core i3-7100(3.9 GHz, Cache de 3MB)
Disco rígido (HD) 1TB (7200 RPM)
Memória RAM: 4GB, DDR4, 2400MHz (1x4GB)
Monitor LED Full HD de 21,5 polegadas Widescreen – Preto
Áudio: De alta definição com 5.1 canais com Waves MaxxAudio Pro (
Teclado multimídia com fio e Mouse Óptico com fio
Sistema Operacional: Windows 10 64-bits
Marca: Dell
Preço: R$ 2.619,00
Computer 2:
Processador Intel Core i5 frequência base 3.10 GHz, (turbo max 3.40ghz)
Memória RAM: 8GB, DDR3
Monitor de 19,5 polegadas, LED 20M37XX incluso
Áudio: HD 5.1 canais (Kit multimídia completo com CD de drives e caixa de som)
Teclado e Mouse com fio
Sistema Operacional: Linux
Marca: EasyPC 
Preço: R$ 1799,00
	Ao comparar as duas configurações e seus respectivos preços, podemos tirar várias conclusões, mesmo com custo inferior do computador nº 2, ao fazer uma análise mais profunda optamos em adquirir o computador de nº 1, apesar de que computador nº2 possui um preço bom de mercador bem menor que computador escolhido, chegando a uma diferença de R$ 820,00.
Justificativa: Apesar do computador de nº2 possuir um processador core i5, e computador de nº1 possuir um processador core i3, em teste realizado no site de comparações de CPU http://cpuboss.com/cpus/Intel-Core-i5-2400-vs-Intel-Core-i3-6100 , percebemos que core i3 levou um grande vantagem em comparação ao seu concorrente, nos quesitos performasse e desempenho levando nota 8,6 enquanto seu concorrente ficou com apenas 7,6. Além disso outro fator utilizado foi em relação ao uso de memória RAM, o computador nº 2 possui 8GB de RAM, mais utiliza uma tecnologia DDR3 que trabalha com uma taxa de 800 2.400 MHz, enquanto a DDR4 utilizada no computador nº 4, alcança valores de 2.133 até 4.266MHz, que permite mais transferência e um mesmo intervalo de tempo, outro problema é que apesar de PCs, que utilizam DDR3 terem um preço mais baixo, a sua vida útil e limitada pela tecnologia, sendo que nos próximos anos, você tenha um equipamento com poucas ou quase nenhuma melhoria caso opte por um. Outro requisito que nos leva a optar pelo computador de nº 1 foi seus sistemas operacional, apesar do Linux do computador nº2 ser um sistema mais seguro, estável, o Windows do computador nº 1 é bem mais popular e tem uma usabilidade mais conhecida, o que favorece a utilização pelos funcionários da oficina “chave de rodas”.
7. CONCLUSÃO
	Este trabalho foi desenvolvido com objetivo de facilitar o gerenciamento da oficina mecânica “chave de rodas”, agilizando seus processos e reduzindo os gastos. Tudo realizado de uma forma flexível e simples, tendo em vista uma melhor facilidade de controle das informações satisfazendo assim as necessidades dos clientes.
	Foram feitas as modelagens do sistema como: caso de uso, diagrama de classe, diagrama de entidade relacionamento além de uma pesquisa técnica sobre computadores e desenvolvimento de estrutura dados em C#. Os diagramas criados foram de grande importância, pois ajudaram a ter uma visão de como seria o funcionamento de um sistema para oficina mecânica. 
	Os softwares empregados mostram se eficientes na construção de modelagem e criação de estrutura de dados, oferecendo várias ferramentas para auxiliar naconstrução dos diagramas e no desenvolvimento da linguagem C#, pretende-se com a criação desses modelos, atender as necessidades dos futuros clientes.
REFERÊNCIAS 
Disponível em: < http://www.sebrae.com.br/sites/PortalSebrae/ideias/como-montar-uma-oficina-mecanica,46187a51b9105410VgnVCM1000003b74010aRCRD >. Acesso em 24 de fevereiro 2018.
Disponível em: < http://www.cos.ufrj.br/~rfarias/cos121/pilhas.html >. Acesso em 24 de fevereiro 2018.
Disponível em: < http://www.cos.ufrj.br/~rfarias/cos121/pilhas.html >. Acesso em 24 de fevereiro 2018.
Disponível em: < https://www.devmedia.com.br/o-que-e-uml-e-diagramas-de-caso-de-uso-introducao-pratica-a-uml/23408 >. Acesso em 24 de fevereiro 2018.
Disponível em: < https://www.devmedia.com.br/orientacoes-basicas-na-elaboracao-de-um-diagrama-de-classes/37224>. Acesso em 24 de fevereiro 2018.
Disponível em: < https://www.devmedia.com.br/conceitos-fundamentais-de-banco-de-dados/1649>. Acesso em 05 de março 2018.
Disponível em: < http://www.diegomacedo.com.br/fundamentos-de-arquitetura-e-organizacao-de-computadores/>. Acesso em 06 de março 2018.
Disponível em: < https://www.ibm.com/support/knowledgecenter/pt-br/SSNLXH_2.1.0/doc/installguide/planning/ps_computerroomlocation.html>. Acesso em 06 de março 2018.
Disponível em: < https://www.americanas.com.br/produto/24786728/computador-inspiron-dell-ins-3268-a10m-7-geracao-intel-core-i3-4gb-1tb-windows-10-com-monitor?WT.srch=1&epar=bp_pl_00_go_inf_notebooks_todas_geral_gmv&gclid=Cj0KCQjwy9LVBRDOARIsAGqoVnvLILmyhlo8IFF2Z81hv90_-uIea3mIS3GRgKdcpRe3qB9jXAi98moaAvheEALw_wcB&opn=YSMESP&sellerId=72381189000625>. Acesso em 23 de março 2018.
Disponível em: < https://www.submarino.com.br/produto/20813254/computador-intel-core-i5-3.4ghz-8gb-ddr3-1tb-hdmi-audio-5.1-monitor-led-19.5-easypc-standard?DCSext.recom=RR_b2wAds-&api=b2wads&chave=b2wads_5a32e6afd0286b0e4c2ebd33_71052559000103&context=product&nm_origem=rec_b2wAds-&nm_ranking_rec=3&pos=2&sellerId=71052559000103&sellerName=Comprebel> Acesso em 23 de março 2018.
Disponível em: < http://cpuboss.com/cpus/Intel-Core-i5-2400-vs-Intel-Core-i3-6100> Acesso em 23 de março 2018.
Disponível em: < http://e-tinet.com/linux/qual-e-melhor-sistema-operacional/> Acesso em 23 de março 2018.
Disponível em: < http://www.techtudo.com.br/dicas-e-tutoriais/noticia/2016/06/ddr3-ou-ddr4-entenda-diferencas-e-veja-qual-o-melhor-tipo-memoria.html> Acesso em 23 de março 2018.
Disponível em: < https://pt.wikipedia.org/wiki/Reengenharia> Acesso em 02 de abril 2018.
Disponível em: < https://pt.stackoverflow.com/questions/84091/remover-dado-especifico-em-uma-pilha> Acesso em 05 de abril 2018.

Continue navegando