Você está na página 1de 25

UNIP INTERATIVA

Projeto Integrado Multidisciplinar VII


Cursos Superiores de Tecnologia

SISTEMA DE LOCADORA DE VEÍCULOS

Polo UNIP São Luís-MA


2016
UNIP INTERATIVA
Projeto Integrado Multidisciplinar VII
Cursos Superiores de Tecnologia

SISTEMA DE LOCADORA DE VEÍCULOS

RA:
CURSO: Análise e Desenvolvimento de Sistemas
SEMESTRE: 4º

Polo UNIP São Luís-MA


2016
RESUMO

O principal desafio deste Projeto Integrado Multidisciplinar é criar um sistema


para locadora de veículos, será necessário fazer a análise e desenvolvimento do
software. No decorrer do trabalho, teremos algumas noções de tópicos vistos em
disciplinas do curso sendo colocados em prática, o que claramente ajudara-nos a
desenvolver nossa capacidade de criar para encontrar e solucionar os problemas
relacionados com nossa futura profissão: analista de sistema, analista de banco de
dados, etc. Mesmo o PIM sendo apenas um trabalho acadêmico para obtenção da
nota referente ao 4º período do curso de Análise e Desenvolvimento de Sistemas, no
qual o aluno irá se deparar com incertezas, dificuldades e riscos, entregar o projeto
finalizado, levando em conta as tendências atuais do mercado de trabalho, ele deve
proporcionar ao usuário final uma ferramenta que supra plenamente todas suas as
necessidades e alavancar ainda mais os nossos conhecimentos na área de
informática.

Palavras-chave: análise, veículos, sistema, software.


ABSTRACT

The main challenge of this Multidisciplinary Integrated Project is to create a system


for vehicle rental company, you need to do the analysis and software development.
During the work, we will have some notions visa topics in course subjects being put
in place, which clearly helped us to develop our ability to create to find and solve the
problems related to our future profession: System Analyst, Analyst database, etc.
Even the PIM being just an academic work to obtain the note of the 4th period of the
course of Systems Analysis and Development, in which the student will be faced with
uncertainties, difficulties and risks, deliver the finished project, taking into account
current trends labor market, it should provide the end user a tool that fully meet all
your needs and further leverage our expertise in computer science .

Keys word: analysis, vehicles, system, software.


SUMÁRIO

1 INTRODUÇÃO..................................................................................................................6
2 DESENVOLVIMENTO.....................................................................................................7
2.1 Cenário....................................................................................................... 7
2.2 Justificativa do Projeto................................................................................... 7
2.3 Arquitetura MVC........................................................................................... 7
2.4 Modelo Entidade Relacionamento...................................................................8
2.5 UML (Unified Modeling Language)...................................................................8
2.5.1 Diagrama de Classes.............................................................................. 9
2.5.2 Diagrama de Sequência..........................................................................9
2.5.3 Diagrama de Atividades.........................................................................10
2.5.4 Diagrama de Implantação......................................................................10
2.6 Projeto de Sistema Para Locação de Veículos................................................10
3 CONCLUSÃO.................................................................................................................24
4 REFERÊNCIAS...............................................................................................................25
6

1 INTRODUÇÃO

O uso de computadores nas mais diversas áreas do conhecimento humano


tem gerado uma crescente demanda por soluções computadorizadas. Para os
iniciantes na Ciência de Computação, desenvolver softwares é, muitas vezes,
confundido com programação. Essa confusão inicial pode ser atribuída, pela forma
como as pessoas são introduzidas nesta área de conhecimento, começando por
desenvolver habilidades de raciocínio lógico, através de programação e estruturas
de dados.

Criar um software de qualidade atendendo aos requisitos do cliente é um


desafio para o engenheiro de sistemas. Para tanto se faz necessário utilizar uma
abordagem sistemática da engenharia de software chamada processo de software.

O Processo de software possui vários modelos que tem em comum quatro


atividades fundamentais: a especificação que consiste na definição do software a ser
produzido e suas restrições; o desenvolvimento onde é feito o projeto de software
bem como a programação; a validação que coloca o software em verificação para
garantir que as necessidades dos clientes sejam atendidas e evolução em que o
software é modificado para atender novos requisitos e tecnologias do cliente e do
mercado.

Na fase de desenvolvimento seja qual for o processo adotado pelo


engenheiro de software temos o projeto de software onde através do documento de
requisitos e análise elaborados na fase de especificação, projetamos o software
determinando a sua arquitetura, projeto de banco de dados assim como diagramas
de classe, sequência e de distribuição, reduzindo a intangibilidade do que será
produzido.

Neste cenário, frequentemente não é possível conduzir o desenvolvimento


de software de maneira individual. Pessoas têm de trabalhar em equipes, o esforço
tem de ser planejado, coordenado e acompanhado. Este projeto tem o objetivo de
construir a documentação de design para um sistema de locação de veículos sendo
necessário gerar os artefatos solicitados no projeto.
7

A pesquisa a ser realizada neste trabalho pode ser classificada como


bibliográfica. Isto porque deve a pesquisa em mãos um estudo inicialmente da
construção de um protocolo de investigação através de resumos e fichamentos de
livros da área, leituras de artigos e pesquisas na internet, auxiliando na percepção
das variáveis do projeto.

2 DESENVOLVIMENTO

2.1 Cenário

O objetivo principal é criar um sistema para controlar a locação de


veículos em uma empresa especializada, controlar a devolução e o
pagamento dessas locações. A empresa é de propriedade dos irmãos
empresários. Essa dupla de jovens empresários resolveu criar uma empresa no
ramo de locação de veículos. Entre muitas medidas tomadas para viabilizar o
negócio, fez-se necessário desenvolver um sistema para controlar as locações
dos veículos. Então decidiram procurar os serviços de desenvolvedora
especializada em softwares para criar o sistema. Após um mês e f e t i v o de
intenso trabalho, o designer do projeto teve um imprevisto e fez uma viagem
para atender um cliente estrangeiro. A partir deste momento nós enquanto
estudantes do curso de Análise e Desenvolvimento de Sistemas ficaremos
responsáveis por conduzir o projeto daqui em diante até que o verdadeiro
arquiteto assuma o seu papel novamente. Vale lembrar, que o arquiteto passou
todas as informações necessários para o desenvolvimento do sistema e em que
estágio ele se encontrava. O arquiteto informou que a fase de análise já havia
sido concluída, e que a próxima etapa de desenvolvimento seria a fase de
projeto (denominada de design).

2.2 Justificativa do Projeto

No cenário atual de competividade que temos atualmente, as empresas


estão buscando expandir seus horizontes. Essa tendência requer que os
profissionais sejam aproveitados ao máximo principalmente no que diz respeito a
produtividade, e com uma redução substancial do tempo necessário para executar
8

suas atividades, diminuindo os custos na operação, e permitindo que a empresa


desenvolva e tenha ainda mais seu potencial de competitividade, com um serviço
célere, seguro, eficaz e tendo sobretudo um grande valor.

2.3 Arquitetura MVC

O MVC (model – view - controller) é um padrão de arquitetura de software


permite fazer a separação em camadas dos elementos de um sistema, permitindo
alterações localizadas. É a base para gerenciamento em sistemas web.

A arquitetura do sistema é estruturada em três componentes lógico que


fazem a interação entre si. O componente modelo gerencia os dados e as operações
que estão associadas a esses dados. A componente visão, define e gerencia como
os dados são apresentados aos usuários. O componente controlador gerencia a
interação do usuário, passando essas interações para a visão e modelo.

2.4 Modelo Entidade Relacionamento

O MER – Modelo Entidade-Relacionamento – É um modelo conceitual


desenvolvido e proposto pelo Dr. Peter Pin-Shan Chen em 1976 e é focado nos
conceitos de: Entidades, atributos e relacionamentos entre as entidades. Este tipo
de modelagem de bancos de dados tornou-se mundialmente famoso e possui
grande reconhecimento parte da Engenharia de Software, tornando os objetos
observados no modelo de negócios em entidades. Como o DER – Diagrama
Entidade Relacionamento

O DER pode ser entendido como uma forma lógica, gráfica e intuitiva de
visualizar as concepções que envolvem a modelagem dos dados de acordo com o
modelo de dados Entidade-Relacionamento. Neste diagrama, podemos ver
claramente o conjunto de entidades, o conjunto de atributos das entidades e os
relacionamentos existentes alinhados de acordo com o entendimento do modelo de
negócios proposto.

A estrutura DER é composta por figuras geométricas, textos e números. As


figuras representam as entidades e os relacionamentos, sendo o primeiro
representado por quadrados ou retângulos e o segundo por losangos. Os textos
9

descrevem os nomes dos atributos que uma entidade possui e os números se


referem à cardinalidade mapeada entre as entidades.

2.5 UML (Unified Modeling Language)

A UML (Unified Modeling Language) – Linguagem de Modelagem Unificada


pode ser entendida como uma linguagem de modelagem que segue uma série de
padrões aceitos por uma comunidade de engenheiros de software por todo o
planeta. Seu início se deu por: Jim Rumbaugh, Grady Booch e Ivar Jacobson na
década de 90. A UML é baseada nos conceitos de Orientação a Objetos e que pode
ser observado em seus diagramas, que são expressos de forma lógica.

Os diagramas são divididos em dois grupos: um para a modelagem da


estrutura de um sistema e um para a modelagem do comportamento. Os diagramas
de estrutura são usados para representar os dados e relacionamentos estáticos que
compõe um sistema. O diagrama de comportamento fornece a representação dos
relacionamentos dinâmicos entre os objetos que representam o sistema. Quando o
sistema é desenvolvido, os diagramas passam a incluir detalhes que levam a
geração de código.

A UML pode ser utilizada para especificar sistemas de qualquer natureza,


ser usada em todas as fases do processo de desenvolvimento, objetivando dar
suporte visual expressivo para que os usuários possam desenvolver e trocar
modelos entre si.

2.5.1 Diagrama de Classes

Diagrama de classes é considerado por muitos autores como o mais


importante e o mais utilizado diagrama da UML. Sua principal característica é
permitir a visualização das classes que irão compor o sistema com seus respectivos
atributos e métodos, bem como em demonstrar como as classes do sistema se
relacionam, se complementam e transmitem informações entre si.

O diagrama de classes é composto por suas classes e pelas associações


existentes entre elas, ou seja, os relacionamentos entre as classes.
10

2.5.2 Diagrama de Sequência

O diagrama de sequência equivale em modelar a interação entre os objetos


do sistema. Permite identificar postos específicos de execução do sistema. A
visualização do diagrama consiste identificar os objetos nas linhas verticais. Os
relacionamentos são através de setas e o decorrer do tempo visualização de cima
para baixo.

2.5.3 Diagrama de Atividades

O Diagrama de atividade é um diagrama referenciado pela Linguagem de


Modelagem Unificada (UML), e representa os fluxos conduzidos por
processamentos. É essencialmente um gráfico de fluxo, mostrando o fluxo de
controle de uma atividade para outra. Comumente isso envolve a modelagem das
etapas sequenciais em um processo computacional.

Os diagramas de atividade são importantes para a modelagem de aspectos


dinâmicos de um sistema ou um fluxograma, e também para a construção de
sistemas executáveis por meio de engenharia de produção reversa. Um diagrama de
atividade é um diagrama de estados, em que são representados os estados de uma
atividade, em vez dos estados de um objeto. Ao contrário dos diagramas de estados
que são orientados a eventos, diagramas de atividade são orientados a fluxos de
controle.

2.5.4 Diagrama de Implantação

O diagrama de distribuição ou implantação representa a configuração e a


arquitetura do sistema em que estarão ligados os respectivos componentes. O
diagrama de distribuição, ou de implantação, mostra como os componentes são
configurados para execução, em “nós” de processamento. Um diagrama de
implantação representa a topologia física do sistema e, opcionalmente, os
componentes que são executados nessa topologia. Pode-se dizer que esse
diagrama apresenta um mapeamento entre os componentes de software e o
hardware utilizado pelo sistema.
11

2.6 Projeto de Sistema Para Locação de Veículos

Este projeto para o Sistema de Locadora de Veículos. Será especificada a


arquitetura do sistema, através de uma proposta de desenho da arquitetura e dos
respectivos diagramas de classes e de sequência de implementação, diagrama de

Figura 1 - Desenho da Arquitetura MVC

Fonte: Autoria própria

distribuição, diagrama de atividades para o método calcularMulta() e o diagrama


entidade relacionamento. Os diagramas estão de acordo como a arquitetura MVC,
subdivididos em estereótipos para melhor delimitação do problema e organização
das classes, o que facilitar a manutenção futura do sistema.

Esse modelo de arquitetura MVC mostrado na figura 1 que as classes que estão na
View a exemplo a VeiculoForm envia eventos de usuários ao Controller e também
pode solicitar atualizações do Model. O Controller mapeia as ações de usuário para
atualizar o modelo e faz a seleção de várias Views. O Modelo faz o encapsulamento
do estado da aplicação e faz notificações a View de mudanças de estado. Temos
12

uma classe que denominamos de AplicaçãoFachada que faz a segurança fazendo a


proteção da View e Model das comunicações com sistemas externos, gerenciando
essa comunicação.

Figura 2 – Diagrama Entidade Relacionamento

Fonte: autoria própria


13

Figura 2 Mostramos uma possível solução para o Diagrama Entidade


Relacionamento onde foi definida as entidades de acordo com o diagrama de
classes, fazendo a conversão das agregações e associações do diagrama de
classes para relacionamentos no diagrama entidade relacionamento.

Figura 3 – Diagrama de Classe de Implementação Cadastrar Cliente

Fonte: autoria própria

A figura 3 mostras a classe de Implementação Cadastrar Cliente na a interação do


atendente com o cliente, a multiplicidade bem como a visualização interação da
View com o Controller previstos no modelo de arquitetura da figura 1.

Figura 4 - Diagrama de Classe de Implementação Cadastrar Veículo

Fonte: autoria própria


14

NA figura 4 mostra a classe de Implementação Cadastrar Veículo e a


interação do supervisor com o veículo, a multiplicidade bem como a visualização
interação da View com o Controller previstos no modelo de arquitetura da figura 1.

Figura 5 - Diagrama de Classe de Implementação Consultar Veiculo


Disponível

Fonte: autoria própria

A figura 5 mostra a classe de Implementação Consultar Veiculo Disponível


na interação do atendente com o veículo, a multiplicidade bem como a visualização
interação da View com o Controller previstos no modelo de arquitetura da figura 1.

A figura 6 mostra a classe de Implementação Consultar Veiculo Locado Dia e


a interação do supervisor com a locação, a multiplicidade bem como a visualização
interação da View com o Controller previstos no modelo de arquitetura da figura 1.

Figura 6 - Diagrama de Classe de Implementação Consultar Veiculo


Locado7Dia
Figura - Diagrama de Classe de Implementação Fazer devolução do
Veiculo

Fonte: autoria própria

Fonte: autoria própria


15

A classe de Implementação Fazer devolução do Veículo na figura 7 mostras


total interação do cliente com o veículo e a locação, a multiplicidade bem como a
visualização interação da View com o Controller previstos no modelo de arquitetura
da figura 1.

Figura 8 - Diagrama de Classe de Implementação Realizar Locação do


Veiculo

Fonte: autoria própria

A classe de Implementação Realizar Locação do Veículo na figura 8 mostras


clara interação do supervisor com o veículo e a locação, a multiplicidade bem como
a visualização interação da View com o Controller previstos no modelo de arquitetura
da figura 1.
16

Figura 9 - Diagrama de Sequência de Implementação Cadastrar Cliente

Fonte: autoria própria

O diagrama de sequência Cadastrar Cliente na figura 9 mostrada como


ocorre a sequência das operações necessárias para inserir um cliente no sistema. O
atendente chama o formulário, o controller retorna uma view para que seja
preenchido os dados do cliente, esses dados são enviados e assim persistindo no
retorno da mensagem.
17

Figura 10 - Diagrama de Sequência de Implementação Cadastrar Veículo

Fonte: autoria própria

O diagrama de sequência Cadastrar Veículo na figura 10 mostra como


ocorre a sequência das operações necessárias para inserir um veículo no sistema. O
supervisor chama o formulário, o controle retorna uma view pra que seja preenchido
os dados do veiculo, esses dados são enviados e persistidos retornando uma
mensagem.
18

Fonte: autoria própria

Figura 11 - Diagrama de Sequência de Implementação Consulta Veículos


Disponíveis

Fonte: autoria própria

O diagrama de sequência Consulta Veículos Disponíveis na figura 11 mostra


como ocorre a sequência das operações necessárias para consultar veículos
disponíveis no sistema. O atendente chama o formulário, o controller retorna uma
view pra que seja preenchido os dados do veículo consultado, esses dados são
enviados e retornados através do método consultarVeiculo() retornando uma lista de
veículos disponíveis
19

Figura 12 - Diagrama de Sequência de Implementação Consultar Veículos Locados


no dia

Fonte: autoria própria

O diagrama de sequência Mostra a Consultar Veículos Locados no dia na


figura 12 mostra como se passa a sequência das operações necessárias para
consultar veículos locados no dia no sistema. O supervisor chama o formulário, o
controller retorna uma view pra que seja preenchido os dados da consulta, esses
dados são enviados e retornados através do método consultarLocacaoDia()
retornando uma lista de locações com os parâmetros informados.
20

Figura 13 - Diagrama de Sequência de Implementação Fazer Devolução do Veículo

Fonte: autoria própria

O diagrama de sequência Fazer Devolução do Veículo na figura 13 mostra


como ocorre a sequência das operações necessárias para fazer a devolução de
veículos locados no sistema. O atendente chama o formulário, o controller retorna
uma view pra que seja preenchido os dados da devolução, esses dados são
enviados e retornados os dados do veículo. O sistema calcula o valor a ser pago
informa e emite um comprovante de devolução.
21

Figura 14 - Diagrama de Sequência de Implementação Realizar Locação do Veículo

Fonte: autoria própria

O diagrama de sequência Realizar Locação do Veículo demonstrada na


figura 14 mostras como ocorre a sequência das operações necessárias para realizar
a locação de um veículo no sistema. O cliente chama o formulário, o controle retorna
uma view para que seja preenchido os dados da locação, o sistema atualiza as
informações do veículo escolhido pelo cliente e efetua a locação.
22

Figura 15 - Diagrama de Atividades do Método CalcularMulta()

Fonte: autoria própria

O diagrama de atividades representada na figura 15 mostra como está


definido o fluxo do método calcularMulta(). Ao fazer a devolução, se estiver no prazo,
emite uma mensagem de devolução no prazo. Se estiver após o prazo, o sistema
calcula a multa, emite mensagem após o prazo e emite o valor da multa.
23

Figura 16 - Diagrama de Distribuição

Fonte: autoria própria

A figura 16 mostras a representa o diagrama de distribuição para o projeto do


sistema para locação de veículos.
24

3 CONCLUSÃO

Após extensa pesquisa sobre a teoria envolvendo a fase de Projeto e a


aplicação da mesma, conseguiu-se, com êxito, obter todos os conhecimentos
necessários para o entendimento deste importante Projeto Integrado Multidisciplinar
VII e assim permitindo colocar em prática todo o conhecimento aprendido em sala
de aula. Dessa forma a expectativa foi maior para que o trabalho tivesse êxito
completo e coerência, certamente foi necessário bem mais dedicação e empenho na
fase de pesquisa e elaboração do mesmo.

No decorrer deste trabalho, procurou-se utilizar uma linguagem acessível a


praticamente a todas as faixas etárias, ao mesmo tempo que se nivelava a teoria
com prática de forma a propiciar o resultado apresentado inicialmente, que seria
criar um sistema para Locadora de Veículos da empresa dos jovens irmãos,
apresentados do manual do PIM VII.

O projeto oportunizou desenvolver as habilidades de análise e


desenvolvimento de projeto, trilhando todos os estágios para isso, bem como fazer
com que se tivesse uma interação real com o mundo real de softwares e suas
dificuldades encontradas ao longo do seu desenvolvimento. Com um projeto bem
elaborado e estruturado, a fase do Desenvolvimento pode encontrar uma
maximização da sua produtividade, uma vez que os programadores terão um forte
embasamento oriundo da fase do Projeto. A análise deste projeto sem dúvida
atendeu as expectativas, pois novos conhecimentos foram absorvidos e o objetivo
principal foi atingido.
25

4 REFERÊNCIAS

GAMMA, E.; HELM, R.; JOHNSON, R.; VLISSIDES, J. Design patterns elements
of reusable of object-oriented software. second ed. Addison-Wesley, 1995.
I. Sommerville, Engenharia de Software, São Paulo: Addison-Wesley, 6ª edição,
2003.
J.C. Maldonado, S.C.P.F. Fabbri, “Teste de Software”. In: Qualidade de Software:
Teoria e Prática, Eds. A.R.C. Rocha, J.C. Maldonado, K. Weber, Prentice Hall, 2001.
MORGADO, Gisele P. RAPDIS: UM PROCESSO MDA PARA DESENVOLVIMENTO
DE SISTEMA DE INFORMAÇÃO. 2006. Artigo Sipósio Brasileiro de Sistema de
Informação. Universidade Federal do Rio de Janeiro, Rio de Janeiro, 2007.
R.S. Pressman, Engenharia de Software, Rio de Janeiro: McGraw Hill, 5ª edição,
2002.
S.L. Pfleeger, Engenharia de Software: Teoria e Prática, São Paulo: Prentice Hall,
2ª edição, 2004.
R. Sanches, “Processo de Manutenção”. In: Qualidade de Software: Teoria e Prática,
Eds. A.R.C. Rocha, J.C. Maldonado, K. Weber, Prentice Hall, 2001.
DENNIS, Alan; WIXOM, Barbara Haley; ROTH, Roberta M. Análise e Projeto de
Sistemas. 5 ed. Rio de Janeiro: LTC, 2014.
FURTADO, Alfredo Braga; COSTA JÚNIOR, Júlio Valente da. Práticas de Análise e
Projeto de Sistemas. Belém: abfurtado, 2010.

LARMAN, C. Utilizando UML e padrões: uma introdução à análise e ao projeto


orientados a objetos e ao processo unificado. 2. ed. Porto Alegre: Bookman,
2007.
LEE, Richard C; TEPFENHART, William M. UML e C++: Guia Prático de
Desenvolvimento Orientado a Objeto. São Paulo: Makron Books, 2002.

SILBERCHATZ, Abraham; F. KORTH, Henry; SUDARSHAN, S. Sistema de Banco


de Dados. 6ª Edição. São Paulo: Elsevier, 2012.

Você também pode gostar