Buscar

PIM_VI

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 38 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 38 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 38 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

22
UNIP INTERATIVA
Projeto Integrado Multidisciplinar
Cursos Superiores de Tecnologia
	
	
	
	
	
	
	
	
	
	
	GOMES LUIZ 
	RA 1610235
“SISTEMA WEB VENDAS DE LIVROS E-COMMERCE”
Projeto de Desenvolvimento de Sistema de Vendas pela Internet 
Utilização de Análise de Sistemas Orientado a Objetos,
Banco de Dados e Gestão Estratégica de Recursos Humanos 
POLO xxxxxxxxx – SP
2016
UNIP INTERATIVA
Projeto Integrado Multidisciplinar
Cursos Superiores de Tecnologia
	GOMES 
	RA 1610235
“SISTEMA WEB VENDAS DE LIVROS E-COMMERCE”
Projeto de Desenvolvimento de Sistema de Vendas pela Internet 
Utilização de Análise de Sistemas Orientado a Objetos,
Banco de Dados e Gestão Estratégica de Recursos Humanos 
Projeto Integrado Multidisciplinar IV 
para obtenção do título de Tecnólogo em Análise e Desenvolvimento de Sistemas apresentado à Universidade Paulista. UNIP.
Orientador: Prof. Angel Antonio Gonzalez Martinez
POLO xxxxxxxxx – SP
2016
RESUMO
Este trabalho acadêmico tem como objetivo: a explanação ao desenvolvimento de uma aplicação computacional voltada às necessidades de um professor de ensino fundamental e também a demonstração de bases de desenvolvimento de projeto de softwares, com foco na disciplina de Engenharia de Software, apresentando seu histórico, avaliando e fundamentando princípios, processos, práticas, métodos, técnicas, análise do projeto e metodologias para o desenvolvimento de software. 
Tendo-se como base a prática inserida pelo desenvolvimento de um software em linguagem de programação “C”, o qual previamente proposto coloca uma situação real de desenvolvimento de uma aplicação para o cadastro de alunos de ensino médio com os requisitos de cálculos e funções para saídas das médias de cada aluno, com registro de matrícula e a média do conjunto de alunos com diretivas e regras delimitando as funções de saída de dados, possibilitando o entendimento da “informação” como o conjunto de dados agrupados de forma delineada para o entendimento do usuário final. 
Demonstrando os aspectos do processo de software ,etapas do processo, análise de requisitos, modelo de ciclo de vida de software utilizado, abordagens aos métodos ágeis e a metodologia considerada na prática, será possível demonstrar com grande eficácia os produtos da tecnologia resultantes do desenvolvimento da programação de software e os benefícios de sua engenharia.
Palavras-chave: Engenharia de Software, modelo de ciclo de vida de software, métodos ágeis.
ABSTRACT
This academic work aims: the explanation to the development of a computational application focused on the needs of a primary school teacher and also the demonstration of bases of development of software projects, focusing on the discipline of Software Engineering, presenting its history, Evaluating and grounding principles, processes, practices, methods, techniques, project analysis and methodologies for software development.
Based on the practice inserted by the development of a software in programming language "C", which previously proposed puts a real situation of development of an application for the registration of high school students with the requirements of calculations and Functions for the outputs of the averages of each student, with enrollment and the average of the set of students with directives and rules delimiting the functions of data output, enabling the understanding of "information" as the group of data grouped in a way delineated for the Understanding of the end user
Demonstrating aspects of the software process, process steps, requirements analysis, system development life cycle , approaches to agile methods and the methodology considered in practice, it will be possible to demonstrate with great effectiveness the technology products resulting from the development of the Software programming and the benefits of its engineering.
Keywords: Software Engineering, System Development Life Cycle, Agile Methods.
SUMÁRIO
	1. INTRODUÇÃO........................................................................................................
	...7
	1.1 Definições iniciais, e-Commerce e loja Virtual.............................................. 
	..7
	2. CENÁRIO DO PROJETO........................................................................................ 
	..11
	3. MATERIAIS E MÉTODO PARA O SISTEMA DE VENDAS...................................
	...7
	3.1 Materiais........................................................................................................... 
	..7
	3.2 Métodos............................................................................................................ 
	..7
	4. REQUISITOS, ESCOPO DO SISTEMA.................................................................... 
	16
	4.1 Requisitos e Modelagem do Sistema............................................................... 
	16
	4.1.1 Requisitos Funcionais................................................................................
4.1.2 Requisitos não Funcionais.......................................................................... 
	17
xx
	5. CASOS DE USO...................................................................................................... 
	19
	5.1 Identificação dos Casos de Uso, descrição..................................................... 
	19
	6. REGRAS DO NEGÓCIO......................................................................................... 
	21
	7.1 Modelo adotado pelo software “Controle de Notas”................................... 
	21
	7. DIAGRAMA DE CLASSE.................................................................... 
	23
	8.1 Análise Geral do software “Controle de Notas”........................................... 
	24
	8. MODELO ENTIDADE RELACIONAMENTO, MER.................................................. 
	23
	8.1 Análise Geral do software “Controle de Notas”........................................... 
	24
	9. GESTÃO ESTRATÉGICA DE RECURSOS HUMANOS........................................ 
	23
	 CONCLUSÃO...........................................................................................................
	25
	 REFERÊNCIAS........................................................................................................
	26
LISTA DE ILUSTRAÇÕES
	Figura 01 – Desenvolvimento de programação utilizando software Dev-C++.
	10
	Figura 02 – Sintaxe, semântica, comentários no código.
	15
	Figura 03 – Execução, testes, verificação.
	17
	Figura 04 – Execução do software.
	22
	
	
1. INTRODUÇÃO
Através de uma visão geral no desenvolvimento de um sistema web de vendas, focado inicialmente nas atividades e comportamento de um usuário, possível cliente de uma loja de livros, em frente a vitrine virtual da loja de livros em suas compras destes produtos por meio eletrônico, englobando algumas regras de negócio singulares ao tipo do comércio, este estudo de caso demonstra no decorrer do desenvolvimentos dos capítulos, todas ou grande parte das fases, métodos e conceitos utilizados para o desenvolvimento deste sistema.
1.1 Definições iniciais, e-Commerce e loja Virtual.
Tratando-se diretamente ao desenvolvimento deste sistema de vendas pela internet, torna-se prioritária a definição de alguns conceitos para melhor entendimento deste estudo de caso. 
O e-commerce, abreviação para electronic commerce, do inglês cuja tradução significa comércio eletrônico, é um forma de vendas sendo realizadas pela internet,sistemas móveis como celulares “smartphones” e tem um sentido amplo no comércio realizado através de meios eletrônicos.
Com o crescimento acentuado do e-commerce, nos últimos anos, houve também um crescimento da modalidade de vendas em lojas virtuais, sendo então um novo parâmetro no comércio eletrônico, onde que anteriormente havia a loja física passando a migrar para a loja virtual, hospedada em servidores especializados ou não, abrindo uma gama gigantesca de negócios virtuais e também a possibilidade a todo tipo de empreendedor e empreendimentos serem implantandos sem a necessidade de custos elevados como o de uma loja física.
2. CENÁRIO DO PROJETO
Uma livraria necessita do desenvolvimento de uma loja virtual, e-commerce, para a venda de seus livros. Porém com algumas singularidades definiou-se alguns requisitos e delimitações para o desenvolvimento deste sistema para a livraria.
Com alguns aspectos como: acesso do usuário ao site através de login e senha, cadastro no site no caso de ser o primeiro acesso do usuário, possibilidade de reservar um livro na condição da ausência da quantidade do mesmo em estoque, dentre outras delimitações e regras, o sistema foi desenvolvido com sua análise orientada a objetos focando as referências a seguir:
· Requisitos do cenário proposto;
· Classificação dos requisitos;
· Identificação dos casos de uso;
· Elaboração do modelo de casos de uso, com a identificação dos relacionamentos de include, extend e generalização;
· Descrição do comportamento, fluxos, pré e pós-condições de cada caso de uso;
· Descrição de requisitos não funcionais e de usabilidade;
· Identificação e descrição do contexto de uso (usuários, tarefas e ambientes);
· Descrição das regras do negócio;
· Elaboração do diagrama de classes de análise (Boundary, Control e Entity );
· Construção do modelos de dados (MER), modelo entidade relacionamento.
Seguindo-se por fim à uma análise dentro da gestão estratégica dos recursos humanos inseridos no projeto. 
3. MATERIAIS E MÉTODOS, SISTEMA DE VENDAS DE LIVROS
Embora, dentro do cenário apresentado, não ocorrendo o estabelecimento dos materiais para o desenvolvimento do sistema, para o projeto deste estudo de caso inicialmente definiram-se os materiais e o método utilizados para a análise e o desenvolvimento do sistema, procurando-se dessa forma evidênciar as várias etapas, necessidades e implementações necessárias ao desenvolvimento, entrega e . 
Os materiais são as ferramentas e as tecnologias, incluindo linguagem de programação, banco de dados, interface de desenvolvimento e aplicativo para análise e modelagem. 
O método se refere aos procedimentos utilizados no ciclo de vida do sistema, abrangendo da definição dos requisitos à implementação do sistema. 
 
3.1 Materiais 
 
As ferramentas utilizadas para as atividades de desenvolvimento de programação, modelagem, implementação e execução da loja virtual são:
· PHP como linguagem de programação;
· HTML como linguagem de marcação;
· CSS para estilização das páginas web;
· Astah Community para modelagem dos diagramas, como o de casos de uso e de classes; 
· SublimeText para desenvolvimento dos códigos de programação;
· xxxxxx para modelagem do diagrama de entidades e relacionamentos, MER; 
· Servidor de Hospedagem baseado em Apache;
· MySQL para gerenciar o banco de dados;
· phpMyAdmin para administração do MySQL.
 3.1.1 PHP 
Hypertext Preprocessor originalmente como Personal Home Page, o PHP é uma linguagem de programação de código-fonte aberto, interpretada, criada especialmente para desenvolvimento web, podendo ser incorporada ao código HTML. O código PHP é delimitado por tags iniciais e finais (no exemplo da Figura 1 são utilizadas as tags <?php ?>) que permitem entrar e sair do modo PHP. A Figura 1 apresenta um exemplo de código HTML e PHP mesclados. 
Figura 1
 Exemplo de código mesclando PHP e HTML. Fonte autoria própria. 2017
 
Embora seja possível mesclar PHP com HTML, é também possível e mesmo adequado manter os códigos separados. Desta forma, atualizações e manutenções são facilitadas e o reuso pode ser facilmente realizado. 
Apesar de ser relativamente simples para um usuário iniciante, PHP oferece muitos recursos para programação avançada. Os scripts PHP precisam de um servidor para ser executados, como por exemplo, o Apache. 
 
3.1.2 HTML 
HTML significa Linguagem de Marcação de Hipertexto. Trata-se de uma linguagem de marcação utilizada para produzir páginas web. Os elementos são definidos através de tags (marcações), que funcionam como comandos de formatação de textos, formulários, links, imagens, tabelas, entre outros. A Figura 6 apresenta um trecho de código HTML. 
Figura 2
 
Exemplo de código HTML 
 
 
3.1.3 CSS 
 	 
 
CSS significa folhas de estilo em cascata e trata-se de uma linguagem de estilo utilizada para definir a apresentação de documentos escritos em uma linguagem de marcação, como HTML ou XML. Seu principal benefício é prover a separação entre o formato e o conteúdo de um documento. 
No lugar de criar uma formatação dentro do documento HTML, deve ser criado um link para uma página contendo os estilos CSS. Esta página de estilos pode ser vinculada em muitos documentos. Desta forma, quando se fizer necessário alterar a aparência de todas as páginas de um website, basta modificar apenas um arquivo. Na Figura 6 está um exemplo de código CSS para estilização dos botões da loja virtual de venda de papel de parede.
Figura 4 
Exemplo de estilização CSS
 
3.1.4 SublymeText
3.1.5 Astah Community 	 
 
Astah Community (ASTAH, 2013) é um aplicativo para modelagem UML (Unified Modeling Language) 2.x que permite elaborar diagramas de classes, casos de uso, estados, atividades, sequência, comunicação, componentes, distribuição, estrutura composta, objetos e pacotes. 
A versão Community da ferramenta Astah é gratuita. Os arquivos gerados podem ser exportados no formato JPG (Joint Photographic Experts Group) e PNG (Portable Network Graphics). Apesar de apresentar alguns recursos indisponíveis na versão não paga, possibilita o desenvolvimento de todos os diagramas necessários para a modelagem de sistemas. A Figura 3 é uma imagem da tela principal dessa ferramenta. 
Figura 5
Ferramenta Astah Community 
 
3.1.6 Diagram.....
 
O DBDesigner 4 é um aplicativo para modelagem de dados. Esse aplicativo permite construir modelos lógicos e físicos de dados, comparar e sincronizar modelos, gerar SQL (Structured Query Language) e DDL (Data Definition Language) e criar e modificar os scripts para gerar o banco de dados. Na Figura 4 está a tela inicial da Ferramenta Toad em sua versão freeware. 
Figura 6
 Ferramenta Toad Data Modeler 
 3.1.7 Servidor de Hospedagem, Apache 	 
Um servidor web é o responsável por processar informações e disponibilizar o conteúdo das páginas que se quer acessar. Um servidor é necessário para que as páginas web (os sites web) e os aplicativos que executam nesse ambiente possam ser acessados. 
As principais características do servidor Apache são (MAZIOLI, 2013): 
a) Possui suporte a scripts CGI (Common Gateway Interface) usando linguagens como Perl, PHP, Shell Script, ASP, etc.; 
b) Suporte a autorização de acesso, podendo ser especificadas restrições de acesso separadamente para cada endereço/arquivo/diretório acessado no servidor; 
c) Autenticação requerendo um nome de usuário e senha válidos para acesso a alguma página/sub-diretório/arquivo (suportando criptografia via 
Crypto e MD5 - Message-Digest algorithm 5); 
d) Negociação de conteúdo, permitindo a exibição da página web no idioma requisitado pelo cliente/navegador; 
e) Suporte a tipos mime; 
f) Personalização de logs; 
g) Mensagens de erro; 
h) Suporte a hosting virtual (é possível servir duas ou mais páginas com endereços/ portas diferentes através do mesmo processo ou usar mais de um processo para controlar mais de um endereço); 
i) Suporte a IP (Internet Protocol) virtual hosting; 
j) Suporte a name virtual hosting; 
k) Suporte a servidor Proxy FTP (File Transfer Protocol) e HTTP(Hypertext Transfer Protocol), com limite de acesso, caching; 
l) Suporte a proxy e redirecionamentos baseados em URLs (Universal 
Resource Locator) para endereços internos; 
m) Suporte a criptografia via SSL (Transport Layer Security), certificados digitais; 
n) Módulos Dynamic Shared Objects (DSO) permitem adicionar/remover funcionalidades e recursos sem necessidade de recompilação do programa. 
 
 3.1.8 MySQL 
 
O MySQL é um sistema de gerenciamento de banco de dados que utiliza a linguagem SQL como interface (MYSQL, 2013). O MySQL é de código fonte aberto e dentre as principais características estão a sua portabilidade (suporta diversas plataformas atuais), compatibilidade, excelente desempenho e estabilidade, pouca exigência quanto a recursos de hardware e facilidade no manuseio
Ao longo do tempo, diversos sistemas de informação e tipos de aplicação de software foram surgindo, abrangendo quase que totalmente todas as atividades
Figura 7
Desenvolvimento de código de programação utilizando software Dev-C++
3.1.9 phpMyAdmin
O phpMyAdmin é um aplicativo web livre e de código aberto desenvolvido em PHP para administração do MySQL pela Internet. A partir deste sistema é possível criar e remover bases de dados, criar, remover e alterar tabelas, inserir, remover e editar campos, executar códigos SQL e manipular campos chaves.
Figura 8
3.2 Métodos 
Principais atividades realizadas para o desenvolvimento do sistema de vendas de livros pela internet foram: 
Levantamento de Requisitos, onde os requisitos foram levantados e definidos tendo como base a necessidade de desenvolver uma loja virtual para venda de livros. O levantamento de requisitos foi realizados a partir da identificação das informações que teriam necessidade de se manter, de forma a facilitar as vendas e o controle interno da loja. 
Planejamento, com a definição de recursos e estrutura da loja virtual, definição dos requisitos técnicos para o funcionamento (forma de pagamento por cartão de crédito, quantidade de produtos etc.) e definição e modelagem dos requisitos do sistema por meio de casos de uso e diagrama de entidades e relacionamentos. 
Desenvolvimento, modelagem da loja virtual e implementação das funcionalidades utilizando a linguagem de programação PHP, visando apresentar o uso das tecnologias no desenvolvimento do site. 
Testes, os testes de funcionalidade, navegabilidade e compatibilidade foram realizados pela equipe desenvolvedora do projeto. 
 
 
4. REQUISITOS, ESCOPO DO SISTEMA 
 O sistema é uma loja virtual para comercialização de livros (e-commerce) e tem por funções permitir: 
· Administração dos livros disponíveis para venda, possibilitanto o cadastro de novos livros com fotos, descrição, detalhes do produto e preço, edição de produtos já existentes e a exclusão de livros que não se encontram mais disponíveis. 
· Filtrar livros por categorias. 
· Buscar livros por palavra-chave. 
· Realizar um cadastro do usuário, caso seja a primeira compra dele, ou realizar o login, no caso de clientes já cadastrados. 
· Possibilitar ao usuário a adição de um ou mais livros no carrinho de compras, bem como a exclusão e alteração na quantidade de cada um deles, atualizando o valor da compra, se necessário. 
· Envio de e-mail (Electronic mail) para o endereço cadastrado, contendo os dados da compra, descrição dos produtos comprados, bem como total do pedido. 
· Envio de e-mail (Electronic mail) para o endereço cadastrado, para o caso de recuperação de conta ou senha.
4.1 Requisitos e Modelagem do Sistema 
O sistema foi feito com a modelagem baseada na UML (Unified Modeling Language). Booch, Jacobson e Rumbaugh (2005, p. 13) afirmam que “a UML é uma linguagem-padrão para a elaboração da estrutura de projetos de software. A modelagem do sistema, através da UML, poderá ser empregada para a visualização, a especificação, a construção e a documentação de artefatos que façam o uso de sistemas complexos de software”. 
Com isso os principais requisitos definidos para o sistema com relação as permissões para o cliente, foram: 
· Realização do seu cadastro; 
· Realização de compras; 
· Realização de busca de livros;
· Edição dos dados cadastrais;
· Recuperação de senha e cadastro; 
· Inclusão e retirada de livros no carrinho de compras; 
· Inclusão de uma lista de livros em “reserva” para o caso de falta no estoque.
O sistema também permitiu que o administrador realizasse: 
· Cadastro de livros;
· Edição dos livros;
· Exclusão dos livros;
· Alteração em estatus de pedidos.
4.1.1 Requisitos Funcionais 
Para um melhor entendimento e nível de organização os requisitos foram nomeados através da abreviação RF seguidos ao valor inteiro crescente, como por exemplo: RF1, significando requisito funcional de número 1 (um).
Abaixo segue os principais requisitos funcionais identificados e descritos para a análise do sistema:
· RF1 - O sistema permitirá cadastro de clientes, cadastro de livros, cadastro de pedidos de livros reservados, detalhes dos livros, fornecendo as respectivas informações necessárias:
· RF2 - No cadastro de livros será obrigatório o preenchimento dos seguintes campos: autor, editora, edição e terá a quantidade.
· RF3 - No cadastro de clientes será obrigatório o preenchimento dos seguintes campos: nome completo, data de nascimento, endereço (rua, bairro e cidade (chave estrangeira da tabela Cidades)), telefone, login e senha.
· RF4 -Realização de Vendas, o sistema permitirá fazer vendas condicionais gerando código de “RESERVA” para os mesmos, que posteriormente podem ser recuperados e passarem para venda fechada.
· RF5 – Em qualquer tipo de venda será obrigatório o preenchimento do cliente que está realizando a compra.
· RF6 - No momento de efetuar alguma venda será necessário selecionar produtos. O sistema permitirá selecionar somente produtos que estejam em estoque e disponíveis para venda e a quantidade disponível em estoque.
· RF7 - Ao ser finalizada uma venda, o(s) produto(s) vendido(s) deverá(ão) ficar indisponível para a venda e o mesmo será decrementado do valor total de unidades disponíveis. 
4.1.2 Requisitos Não-Funcionais, Usabilidade
Para descrever o sistema de software não basta detalhar os requisitos funcionais, torna-se necessário descrever outros aspectos como atributos do sistema, ambiente do sistema, etc.
Segundo a classificação de Sommerville (2010, p.88), a classificação dos requisitos não funcionais se divide em: requisitos organizacionais, de produto e externos.
Para o sistema de vendas de livros observou-se os requisitos quanto ao usuário, administrador, dando ênfase à alguns requisitos de usabilidade a requisitos externos como o sistema de gerenciamento de dados.
· RNF1 - O sistema deve ter uma inteface simples e com soluções intuitivas.
· RNF2 – O acesso do usuário ao sistema se dará pela informação de usuário e senha.
· RNF3 - As informações serão armazenadas em um Banco de Dados.
· RNF4 - O sistema poderá ser acessado somente pelo administrador do sistema ou operador devidamente cadastrado no sistema;
· RNF4.1 - O acesso ao sistema se dará pela informação de usuário e senha; 
· RNF4.2 - O administrador do sistema terá acesso à todas as áreas do sistema, com permissão de leitura, exclusão, inclusão e alteração.
· RNF4.3 - Permissão para consultar produtos e seu estoque;
· RNF4.4 - Permissão para concluir vendas no sistema.
5. CASOS DE USO
Para melhor exemplificar o sistema de vendas de livros, de forma simples a ser facilmente identificado e analisado por usuários, analistas e desenvolvedores, os casos de uso sendo bem descritos e definidos possibilitam o conhecimento do domínio do problema e suas funcionalidades.
No projeto do sistema de vendas de livros pela internet, utilizou-se a modelagem do mesmo de forma a exemplificar as aplicações, funcionalidades e principalmente o processo de engenharia de requisitos, abordado em capítulos anteriores.
O caso de uso abordou e descreveu as ações e comportamentos do sistema produzindo resultados para os agentes externos deste caso de uso: “Cliente”, “Administrador”,“SGBD com a base de dados” e sistema externo para validação e pagamento de “Operadora Cartão de Crédito”. 
A Figura 12 apresenta o diagrama de casos de uso definido para o sistema.
 Figura 12 – Diagrama de casos de uso 
 5.1 Descrição dos casos de uso
Os casos de uso são descritos em linguagem natural e sequencialmente, para o estudo de caso deste sistema utilizou-se também o passo a passo das atividades de forma numerada.
Quadro 1 – Realizar Login
	Identificação: Realizar Login. 
Escopo: Tela Inicial. 
Descrição: Este caso de uso permite que o cliente acesse o Site.
Atores: Cliente, Banco de Dados. 
Pré-condição: Cliente deve estar Cadastrado no Sistema. 
Sequência de Eventos: 
1 – Usuário informa os dados de acesso, nome ou e.mail e senha. 
2 – Sistema valida os dados. 
3 – Sistema retorna mensagem de login efetuado com sucesso. 
Pós-Condição: Dados validados no banco de dados, gerado acesso no contador. 
Extensões: Se dados forem informados incorretamente o sistema deverá pedir para que eles sejam informados novamente. 
	Nome do fluxo alternativo (extensão) 
	Descrição 
	Informações inválidas 
	Se a informação prescrita for inválida o usuário deverá informá-la de novo. 
	
	
	Inclusões: Validar dados. 
Requisitos não funcionais: se o nome ou senha são inválidos. 
	Identificador 
	Nome 
	Descrição 
	RNF1.1 
	Realizar Login 
	As informações descritas só poderão ser cadastras se estas forem validadas com sucesso 
	
	
	
 	Quadro 2 – Realizar Cadastro 
	Identificador do requisito: Realizar cadastro. 
Descrição: Este caso de uso permite que o cliente realize seu cadastro. Evento Iniciador: Tela de cadastros disponíveis. 
Atores: Cliente. 
Pré-condição: Não há. 
Sequência de Eventos: 
4 – Usuário informa os dados de cadastro. 
5 – Sistema valida os dados e os inclui em um banco de dados. 
6 – Sistema retorna mensagem de cadastramento efetuado com sucesso. 
Pós-Condição: Dados inseridos no banco de dados. 
Extensões: Se dados forem informados incorretamente o sistema deverá pedir para que eles sejam informados novamente. 
	Nome do fluxo alternativo (extensão) 
	Descrição 
	Informações inválidas 
	Se a informação prescrita for inválida o usuário deverá informá-la de novo. 
	
	
	Inclusões: Validar dados. 
Requisitos não funcionais: se o CPF (Cadastro de Pessoas Físicas) é inválido. 
	Identificador 
	Nome 
	Descrição 
	RNF1.1 
	Cadastrar 
	As informações descritas só poderão ser cadastras se estas forem validadas com sucesso 
	
	
	
Quadro 1 – Caso de uso realizar cadastro 
Quadro 3 – comprar Livros. 
Identificador do requisito: Comprar Livros. 
Descrição: Este caso de uso permite que o cliente inclua os livros selecionados no carrinho de compras para finalizar a compra posteriormente. 
Evento Iniciador: Tela de apresentação da lista de livros. 
Atores: Cliente. 
Pré-condição: Para uma compra ser realizada deve haver livro em estoque. 
Sequência de Eventos: 
1 – Cliente seleciona o Livro. 
2 – Cliente inclui o produto no carrinho de compra(se desejar). 
3 – Cliente insere pagamento/cartão. 5 – Sistema finaliza Compra. 
Quadro 2 – Caso de uso efetuar compras 
 
 
 
Quadro 4. 
Identificador do requisito: Buscar produtos. 
Descrição: Este caso de uso permite que o cliente realize busca de produtos. Evento Iniciador: Tela de vitrine de produtos. 
Atores: Cliente. 
Pré-condição: não há. 
Sequência de Eventos: 
1 – Cliente informa palavra ou categoria desejada. 
2 – Sistema busca a palavra ou categoria. 
3 – Sistema retorna mensagem de não encontrada ou apresenta o item pesquisado na tela. Pós-Condição: Produtos que atendem aos critérios de busca apresentados. 
Quadro 4 – Caso de uso buscar produtos 
 
Quadro 5 realizar Pagamento . 
	Identificador do requisito: Realizar Pagamento. 
Descrição: Este caso de uso realiza o pagamento via cartão de crédito. Evento Iniciador: Tela de finalização de compra. 
Atores: Cliente. 
Pré-condição: Compra realizada com a escolha dos livros finalizada. 
Seqüência de Eventos: 
1 – Cliente insere dados do cartão. 
2 – Sistema faz requisição com Gateway de pagamento e finaliza a compra. 
3 – O status do pedido é alterado para Aguardando Pagamento. 
Pós-Condição: Compra cadastrada e em status de aguardando pagamento. 
Extensões: Somente poderá ser efetuado o pagamento via cartão de crédito, após a finalização o status do pedido será alterado. 
	Nome do fluxo alternativo (extensão) 
	Descrição 
	Alteração do status do pedido 
	somente poderão ser selecionadas formas de pagamentos cadastradas, no caso via cartão de crédito. 
	
	
Quadro 5 – Realizar Pagamento 
 
	 
Quadro 6 – Editar Dados Cadastrais. 
	Identificador do requisito: Editar dados cadastrais. 
Descrição: Este caso de uso permite que o cliente edite seu cadastro. Evento Iniciador: Tela de cadastro. 
Atores: Cliente. 
Pré-condição: Cadastro ter sido realizado. 
	Sequência de Eventos: 
1 – Cliente altera dados informados. 
2 – Sistema valida os dados e os inclui em um banco de dados. 
3 – Sistema retorna mensagem de cadastro editado com sucesso. 
Pós-Condição: Dados inseridos no banco de dados. 
Extensões: Se dados forem informados incorretamente o sistema deverá pedir para que eles sejam informados novamente. 
	Nome do fluxo alternativo (extensão) 
	Descrição 
	Informações inválidas 
	Se a informação prescrita for inválida o usuário deverá informá-la de novo. 
	
	
	Inclusões: Validar dados. 
Requisitos não funcionais: Se o número do CPF for inválido. 
	Identificador 
	Nome 
	Descrição 
	RNF1.1 
	Editar Cadastro 
	As informações descritas só poderão ser editadas se estas forem validadas com sucesso. 
	
	
	
Quadro 7 – Caso de uso inclusão de dados cadastrais 
 
Quadro 8 incluir itens no carrinho de compras. 
 
Identificador do requisito: Incluir itens no carrinho de compras. 
Descrição: Este caso de uso permite que o cliente inclua itens no carrinho de compras. Evento Iniciador: Tela de vitrine de produtos. 
Atores: Cliente. 
Pré-condição: não há. 
Sequência de Eventos: 
1 – Cliente seleciona produtos. 
2 – Cliente adiciona produtos no carrinho de compras. 
3 – Sistema gerencia a inclusão e exclusão de itens no carrinho de compras, bem como a quantidade de itens. 
Pós-Condição: itens incluídos no carrinho de compras. 
Quadro 8 – Caso de uso incluir itens no carrinho de compras 
 	 
CASOS DE USO ADMINISTRADOR
Quadro 9 – Cadastrar Livros 
	Identificador do requisito: Cadastrar livros. 
Descrição: Este caso de uso permite que o administrador cadastre livros. Evento Iniciador: Tela de cadastro de produtos disponíveis. 
Atores: Administrador. 
Pré-condição: não há. 
	Sequência de Eventos: 
1 – Administrador informa dados. 
2 – Sistema valida estes dados e os inclui no banco de dados. 
3 – Sistema retorna mensagem de cadastramento efetuado com sucesso. 
Pós-Condição: Dados de cadastro de produtos incluídos no sistema. 
Quadro 9 – Caso de uso cadastrar produtos 
 
Quadro 10. 
	Identificador do requisito: Editar cadastro . 
Descrição: Este caso de uso permite que o administrador edite cadastro de Livros. Evento Iniciador: Tela de cadastro de livros. 
Atores: Administrador. 
Pré-condição: Para que o administrador edite o cadastro do livro, o mesmo deverá ter sido cadastrado. 
	Sequência de Eventos: 
1 – Administrador altera dados informados. 
2 – Sistema valida os dados e os inclui no banco de dados. 
3 – Sistema retorna mensagem de dados alterados (incluídos) com sucesso. 
Pós-Condição: Dados informados incluídos. 
Extensões: Se dados forem informados incorretamente o sistema deverá pedir para que eles sejam informados novamente. 
	Nome do fluxo alternativo (extensão) 
	Descrição 
	Informações inválidas 
	Se a informação prescrita for inválida o usuário deverá informá-la de novo. 
	
	
	Inclusões: Validar dados. 
	Identificador 
	Nome 
	Descrição 
	RNF1.1 
	Editar Cadastro de Produto 
	As informações descritas só poderão ser editadas se estas forem validadas com sucesso. 
	
	
	
	
	
	
Quadro 10 – Caso de uso editar cadastro de livros 
 
Quadro 11 uso editar preço delivros. 
	Identificador do requisito: Editar preço de livros. 
Descrição: Este caso de uso permite que o administrador edite preço de Livros. Evento Iniciador: Tela de cadastro de produtos. 
Atores: Administrador. 
Pré-condição: Para que o administrador edite o preço do produto o mesmo deverá ter sido cadastrado. 
	Sequência de Eventos: 
1 – Administrador altera preço do livro. 
2 – Sistema valida estes dados e os inclui em um banco de dados. 
3 – Sistema retorna mensagem de preço editado com sucesso. 
Pós-Condição: Dados inseridos no banco de dados. 
Extensões: se dados forem informados incorretamente o sistema deverá pedir para que eles sejam informados novamente. 
	Nome do fluxo alternativo (extensão) 
	Descrição 
	Informações inválidas 
	Se a informação prescrita for inválida o usuário deverá informá-la de novo. 
	
	
	Inclusões: Validar dados. 
	Identificador 
	Nome 
	Descrição 
	RNF1.1 
	Editar Preço do Produto 
	As informações descritas só poderão ser editadas se estas forem validadas com sucesso. 
	
	
	
Quadro 11 – Caso de uso editar preço de produtos 
 
Quadro 12 Atualizar estoque. 
	Identificador do requisito: Atualizar estoque. 
Descrição: Este caso de uso permite que o administrador atualize o estoque de livros , essa atualização é feita somente pela exclusão do livro se o mesmo não for mais posto a venda. 
Evento Iniciador: Tela de cadastro disponível. 
Atores: Administrador. 
Pré-condição: para atualizar o estoque de um livro o mesmo deverá estar cadastrado. 
	Sequência de Eventos: 
1– Administrador em contato com a editora, é informado que o livro não será mais editado . 
2– O administrador lista e exclui o produto, o cadastro é removido do banco de dados. 3 – Sistema de produto removido atualizado com sucesso. 
Pós-Condição: Não há. 
Quadro 12 – Caso de uso atualizar estoque 
 Quadro 13-Consultar Pedidos
	Identificador do requisito: Consultar pedidos. 
Descrição: Este caso de uso permite que o administrador consulte pedidos. Evento Iniciador: tela de pedidos realizados. 
Atores: Cliente. 
Pré-condição: Ter pedidos realizados. 
	Sequência de Eventos: 
1 – Cliente consulta pedidos. 
2 – Sistema retorna listagem de pedidos realizados. 
Pós-Condição: Não há. 
Quadro 13 – Caso de uso consultar pedidos 
 
MODELO DE DADOS (MER) 
 
 
Na Figura 14 está o diagrama de entidades e relacionamentos definido para a loja virtual de papel de parede. 
 
Figura 14 – Diagrama de entidades e relacionamentos 
 
O Quadro 16 apresenta a tabela de Cadastro. 
	Campo 
	Tipo 
	Nulo 
	Chave primária 
	Chave estrangeira 
	Id 
IdCidade 
Nome 
Email 
Cpf 
Rg 
DataNasc 
Fone 
Login 
Senha 
Logradouro 
CEP 
Bairro 
Numero 
	Integer 
Integer 
Varchar 
Text 
Varchar 
Varchar 
Date 
Integer 
Varchar 
Varchar 
Varchar 
Integer 
Varchar 
Integer 
 
	Não 
Não 
Não 
Não 
Não 
Não 
Não 
Não 
Não 
Não 
Não 
Não 
Não 
Não 
	Sim 
Não 
Não 
Não 
Não 
Não 
Não 
Não 
Não 
Não 
Não 
Não 
Não 
Não 
	Não 
Sim 
Não 
Não 
Não 
Não 
Não 
Não 
Sim 
Não 
Não 
Não 
Não 
Não 
 
Quadro 16 – Campos da tabela Cliente 
 
O Quadro 19 apresenta a tabela de Livros 
	Campo 
	Tipo 
	Nulo 
	Chave primária 
	Chave estrangeira 
	Id 
Autor 
PreçoLivro 
Edicao 
Titulo 
	Integer 
Varchar 
Double 
Varchar 
Varchar 
	Não 
Não 
Não 
Não 
Não 
	Sim 
Não 
Não 
Não 
Não 
	Não 
Não 
Não 
Não 
Sim 
Quadro 19 – Campos da tabela Livro 
 
O Quadro 20 apresenta a tabela de EstoqueLivros. 
	Campo 
	Tipo 
	Nulo 
	Chave primária 
	Chave estrangeira 
	Id 
Quantidade 
	Integer 
Integer
	Não 
Não 
	Sim 
Não 
	Não 
Não 
Quadro 20 – Campos da tabela Status 
 
O Quadro 21 apresenta a tabela de Carrinho. 
	Campo 
	Tipo 
	Nulo 
	Chave primária 
	Chave estrangeira 
	Id 
IdLivro 
IdPedido 
Quantidade 
	Integer 
Integer 
Integer 
Integer 
	Não 
Não 
Não 
Não 
	Sim 
Não 
Não 
Não 
	Não 
Sim 
Sim 
Não 
Quadro 21 – Campos da tabela Carrinho
 
O Quadro 22 apresenta a tabela Administrador. 
	Campo 
	Tipo 
	Nulo 
	Chave primária 
	Chave estrangeira 
	Id 
Nome 
Login 
Senha 
	Integer 
Varchar 
Varchar 
Varchar 
	Não 
Não 
Não 
Não 
	Sim 
Não 
Não 
Não 
	Não 
Não 
Não 
Não 
Quadro 22 – Campos da tabela Administrador 
 
O Quadro 23 apresenta a tabela de Pedido. 
	Campo 
	Tipo 
	Nulo 
	Chave primária 
	Chave estrangeira 
	Id 
IdLogin 
IdPag 
Total 
IdStatus 
Data 
	Integer 
Integer 
Integer 
Double 
Integer 
Date 
 
	Não 
Não 
Não 
Não 
Não 
Não 
 
	Sim 
Não 
Não 
Não 
Não 
Não 
 
	Não 
Sim 
Sim 
Não 
Sim 
Não 
Quadro 23 – Campos da tabela Pedido
8. REGRAS DE NEGÓCIO
8.1 Análise Geral do software “Controle de Notas”
Atentando as funcionalidades, requisitos e levantamentos dos mesmos em seu estudo de viabilidade, o software teve seu ínicio de planejamento apoiado nas práticas de TSP, Team Software Process, com o desenvolvimento incremental.
Isso possibilitou o trabalho em equipe gerando uma divisão inteligente de tarefas e uma qualidade a cada execução de testes e validação do produto. 
O cenário proposto para o software do estudo de caso embora simples e com a análise de viabilidade rápida, não deixa de abordar fundamentalmente as seguintes questões:
· os objetivos gerais do sistema proposto contribuirão para a sua finalidade ?
· o Sistema poderá ser implementado com outras tecnologias dentro das restrições de custo e de prazo no qual foi desenvolvido o produto atual ? 
· o Sistema poderá ser integrado, e é compatível com os outros sistemas já em operação ?
Todas estas questões dentre outras a serem percebidas e respondidas possibilitam novas fases do planejamento e desenvolvimento do produto e pode-se ainda implementar mais práticas relativas a modelos de gerenciamento de projetos, adentrando então ao controle de mudanças, um dos mais complexos problemas na área de desenvolvimento de software.
CONCLUSÃO
Dentro do cenário proposto para o desenvolvimento de um software com a finalidade de possibilitar a automatização de cálculos, registro de alunos e demais funções, tomando-se como princípio a nomeação do produto como software “Controle de Notas”, iniciou-se todo um processo paralelo, para a base de apoio do desenvolvimento, referenciando o entendimento do “universo” de desenvolvimento e engenharia de softwares. 
O histórico das linguagens de programação demonstrou toda a evolução das tecnologias envolvidas para se chegar a crise do software e então possibilitar o entendimento da origem da engenharia de software.
Com o contexto formado foi possível perceber a necessidade da implementação da engenharia de software em todas as práticas e métodos que no decorrer de suas abordagens tornaram seu entendimento possível para a sua adequação junto ao software desenvolvido.
Ainda que em caráter muitas vezes explanativos e meramente teóricos, as ideias inseridas dentro do planejamento do software deste estudo de caso, trouxeram um grande entendimento sob quão gigantesca pode ser a prática e utilização da Engenharia de Software.
Por fim o abstrato passa ao palpável quando o produto software tem seu início de desenvolvimento e chega a sua finalização com a sua aplicabilidade junto ao cliente, neste caso o professor que necessita da automatização de seu trabalho e agora terá sempre à sua disposição o software: “Controle de Notas”.
REFERÊNCIAS
COSTA, Ivanir. Engenharia de Softwares. São Paulo, Editora Sol, 2014 sd. 168 p.
MELO, Ana Cristina Vieira de; SILVA, Flávio Soares Corrêa da. Princípios de Linguagens de Programação. São Paulo: Edgard Blücher Ltda, 2003. 211 p.  
PACITTI, Tércio, AKTINSON, Cyril P, TELES, Antonio Anibal de Souza
 Programação e Métodos Computacionais 1 4ª ed. Rio de Janeiro: LTC,
 1983. 293p. 
SEVERINO, Antônio Joaquim. Metodologia do Trabalho Científico. 21ª.ed.
 São Paulo, Editora Cortez, 2000. 280 p.
FIGURAS E ILUSTRAÇÕES
Figuras 01, 02, 03 e 04
De autoria própria, desenvolvidas pelos alunos com a utilização de software 
 Dec-C++ e Prompt de Terminal durante programaç, 2016.
https://www.draw.io

Outros materiais