Mostrando postagens com marcador Maria Luíza. Mostrar todas as postagens
Mostrando postagens com marcador Maria Luíza. Mostrar todas as postagens

sexta-feira, 29 de outubro de 2010

Tela de Cadastro de Usuário

Maria Luíza Santinho Lima Monteiro

A tela de cadastro de usuário está finalizada e pode ser visualizada funcionando no vídeo abaixo.

sexta-feira, 22 de outubro de 2010

Semana de Ciência e Tecnologia

Maria Luíza Santinho Lima Monteiro

Bom dia! Hoje nós iremos expor nosso projeto no evento da Semana de Ciência e Tecnologia, que está acontecendo no Sesi próximo ao Horto Florestal. O evento começa desde de manhã, porém como temos aulas, apenas compareceremos a partir das 14h. Para que o computador não fique em desuso na feira, criamos uma apresentação em Power Point a ser apresentada durante o período da manhã.
Segue abaixo o link da apresentação.
Download da Apresentação

sexta-feira, 15 de outubro de 2010

Finalização da Pasta de TSPD

Maria Luíza Santinho Lima Monteiro

Bom dia!
Após todas as alterações necessárias serem feitas, semana passada, finalizamos a pasta de TSPD. Nela também estão contidos todos os níveis do DFD postados anteriormente (01/10 e 08/10).

A pasta pode ser acessada e baixada no seguinte link:
Download da Pasta

sexta-feira, 8 de outubro de 2010

Nível Um - DFD

Maria Luíza Santinho Lima Monteiro

Como prometido na semana passada (01/10), hoje postarei o Nível Um do DFD. Segue a imagem abaixo:

sexta-feira, 1 de outubro de 2010

Edição do Diagrama de Fluxo de Dados

Maria Luíza Santinho Lima Monteiro

Bom dia!
Conforme a correção realizada pelo professor André Dalastti, fiz alterações no DFD (Diagrama de Fluxo de Dados). A seguir é possível visualizar o Diagrama de Contexto e o Nível Zero. Em breve postarei o Nível Um, que ainda será elaborado.



sexta-feira, 24 de setembro de 2010

Scripts de listagem de dados

Maria Luíza Santinho Lima Monteiro

Bom dia!
Essa semana estive desenvolvendo os scripts de algumas listagens necessárias para o controle de dados do sistema. Segue o código abaixo:

def procurarUsuarioPorLoginPorSenha(self, login, senha):
      """
            @params = nome do usuario e senha.
            Retorna o usuarios com login e senha
      """

      logging.debug("%s: Procurando usuário por login (%s) e senha (%s)"%(str(time.asctime()), login, senha))
      cursor = self.connection.cursor()
      cursor.execute("SELECT id_usuario FROM usuario WHERE login=? AND senha=?",(login, senha,))
      usuario = None
      for row in cursor:
            usuario = Usuario(row['id_usuario'])
      return usuario


def listarUsuarioConfiguradorDeJogo(self):
      """
            Retorna lista de usuarios administradores e orientadores (são os que podem configurar o jogo)
      """

      logging.debug("%s: Listando usuários administradores e orientadores (são os que podem configurar o jogo)" %(str(time.asctime())))
      cursor = self.connection.cursor()
      cursor.execute("SELECT id_usuario FROM usuario WHERE id_grupo = 1 OR id_grupo = 2")
      listaUsuarios = []
      for row in cursor:
            usuario = Usuario(row['id_usuario'])
            listaUsuarios.append(usuario)
      return listaUsuarios


def listarTodosUsuariosAdministradores(self):
      """
            Retorna lista de usuários administradores
      """

      logging.debug("%s: Listando todos os administradores" %(str(time.asctime())))
      cursor = self.connection.cursor()
      cursor.execute("SELECT id_usuario FROM usuario WHERE id_grupo = 1")
      usuariosAdministradores = []
      for row in cursor:
            usuario = Usuario(row['id_usuario'])
            usuariosAdministradores.append(usuario)
      return usuariosAdministradores


def listarAdministradoresLogadosPorData(self, data_ultimo_login):
      """
            @params = data do ultimo login
            Retorna lista de administradores que logaram no dia anterior
      """

      logging.debug("%s: Listando administradores logados por data (%s)" %(str(time.asctime(), data_ultimo_login)))
      cursor = self.connection.cursor()
      cursor.execute("SELECT u.id_usuario, p.nome FROM pessoa AS p INNER JOIN usuario AS u WHERE p.id_pessoa = u.id_pessoa AND u.id_grupo = 1 AND u.data_ultimo_login = ?", data_ultimo_login)
      listaAdministradores = []
      for row in cursor:
            administrador = Usuario(row['u.id_usuario'])
            listaAdministradores.append(administrador)
      return listaAdministradores


def listarTodosUsuariosOrientadores(self):
      """
            Retorna lista de usuarios orientadores
      """

      logging.debug("%s: Listando usuários orientadores"%(str(time.asctime())))
      cursor = self.connection.cursor()
      cursor.execute("SELECT id_usuario FROM usuario WHERE id_grupo = 2")
      listaOrientador = []
      for row in cursor:
            usuario = Usuario(row['id_usuario'])
            listaOrientador.append(usuario)
      return listaOrientador


def listarTodosUsuariosAlunos(self):
      """
            Retorna lista de usuarios alunos
      """

      logging.debug("%s: Listando usuários alunos"%(str(time.asctime())))
      cursor = self.connection.cursor()
      cursor.execute("SELECT id_usuario FROM usuario WHERE id_grupo = 3")
      listaAlunos = []
      for row in cursor:
            usuario = Usuario(row['id_usuario'])
            listaAlunos.append(usuario)
      return listaAlunos


def ordenarAlunosPorPontuacao(self):
      """
            Retorna lista de pessoas (alunos) ordenados por pontuacao
      """

      logging.debug("%s: Ordenando alunos por pontuação"%(str(time.asctime())))
      cursor = self.connection.cursor()
      cursor.execute("SELECT u.id_usuario, pe.nome, po.valor_pontuacao FROM pessoa AS pe INNER JOIN pontuacao AS po INNER JOIN usuario AS u WHERE pe.id_pessoa = u.id_pessoa AND u.id_usuario = po.id_usuario AND u.id_grupo = 3 ORDER BY valor_pontuacao DESC")
      listaAlunos = []
      for row in cursor:
            usuario = Usuario(row['u.id_usuario'])
            listaAlunos.append(usuario)
      return listaAlunos

sexta-feira, 17 de setembro de 2010

Palavra Chave Mais Importante

Maria Luíza Santinho Lima Monteiro

Bom dia!
Como foi postado pelo Karl, o nosso site possui várias meta tags do tipo keywords. Porém dentre todas as palavras ou expressões utilizadas como palavra chave existe uma de maior importância, que é a primeira que deve ser colocada.
A palavra chave mais importante para o site da nossa Empresa é "jogo de trânsito", porque resume básica e sucintamente sobre o que se trata o nosso projeto.

sexta-feira, 10 de setembro de 2010

Pastas de Aplicativos e de TSPD

Maria Luíza Santinho Lima Monteiro

Bom dia!
Estamos em semana de provas. E além das provas, também é época de fazer as entregas das pastas referentes às matérias de TSPD e Aplicativos. Portanto, ontem (5ª feira, 09/09) o nosso grupo entregou a pasta de TSPD referente ao 3º bimestre e amanhã (sábado, 11/09) será a entrega da pasta de Aplicativos.
Para ter acesso aos conteúdos clique abaixo:
Pasta de TSPD
Pasta de Aplicativos

sexta-feira, 3 de setembro de 2010

Apresentação de Aplicativos - 03/09/2010

Maria Luíza Santinho Lima Monteiro

Bom dia!
Hoje (03/09) faremos mais uma apresentação de Aplicativos, coordenada pelo professor Rodrigo Carvalho (Flash). Nela serão apresentadas, além de informações sobre a nossa empresa, a empresa favorecida, o vídeo e a situação problema que nos motivou a fazer o projeto, também algumas telas de interface do jogo. Segue abaixo o arquivo ".ppt". Lembrando que o vídeo é o mesmo já postado em 21 de maio de 2010 e em 10 de junho de 2010.

Donwload: Apresentação de Slides

sexta-feira, 27 de agosto de 2010

Semáforo

Maria Luíza Santinho Lima Monteiro

Bom dia!
Comecei a desenvolver um modo de trocar as cores do semáforo e descobri uma função no Blender que faz uma troca de "Mesh", que podemos dizer que são os objetos. Isso será muito útil para o desenvolvimento do semáforo. No vídeo a seguir vou mostrar a mudança de cores através do teclado, mas isto já está sendo aperfeiçoado e será feito automaticamente com uma função delay.

sexta-feira, 20 de agosto de 2010

Cinto de Segurança

Maria Luíza Santinho Lima Monteiro

Bom dia!
Durante essa semana desenvolvi a mensagem que indicará ao usuário que ele deve colocar o cinto de segurança. O usuário receberá sua missão e logo aparecerá, junto ao cenário, uma mensagem para ele colocar o cinto de segurança. Assim que este é colocado, aparece uma imagem indicando a ação feita. Veja o vídeo a seguir.


O cinto é ativado através da tecla C do teclado.

sexta-feira, 13 de agosto de 2010

Propostas de banner e de capa de CD

Maria Luíza Santinho Lima Monteiro

Bom dia!
Esta semana terminei as minhas propostas de banner da empresa e da capa do CD.
Seguem as imagens abaixo:





sexta-feira, 6 de agosto de 2010

Etiqueta de CD

Maria Luíza Santinho Lima Monteiro

Boa noite!
Esta semana desenvolvi uma proposta de etiqueta para o CD da Empresa.
Segue a imagem abaixo:

sexta-feira, 30 de julho de 2010

Movimentação do carro

Maria Luíza Santinho Lima Monteiro

Bom dia!
Como disse no meu post anterior, esta semana retornamos às aulas e o projeto não para!
Ontem fiz a movimentação de um carro por controladores lógicos. Primeiro criamos um sensor, é onde escolhemos a tecla que vai fazer determinada ação. Então, ligamos o sensor com um controlador, que será ligado com um atuador, que é quem descreve qual ação será feita.
Abaixo é possível ver o vídeo, feito no Camtasia, do carrinho sendo movimentado através das teclas de setas do teclado.

sexta-feira, 23 de julho de 2010

Retorno das aulas

Maria Luíza Santinho Lima Monteiro

Boa noite!
Na próxima segunda feira (26/07), o recesso escolar termina e as aulas voltam ao normal.
E durante as aulas continuaremos firmemente com o desenvolvimento do projeto.
Até semana que vem. :)

sexta-feira, 9 de julho de 2010

Classes - Python

Maria Luíza Santinho Lima Monteiro

Bom dia!
Essa semana desenvolvi as classes em Python que serão utilizadas para o vínculo com o banco de dados. Estas classes foram definidas durante a reunião. Segue abaixo o código de uma delas:


class Pessoa (DatabaseClasse):


  def __init__(self,pessoa_id = None):
      DatabaseClasse.__init__(self)
      self.id = pessoa_id
      self.name=None
      self.data_nascimento = None
      self.listaPessoas = {}
      self.load()

  def load(self):
   """
   retorna um dicionario (id: (nome, data_nascimento, ...)) de todos
do banco
   """

      cursor = self.connection.cursor()
      cursor.execute('SELECT nome, data_nascimento FROM pessoa
WHERE id=?',(self.id,))
      row = cursor.fetchone()
      if row:
         self.name = row['nome']
         self.data_nascimento = row['data_nascimento']
         self.loaded = True

      return self.loaded

  def get_all_pessoas(self):
   """
   Retorna uma lista de todas as pessoas do banco - O objeto Pessoa Se
encontrado, as instancia e retorna seus objetos
   """

      cursor = self.connection.cursor()
      sql = 'SELECT id FROM pessoa'
      cursor.execute(sql)
      pessoas = []
      for row in cursor:
         pessoas.append(Pessoa(row['id']))
      return pessoas

  def get_dict_all_pessoas(self,params=()):
   """
   params = ()
   retorna dicionario (id da pessoa : (nome, data de nascimento) de todas as
pessoas do banco
   """

      cursor = self.connection.cursor()
      cursor.execute("SELECT id,nome,data_nascimento FROM pessoa")
      for row in cursor:
         self.listaPessoas[str(row['id'])] = ([row['nome']],
str(row['data_nascimento']))
      return self.listaPessoas

  def get_name(self):
      return self.name

  def get_data_nascimento(self):
      return self.data_nascimento

  def get_id(self):
      return self.id

  def save(self):
      cursor = self.connection.cursor()
      if self.loaded:
         sql = 'UPDATE pessoa SET nome = ?, data_nascimento=? WHERE
id=?'
         cursor.execute(sql,(self.name,self.data_nascimento,self.id))
      else:
         sql = 'INSERT INTO pessoa (nome,data_nascimento,id) VALUES
(?,?,?)'
         cursor.execute(sql,(self.name,self.data_nascimento,self.id))
      self.connection.commit()

  def set_name(self,name):
      self.name = name

  def set_data_nascimento(self, data_nascimento):
      self.data_nascimento = data_nascimento

  def set_id(self,id):
   #pegar do banco o ultimo id e acrescentar
      self.id = id

Observação: As classes poderão sofrer algumas alterações.

sexta-feira, 2 de julho de 2010

Reuniões das férias

Maria Luíza Santinho Lima Monteiro

Boa tarde!
Nesta primeira semana de recesso, aproveitamos para descansar um pouco e a partir da semana que vem continuaremos firmemente com o projeto. Iremos marcar uma reunião inicial para organizar as tarefas a serem feitas durante esse mês e a cada reunião separaremos o que cada integrante do grupo deverá adiantar em sua casa para reunião seguinte.
Até mais.

sexta-feira, 25 de junho de 2010

Vistas de provas e Recesso

Maria Luíza Santinho Lima Monteiro

Bom dia!
Essa semana terminaram as provas na 3ª feira (22/06) e estamos tendo as vistas referente a elas.
A partir da próxima semana entraremos em recesso escolar. Mas isso não significa que vamos parar de trabalhar no projeto.
Pretendemos aproveitar parte das férias para adiantá-lo bastante e chegar em agosto com o cronograma em dia.
Ah, e as postagens no blog também não param durante o recesso.
É isso aí. Boas férias a todos!

sexta-feira, 18 de junho de 2010

Pasta de Aplicativos e de TSPD

Maria Luíza Santinho Lima Monteiro

Bom dia!
Hoje (18/06) de manhã a nossa empresa entregará a pasta de Aplicativos II, conforme o pedido do Professor Rodrigo (Flash).

E amanhã (19/06) de manhã, antes da realização da Avaliação de TSPD, conforme o pedido do Professor André Dalastti, a nossa empresa entregará a pasta de TSPD do 2º Bimestre.
Donwloads das pastas:
Pasta de Aplicativos
Pasta de TSPD

sexta-feira, 11 de junho de 2010

Apresentação de Aplicativos - 11/06/2010

Maria Luíza Santinho Lima Monteiro

Bom dia!
Como já foi dito pela Ananda no post anterior (para visualizar clique aqui), hoje (11/06) acontecerá na Sala 1 do Colégio mais uma apresentação de Aplicativos II, orientada pelo Professor Rodrigo (Flash).

A seguir vocês podem baixar a apresentação de slides da nossa Empresa e o vídeo utilizado:
Download da Apresentação de Slides
Download do Vídeo


Observação:
Para o vídeo rodar na apresentação é necessário:
* renomeá-lo para: Vídeo - apresentação - Cinto de Segurança.wmv
* estar salvo no seguinte diretório: C:/Trabalho/Spectrum/