27
Trabalho de banco de dados II Cassio Almeida Francisco da Paz Jonathan Barros Wesley Oliveira

Sistema acadêmico

Embed Size (px)

Citation preview

Trabalho de banco de dados II

Cassio Almeida

Francisco da Paz

Jonathan Barros

Wesley Oliveira

Introdução

Sistema acadêmico

DESCRIÇÃO DO MINIMUNDO COM OS

OBJETIVOS DO NEGÓCIO

1. Descrição do mundo real a ser modelado

A instituição de ensino são escola públicas ou privadas que tem como objetivo

ensinar os alunos, e promover a educação nível fundamental, médio e superior.

Essas instituições ensinam alunos de todas as idades entre crianças, adolescentes

e adultos

DESCRIÇÃO DO MINIMUNDO COM OS

OBJETIVOS DO NEGÓCIO

2. Descrição da aplicação

Temos por objetivo a produção de um sistema que ajude na organização da instituição. Nele serão oferecidos serviços como:

•Cadastro de alunos;

•Cadastro de turma;

•Cadastro de curso;

•Cadastro de disciplina;

•Cadastro de professores;

• Atualiza dados;

• Exclui dados

Deste modo, será possível ter um melhor controle e organização da instituição.

DESCRIÇÃO DO MINIMUNDO COM OS

OBJETIVOS DO NEGÓCIO

3. Descrição de dados

O sistema de banco de dados da instituição utilizará os seguintes dados para

gerenciamento.

DESCRIÇÃO DAS ENTIDADES, ATRIBUTOS E

CHAVE PRIMARIA

Aluno: Representa as pessoas matriculadas nos cursos da instituição. Possuem

os atributos matricula, turma_id_turma do tipo inteiro, aluno, cpf, email do

tipo texto e data_nascimento do tipo data. A chave primaria dessa entidade

é matricula.

Curso: Representa o curso que o aluno está matriculado. Possuem os atributos

id_curso do tipo inteiro e curso do tipo texto. A chave primaria dessa

entidade é id_curso.

Turma: Representa a turma que o aluno está matriculado, e assim será

alocado para um horário e uma sala e assistirá às aulas do professor

responsável por aquela turma. Possuem os atributos id_turma do tipo inteiro

e turma do tipo texto. A chave primaria dessa entidade são id_turma.

DESCRIÇÃO DAS ENTIDADES, ATRIBUTOS E

CHAVE PRIMARIA

Professor: Representa os funcionários habilitados para ensinar e coordenar na escola. Possuem os atributos id_professor do tipo inteiro e professor do tipo texto. A chave primaria dessa entidade é id_professor.

Disciplina: Representa a disciplina que o professor vai ensinar os alunos matriculados. Possuem os atributos id_disciplina, curso_id_curso do tipo inteiro e disciplina do tipo texto. A chave primaria dessa entidade são id_disciplina, curso_id_curso.

Disciplina_professor: Representa a relação da disciplina professor. Possuem os atributos disciplina_id_disciplina, disciplina_id_professor do tipo inteiro. A chave primaria dessa entidade são disciplina_id_disciplina, disciplina_id_professor.

Usuário: Representa o funcionário responsável que usará o sistema. Possuem os atributos id_usuario, Senha_alterada, ativo, admin do tipo inteiro e usuário, email, senha do tipo texto. A chave primaria dessa entidade é id_usuario.

RELACIONAMENTOS NECESSÁRIOS P/

ATENDER AO OBJETIVO DO NEGÓCIO

Ao fazer o cadastro no sistema da escola um número único de matrícula será

gerado para o aluno e ele será identificado na escola inteira por este número.

Um aluno deve estar matriculado ou não em uma turma da escola, e só

poderá ser matricular em uma única turma em um mesmo semestre.

Uma turma deverá ter no mínimo um aluno matriculado, e vários alunos

poderão estar matriculados em uma mesma turma durante um semestre.

Um curso possui várias turmas, e uma turma só pode ser de um único curso.

Um curso pode ter várias disciplinas e uma disciplina pode ter vários

professores.

DICIONÁRIO DE DADOS

Atributo Classe Tipo Descrição

matricula Determinante numérico matricula do aluno

aluno Simples texto Nome do aluno

data_nascimento Simples data Data de nascimento

cpf Simples numérico Cpf do aluno

email Simples texto Email do aluno

turma_id_turma Simples numérico Id da turma do aluno

Entidade: curso

Atributo Classe Tipo Descrição

id_curso Determinante numérico Id do curso

curso Simples Texto Nome do curso

Entidade: aluno

DICIONÁRIO DE DADOS

Atributo Classe Tipo Descrição

id_disciplina determinante numérico Id da disciplina

disciplina simples texto Nome da disciplina

curso_id_curso simples numérico Id curso

Entidade: disciplina

Entidade: disciplinaAtributo Classe Tipo Descrição

disciplina_id_dis

ciplina

determinante numérico Id relacionamento

disciplina_professor

disciplina

professor_id_pro

fessor

determinante numérico Id relacionamento

disciplina_professor

professor

DICIONÁRIO DE DADOS

Atributo Classe Tipo Descrição

id_professor determinante numérico Id entidade professor

professor simples texto Nome do professor

Atributo Classe Tipo Descrição

id_turma determinante numérico Id entidade turma

turma simples texto Nome da turma

curso_id_curso determinante numérico Id relacionamento curso

turma

Entidade: professor

Entidade: turma

DICIONÁRIO DE DADOS

Atributo Classe Tipo Descrição

id_usuario determinante numérico Id do usuário

usuario simples texto Nome do usuário

email simples texto Email do usuário

senha simples texto Senha do usuário

Senha_alte

rada

simples texto Senha alterada do usuário

ativo simples numérico Situação do usuário

admin simples numérico Administrador do usuário

Entidade: usuário

REGRAS DE NEGÓCIO QUE FORAM

NECESSÁRIAS

Regra de negócio Descrição

Aluno matriculado Representa as informações de um aluno que está

vinculado a uma turma.

Professores ativo Professores que possuem disciplina cadastrada.

Turma ativa Representa as turmas cadastradas.

Disciplina ativa Representa as disciplinas cadastradas.

Curso ativo Representa os cursos cadastrados.

Tipo usuário

autorizado

Usuário que entra com login e senha válidos.

DER

Modelo lógico

Implementação

PHP

PHP (um acrônimo recursivo para "PHP: Hypertext Preprocessor",

originalmente Personal Home Page) é uma linguagem interpretada livre,

usada originalmente apenas para o desenvolvimento de aplicações

presentes e atuantes no lado do servidor, capazes de gerar conteúdo

dinâmico na World Wide Web.(Manual oficial do PHP - Prefácio, php.net.

Consultado em 7 de fevereiro de 2011.)

MySQL

1. É um SGBD relacional

2. Um dos mais populares

3. Atualmente mantido pela Oracle Corporation

4. Fácil manuseio

5. Portabilidade

6. Excelente desempenho

Bootstrap

Agradável, intuítivo, e poderoso framework front-end para criar

facilmente de forma ágil projetos web responsivos e mobile-first.

* Desenvolvido pelo Twitter

Padrão de projeto MVC

Model-view-controller (MVC), em português modelo-visão-controlador, é

um padrão de arquitetura de software (design pattern) que separa a

representação da informação da interação do usuário com ele. O modelo

(model) consiste nos dados da aplicação, regras de negócios, lógica e

funções. Uma visão (view) pode ser qualquer saída de representação dos

dados, como uma tabela ou um diagrama. É possível ter várias visões do

mesmo dado, como um gráfico de barras para gerenciamento e uma visão

tabular para contadores. O controlador (controller) faz a mediação da

entrada, convertendo-a em comandos para o modelo ou visão. As ideias

centrais por trás do MVC são a reusabilidade de código e separação de

conceitos.

JQuery UI

O jQuery UI é uma ferramenta de interação e construída em cima do

núcleo da jQuery que permite que você possa animar os diferentes

elementos HTML, lhes dando impressionantes interações front-end com

relativa facilidade. Em outras palavras, é uma rica e extensível

biblioteca de componentes gráficos criada para maximizar o uso e poder

da jQuery.

Lista de alunos

Cadastro de alunos

Cadastro de turma

Lista de curso

Tela de autenticação