Março/2009 Engenharia do Computação Sistema de Gestão de Manutenção Desenvolvimento Equipe...

Post on 17-Apr-2015

104 views 0 download

Transcript of Março/2009 Engenharia do Computação Sistema de Gestão de Manutenção Desenvolvimento Equipe...

Março/2009Engenharia do Computação

Sistema de Gestão de Manutenção

Desenvolvimento

EquipeAntônio DeyvysonDiego NascimentoPaollo MacielMarcelo PereiraRafael Pinto

Orientador: Prof. MSc Fábio CardosoCo-orientador: Prof. MSc Marcelo Oliveira

Março/2009Engenharia da Computação

Introdução

Mercado altamente competitivo;

Manutenção é responsável direta em garantir a disponibilidade dos

equipamentos e instalações, de modo a atender a um processo de

produção com confiabilidade, segurança e custos adequados;

Março/2009Engenharia da Computação

Introdução

Necessidade de estabelecimento de planos estratégicos que

prevêem ações de curto, médio e longo prazo;

Atualmente há softwares poderosos para gerenciar importantes

funções de negócios, mas na maioria dos casos, funcionam sem levar

em conta a individualidade e as necessidades específicas dos clientes;

Março/2009Engenharia da Computação

Justificativa

Para atender as necessidades e as individualidades dos

clientes, desenvolveu-se o software MMS, para auxiliar o gestor

e a equipe de manutenção no monitoramento, mapeamento e

coleta das informações relacionadas com as rotinas de

manutenção das máquinas.

Março/2009Engenharia da Computação

Objetivos

Objetivo Geral

Desenvolver de um sistema para auxiliar a gestão de

manutenção, através dos conceitos de orientação a objeto e

utilizando o padrão de desenvolvimento para aplicações web

MVC (Model-View-Controller).

Outubro/2008Engenharia do Computação

Sistema MMS

Tópicos

Características do Sistema

Tecnologias Utilizadas

Arquitetura do Sistema

Padrão MVC

Módulo Model

Outubro/2008Engenharia do Computação

Outubro/2008Engenharia do Computação

Características do Sistema

Sistema Web (Cliente/Servidor)

Plataforma .NET (Windows/Linux-Mono)

Cliente naturalmente multiplataforma

Arquitetura MVC

Acesso ao banco através de Mapeamento de Objetos – ORM

Padrão ActiveRecord

NVelocity

Outubro/2008Engenharia do Computação

Outubro/2008Engenharia do Computação

Tecnologias Utilizadas

ASP.NET

Linguagem C#

MonoRail (Impl. do padrão MVC)

Castle ActiveRecord (Impl. padrão ActiveRecord)

Javascript/AJAX

Linguagem HTML

Banco de dados MySql

Outubro/2008Engenharia do Computação

Outubro/2008Engenharia do Computação

Arquitetura do Software

PROJ ETO MMS

M C V

Active Record

Nhibernate

Nvelocity J avaScript

HTML

Banco de Dados

Outubro/2008Engenharia do Computação

Padrão MVC

PROJ ETO MMS

M C V

Active Record

Nhibernate

Nvelocity J avaScript

HTML

Banco de Dados

Outubro/2008Engenharia do Computação

Características do MVC

Arquitetura Dividida basicamente em 3 camadas (Model, View e Controller).

Separa a lógica de negócios(Model) da lógica de apresentação(View).

Diminui a complexidade da aplicação

Facilita a manutenção do código.

Outubro/2008Engenharia do Computação

Outubro/2008Engenharia do Computação

Fluxo de uma aplicação MVC

1. Usuário gera um evento (Ex: aperta um botão).2. Controller solicita dados do Model.3. Model envia os dados para o controller.4. Controller trata os dados e envia para a view.5. View exibe o resultado para o usuário.

Outubro/2008Engenharia do Computação

Outubro/2008Engenharia do Computação

Fluxo de uma aplicação MVC

1. Usuário gera um evento (Ex: aperta um botão).2. Controller solicita dados do Model.3. Model envia os dados para o controller.4. Controller trata os dados e envia para a view.5. View exibe o resultado para o usuário.

Outubro/2008Engenharia do Computação

Outubro/2008Engenharia do Computação

Fluxo de uma aplicação MVC

1. Usuário gera um evento (Ex: aperta um botão).2. Controller solicita dados do Model.3. Model envia os dados para o controller.4. Controller trata os dados e envia para a view.5. View exibe o resultado para o usuário.

Outubro/2008Engenharia do Computação

Outubro/2008Engenharia do Computação

Fluxo de uma aplicação MVC

1. Usuário gera um evento (Ex: aperta um botão).2. Controller solicita dados do Model.3. Model envia os dados para o controller.4. Controller trata os dados e envia para a view.5. View exibe o resultado para o usuário.

Outubro/2008Engenharia do Computação

Outubro/2008Engenharia do Computação

Fluxo de uma aplicação MVC

1. Usuário gera um evento (Ex: aperta um botão).2. Controller solicita dados do Model.3. Model envia os dados para o controller.4. Controller trata os dados e envia para a view.5. View exibe o resultado para o usuário.

Outubro/2008Engenharia do Computação

Outubro/2008Engenharia do Computação

Fluxo de uma aplicação MVC

1. Usuário gera um evento (Ex: aperta um botão).2. Controller solicita dados do Model.3. Model envia os dados para o controller.4. Controller trata os dados e envia para a view.5. View exibe o resultado para o usuário.

Outubro/2008Engenharia do Computação

Outubro/2008Engenharia do Computação

Projeto Castle MonoRail

Provê um framework MVC para .NET 2.0

Baseado no framework Ruby On Rails para linguagem ruby

Compatível com Mono (Framework .NET para Linux)

Fácil Configuração

Outubro/2008Engenharia do Computação

Outubro/2008Engenharia do Computação

Modelo MonoRail - Diretórios

Outubro/2008Engenharia do Computação

Outubro/2008Engenharia do Computação

Diretório Content

Outubro/2008Engenharia do Computação

Contém arquivos estáticos utilizados pelo sistema

Exemplo:

• folhas de estilo• imagens• scripts

Outubro/2008Engenharia do Computação

Diretório Controllers

Outubro/2008Engenharia do Computação

• Diretório de desenvolvimento

• Contém as classes do módulo Controller

• Pode conter subdiretórios para organização em “Áreas”

Outubro/2008Engenharia do Computação

Diretório Models

Outubro/2008Engenharia do Computação

• Diretório de desenvolvimento

• Contém as classes do módulo Model

• Pode conter subdiretórios simplesmente para organização do código sem afetar no funcionamento do framework.

Outubro/2008Engenharia do Computação

Diretório Views

Outubro/2008Engenharia do Computação

• Diretório Funcional

• Essencial para o funcionamento da View

• Contém arquivos da View

• Para cada subdiretório existe um controller

• Alguns subdiretórios são padrões e são acessados pelo framework.

Outubro/2008Engenharia do Computação

Views - Subdiretórios

Outubro/2008Engenharia do Computação

• layouts – Contém arquivos de layout

• rescues – Arquivo de layout de página de recuperação de erro.

• macros – Macros Nvelocity.

Outubro/2008Engenharia do Computação

Fluxo - MonoRail

Outubro/2008Engenharia do Computação

Outubro/2008Engenharia do Computação

Fluxo – MonoRail

Outubro/2008Engenharia do Computação

Outubro/2008Engenharia do Computação

Exemplo: Validação do Usuário - Controller

Outubro/2008Engenharia do Computação

Março/2009Engenharia da Computação

Camada Model

PROJ ETO MMS

M C V

Active Record

Nhibernate

Nvelocity J avaScript

HTML

Banco de Dados

Março/2009Engenharia da Computação

ORM – Mapeamento Objeto Relacional

Modelo Orientado a Objetos BANCO DE DADOS

Modelo RelacionalO RM

ORM tem por objetivo diminuir as diferenças entre objetos e tabelas de um SGBD;

Oferece formas para o desenvolvedor definir como que seus objetos serão persistidos (salvos), como podem ser obtidos e manipulados do banco de dados;

Março/2009Engenharia da Computação

Tecnologias ORM

As tecnologias utilizadas:

NHibernate;

Castle Active Record;

Março/2009Engenharia da Computação

Maquina.csXML+

Maquina.hbm.xml

Hibernate.cfg.xml

NHibernate - Implementação

tab_maquina

NHibernate

Março/2009Engenharia da Computação

NHibernate - Implementação

nam espace MMS. Models{

using S ystem ;using NH ibernate.Expression;

public class Maquina{

private int id;private string codigo;private DateTim e dataAquisicao;

public int I d{

get { return id; }set { id = value; }

}

public string Codigo{

get { return codigo; }set { codigo = value; }

}

public DateT im e DataAquisicao{

get { return dataAquisicao; }set { dataAquisicao = value; }

}}

M aqu in a.cs

Março/2009Engenharia da Computação

NHibernate - Implementação

XMLM ach in e.h b m .xm l

<?xml version="1.0" encoding="utf-8" ?><hibernate-mapping xmlns="urn: nhibernate-mapping-2.2"

assembly=“MMS" namespace=“MMS. Model">

<class name=“tab_ maquina"><id name=“id">

<generator class=“increment" / ></id><property name=“codigo" / ><property name=“data_ aquisicao" / >

</ class>

</hibernate-mapping>

.hbm :é uma convenção usada pelo NHibernate para reconhecer automaticamente o arquivo como um arquivo de mapeamento

Março/2009Engenharia da Computação

Castle Active Record

PROJ ETO MMS

M C V

Active Record

Nhibernate

Nvelocity J avaScript

HTML

Banco de Dados

Março/2009Engenharia da Computação

Castle Active Record

Não há necessidade de implementação

de arquivos xml, para mapear as tabelas

do bando de dados;

Encapsulamento do NHibernate e XML;

Aumento na produtividade;

Março/2009Engenharia da Computação

Active Record - Implementação

XML+ Maquina.csMaquina.hbm.xml

Web.config

Active Record Maquina.cs

tab_maquina

NHibernate

Março/2009Engenharia da Computação

Active Record - Implementação

M aqu ina.csM aqu in a.csnam espace MMS. Models{

using S ystem ;using Castle.ActiveRecord;using NH ibernate.Expression;

public class Maquina{

private int id;private string codigo;private DateT im e dataAquisicao;

[Pr im aryKey(“id” ) ]public int I d{

get { return id; }set { id = value; }

}

[Property(“codigo”) ]public string Codigo{

get { return codigo; }set { codigo = value; }

}

[Property(“data_ aquisicao”) ]public DateT im e DataAquisicao{

get { return dataAquisicao; }set { dataAquisicao = value; }

}}

}

XML

NHibernate

Março/2009Engenharia da Computação

Desenvolvimento

Alguns dos principais requisitos funcionais:

MMS_CCS_RF_001 – Cadastro das Máquinas;

MMS_CCS_RF_004 – Cadastro de Técnicos;

MMS_CCS_RF_005 – Cadastro de Supervisores;

MMS_CCS_RF_006 – Abertura de Ordem de Serviço;

MMS_CCS_RF_007 – Fechamento de Ordem de Serviço;

MMS_RS_RF _005 – Relatório de MTBF por máquina;

MMS_RS_RF _007 – Relatório de MTTR;

MMS_RS_RF _008 – Relatório de DownTime;

Março/2009Engenharia da Computação

Desenvolvimento

Authentication.cs

MMSSecurity.cs

User.cs

State.cs

MachineStopLog.cs

MMSLogger.cs

AssemblyLine.cs

Machine.cs

MachineGroup.cs

MachineModel.cs

MachineType.cs

Manufacturer.cs

StageAssemblyLine.cs

CorrectiveMaintenanceReport.cs

FailureMode.cs

MaintenanceReport.cs

PredictiveMaintenanceReport.cs

PreventiveMaintenanceReport.cs

ServiceOrder.cs

Classes desenvolvidas na camada Model.

Março/2009Engenharia da Computação

Desenvolvimento

Classe Authentication.cs

Março/2009Engenharia da Computação

Desenvolvimento

Classe Machine.cs

Março/2009Engenharia da Computação

Desenvolvimento

Classe ServiceOrder.cs

Março/2009Engenharia da Computação

Desenvolvimento

Classe MaintenanceReport.cs

Março/2009Engenharia da Computação

Desenvolvimento

Classe CorrectiveMaintenanceReport.cs

Março/2009Engenharia da Computação

Desenvolvimento

Classe MachineStopLog.cs

Março/2009Engenharia da Computação

Plano de Teste

Objetivo

Descrever as atividades e o planejamento de execução dos testes, bem como as estratégias a serem tomadas durante a execução.

Tipo de Teste

Caixa-Preta;

Março/2009Engenharia da Computação

Conclusão

Implementação dos requisitos; Contribuição para:

Integração de sistemas; Redução de Custos; Conhecimento alcançado sobre as

tecnologias estudadas;

Criação de protótipo funcional.

Março/2009Engenharia da Computação

Trabalhos Futuros

A evolução do sistema MMS, com novas implementações e módulos:

Módulo de elaboração do FMEA (Análise do Modo e

Efeito da Falha);

Módulo para controle de reposição dos equipamentos

e componentes utilizados durante as manutenções;

Módulo de abertura de Ordem de Serviço

automaticamente;

Março/2009Engenharia da Computação

Obrigado pela atenção.