INTERNACIONALIZAÇÃO DE INTERFACE

Tamanho: px
Começar a partir da página:

Download "INTERNACIONALIZAÇÃO DE INTERFACE"

Transcrição

1 UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO CENTRO TECNOLÓGICO PROJETO FINAL BERNARD CORRÊA PEREIRA INTERNACIONALIZAÇÃO DE INTERFACE VITÓRIA 2007

2 BERNARD CORRÊA PEREIRA 2 INTERNACIONALIZAÇÃO DE INTERFACE Projeto Final apresentado ao Centro Tecnológico da Universidade Federal do Espírito Santo, como requisito para obtenção do Grau de Bacharel em Ciências da Computação. Orientador: Prof o D.Sc. Orivaldo de Lira Tavares. VITÓRIA 2007

3 3

4 SUMÁRIO 4 RESUMO... 8 TABELA DE FIGURAS... 9 CAPÍTULO 01: O INTERNACIONALIZADOR DE INTERFACES Introdução Justificativas Objetivos Metodologias Estrutura da Monografia...12 CAPITULO 02 TRABALHOS CORRELATOS: TÉCNICAS E TECNOLOGIAS DE INTERNACIONALIZAÇÃO DE SOFTWARE Introdução: GNU-GetText Internacionalizando com o GNU-GetText Como funciona o GNU gettext: Vantagens do GNU-gettext Desvantagens do GNU-gettext Arquivos de Recursos do ASP.NET Internacionalizando com o ASP.NET Vantagens da Internacionalização por Arquivos de Recursos Desvantagens da Internacionalização por Arquivos de Recursos Apache Struts Internacionalização no Struts Vantagens da Internacionalização proposta pelo Struts Desvantagens da Internacionalização proposta pelo Struts...21 CAPÍTULO 03 - LEVANTAMENTO DE REQUISITOS Este capítulo apresenta o levantamento de requisitos do sistema de internacionalização Requisitos não Funcionais do Sistema Atores do Sistema Programador Tradutor Humano Servidor de Aplicação Funcionalidades da Aplicação Funcionalidades para Programação Associar Interface Trabalhar Mensagens Selecionar Localidade da Aplicação Funcionalidade Elementar do Sistema de Internacionalização Construir Sistema de Dados Funcionalidades de Tradução Cadastrar Idiomas Cadastrar Termos Ligar Termos Traduzir Interface Validar Interface...28

5 3.3.4 Funcionalidades de Serviço Exibir Interface Internacionalizar Gerar Interface...30 CAPÍTULO 04 ANÁLISE DO SISTEMA Introdução Entidades do Sistema Idioma Termo Termo Semântico assinternacionalizador Internacionalizador Mensagem Elementos de Interface eilabel eibotao eilink eiimagem Page, Session e WebControl Casos de Uso Funcionalidades para Programação Associar Interface Trabalhar Mensagens Selecionar Localidade na Aplicação Funcionalidades Elementares do Sistema de Internacionalização Construir Sistema de Dados Funcionalidades de Tradução Cadastrar Idiomas Cadastrar Termos Ligar Termos Traduzir Interface Validar Interface Funcionalidades de Serviço Exibir Interface Internacionalizar Gerar Interface...40 CAPÍTULO 05: PROJETO DO SISTEMA Introdução Plataforma Adotada Arquitetura ASP.NET Objetos do sistema Session Page WebControls A Linguagem C# Db4O, Banco de Dados Orientados a Objetos A concepção do sistema MVC Camada de modelo Modelo de Dados Persistência da Camada de Modelo

6 5.3.3 Camada de controle appcadastraridioma appcadastrartermo apptraduzirinterface appcontrolarsistemadados assinternacionalizador Camada de vista Casos de Uso Funcionalidades para Programação Associar Interface Selecionar Localidade da Aplicação Funcionalidades Elementares do Sistema de Internacionalização Construir Sistema de Dados Funcionalidades de Tradução Cadastrar Idiomas Cadastrar Termos Ligar Termos Traduzir Interface Validar Interface Exibir Interface Internacionalizar Gerar Interface...66 CAPÍTULO 06 IMPLEMENTAÇÃO Introdução Análise e Projeto Implementação Plataforma Banco de Dados IDE O Internacionalizador de Interface Alterações de Projeto Interfaces do Sistema Cadastro de Idioma Cadastro de Termo Ligar Termos Traduzir e Validar Casos de uso sem Interface Casos de uso do Programador Validação de Interfaces Construção do Sistema de Dados Exibir a Interface Internacionalizar Conclusões...77 CAPÍTULO 07 LÊ GRAND FINALLE Introdução Resultados O Desejado O Alcançado Aprendizagem ASP.NET C#

7 7.3.3 Db4o Jude UML IDEs de Desenvolvimento Etapas do desenvolvimento Direções Futuras Elementos de Interface Tradução Automática Casa de ferreiro, espeto de pau Componentização Controles de acesso Considerações Finais

8 RESUMO 8 O projeto Internacionalização de Interface se propõe a desvincular a tradução da programação na construção de sistemas internacionalizados. Incorporando conhecimentos adquiridos em outros projetos, a solução a ser criada seguirá pelas etapas de especificação de requisitos, análise, projeto, implementação e testes até alcançar um resultado satisfatório com um sistema de informação que desvincule totalmente o tradutor das atividades executadas pelos outros desenvolvedores de software.

9 TABELA DE FIGURAS 9 Número Título 1.1 Site do Google em Japonês, Francês, Espanhol e Chinês. 2.1 Formato de um arquivo de informações do GNU gettext 2.2 Chamada de método sem Internacionalização. 2.3 Chamada de método buscando a internacionalização 2.4 Exemplos do conteúdo dos arquivos de internacionalização 2.5 Exemplo de um arquivo.resx com informações de internacionalização 2.6 Arquivo de Internacionalização 2.7 Tag asp que utiliza a informação do arquivo de internacionalização 2.8 Arquivo de recurso para a localidade EN-US 2.9 Arquivo de internacionalização lido pelo struts Utilização dos rótulos de internacionalização 3.1 Diagrama de Casos de Uso da aplicação 3.2 Diagrama de Casos de Uso de Programação 3.3 Diagrama de caso de uso da funcionalidade elementar 3.4 Diagrama de caso de uso de Tradução 3.5 Diagrama de caso de uso de Funcionalidades de Serviço 4.1 Entidades do sistema 5.1 Modelo de Dados: Associar Interface 5.2 Modelo de Dados: Trabalhar Mensagem 5.3 Modelo de Dados: Seleciona Localidade da Aplicação 5.4 Modelo de Dados: Construir Sistema de Dados 5.5 Modelo de Dados: Cadastrar Idiomas 5.6 Modelo de Dados: Cadastrar Termos 5.7 Modelo de Dados: Ligar Termos 5.8 Modelo de Dados: Traduzir Interface 5.9 Modelo de Dados: Validar Interface 5.10 Modelo de Dados: Internacionalizar 5.11 Modelo de Dados: Gerar Interface 6.1 Listagem de idioma 6.2 Cadastro de idioma 6.3 Listagem de termo 6.4 Cadastro de termo 6.5 Edição de Conjuntos Semânticos. 6.6 Seleção de termos para inserção no conjunto semântico 6.7 Listagem das interfaces internacionalizadas do sistema 6.8 Tradução de elementos de interface 6.9 Tradução de Mensagens da Interface 6.10 Tela de validação de interfaces 6.11 Casos de uso Cadastrar Interface e Trabalhar Mensagem 6.12 Manipulação das localidades da aplicação

10 CAPÍTULO 01: O INTERNACIONALIZADOR DE INTERFACES Introdução A expansão da Internet permitiu que informações fossem acessadas de qualquer ponto do globo com imensa facilidade. O avanço tecnológico crescente aumentou a conectividade entre as pessoas e as organizações expondo barreiras referentes à comunicação humana. Com a diversidade de idiomas e dialetos a construção de sistemas on-lines que possam ter abrangência global torna-se um desafio que escapa do domínio técnico das tecnologias de informação. Uma página da Internet consegue mais facilmente ter uma abrangência internacional se esta for capaz de se comunicar na linguagem de seus usuários. A figura 1.1 mostra como exemplo o sítio web do google exibido em 4 idiomas. Figura 1.1 Sítio do Google em Japonês, Francês, Espanhol e Chinês.

11 Justificativas O projeto Internacionalização de Interface surge na intenção de estudar as tecnologias de internacionalização de interface, propondo uma solução para este problema tão comum do desenvolvimento de sistemas web internacionais, a comunicação com o usuário. 1.3 Objetivos A descoberta sobre os macetes e artimanhas da internacionalização de software e o desenvolvimento de um protótipo com tal finalidade servirá como amplificador para o horizonte na construção de programas, ampliando ainda mais o leque de alternativas para o desenvolvimento internacional de aplicações. Com o conhecimento produzido neste estudo objetiva-se incrementar o desenvolvimento de aplicações em ambientes empresariais e acadêmicos de forma a concentrar o esforço no objeto de real interesse, a lógica de funcionamento, sem que o sistema fique restrito a uma única cultura. No âmbito acadêmico podemos imaginar um maior intercambio de conhecimento entre diversas Universidades e Centros de Pesquisas espalhados pelo mundo através de projetos unificados onde cada entidade contribui com uma parte do sistema, não se preocupando com os futuros usuários não locais, durante a construção do sistema. Um dos focos deste projeto visa a redução da responsabilidade, compreendendo as técnicas existentes e trabalhando-as para maior simplicidade no uso das operações de internacionalização no momento de construção e tradução do programa. A materialização dos objetivos acima propõe a construção de um mecanismo de internacionalização de interfaces na qual os elementos da tela sejam reconhecidos automaticamente e o tradutor possa usar um ambiente que o desvincule das tarefas de programação. 1.4 Metodologias O projeto de internacionalização de interface seguirá a seguinte metodologia: Levantamento de trabalhos correlatos, especificação de requisitos, análise e projeto de sistemas orientados a objetos, implementação e testes. O paradigma orientado a objetos estará presente da análise à implementação, sendo que

12 12 nesta fase será usado um BDOO 1 no sistema de armazenamento de dados. Focado em sistema web, o ASP.NET 2.0 (seção 5.2.1) foi a tecnologia escolhida para a construção do protótipo. Com o levantamento de trabalhos correlatos detectar-se-ão problemas já conhecidos e suas propostas de soluções. A maturação destes conhecimentos que se encontram disponibilizados combinados com os objetivos irá contribuir qualitativamente para criação do internacionalizador. A especificação de requisito reparte o problema e determina os micro-objetivos que precisam ser alcançados para a conquista do sistema planejado. Na fase de análise construir-se-á o modelo conceitual da aplicação, detalhando cada caso de uso previsto na especificação. O detalhamento completo virá na fase de projeto onde as classes auxiliares serão especificadas e todas as relações serão explicadas. Após os testes, serão analisados os resultados obtidos, o aprendizado e as propostas de melhorias que possam ser aplicadas neste projeto. 1.5 Estrutura da Monografia O primeiro capítulo apresenta uma breve visão do trabalho, suas justificativas, objetivos esperados e as metodologias utilizadas. No segundo constam os trabalhos correlatos de internacionalização. Nesse capítulo também serão descritas as técnicas e estratégias utilizadas na internacionalização de outros sistemas de informação. O terceiro, quarto e o quinto apresentam, respectivamente, especificação, análise e projeto orientado a objetos do sistema que será implementado. O sexto traz a descrição da implementação, descrevendo as ferramentas e tecnologias adotadas. O sétimo e último capítulo apresenta o desfecho do projeto descrevendo o aprendizado obtido e as propostas para melhorias futuras que possam ser aplicadas. 1 BDOO: Banco de Dados Orientados a Objetos

13 CAPITULO 02 TRABALHOS CORRELATOS: TÉCNICAS E TECNOLOGIAS DE INTERNACIONALIZAÇÃO DE SOFTWARE Introdução: A globalização no final do século XX e a expansão do mercado de computadores pessoais expuseram a indústria de software ao problema da distribuição internacional de seus produtos, e com o avanço da Internet, de serviços. Os Softwares precisaram romper a barreira internacional, cujo principal entrave tem sido a comunicação humana, e por causa disto soluções para internacionalização tiveram de ser inventadas com o intuito de facilitar a vida do desenvolvedor e prover maior usabilidade para o usuário. Essas soluções de internacionalização visam romper as barreiras criadas por idiomas e dialetos na utilização dos softwares. Esse capítulo abordará alguns mecanismos, explicando seu funcionamento e seus métodos de utilização para internacionalização de software: O GNU-GetText, o Struts e os arquivos de recursos do ASP.NET 2.0. Esse capítulo constantemente mostrará o termo localidade que deve ser entendido como os idiomas ou seus dialetos. Suas codificações são especificadas pelos padrões das normas da ISO 2 : ISO-3166 e ISO GNU-GetText A primeira solução que analisada é um software livre sobre a licença GPL, datado de 1998, é muito rústico quando refletido sobre os aspectos de sua utilização, porém tecnicamente é muito interessante. Foi construído para ser usado originalmente com a linguagem C e depois migrado para suportar diversas linguagens Internacionalizando com o GNU-GetText Para se internacionalizar um sistema com o GNU-GetText usa-se arquivos de informações que normalmente tem como extensão.po, com o formato apresentado na figura ISO: é uma organização internacional que aprova normas para 148 paises em diversos campos técnicos" [http://pt.wikipedia.org/wiki/isso,12/2006]. O site oficial desta organização é

14 14 # comentários do tradutor #. comentários automáticos #: referência #, flag... msgid string-não-traduzida msgstr string-traduzida msgid string-não-traduzida2 msgstr string-traduzida2 Figura 2.1 Formato de um arquivo de informações do GNU-gettext No código fonte do programa, nos pontos onde irá ser chamada alguma mensagem, usa-se o retorno do gettext passando o msgid como parâmetro para a obtenção da mensagem desejada. Veja no exemplo das figuras 2.2 e 2.3. main() { } printf( Bem Vindo ); Figura 2.2 Chamada de método sem Internacionalização. main() { } printf(gettext( Bem Vindo )); Figura 2.3 Chamada de método buscando a internacionalização. Os dois exemplos acima (figuras 2.2 e 2.3) ilustram a diferença na construção do programa quando o GNU-gettext é usado como mecanismo de internacionalização e não. Para a internacionalização realmente ter efeito é necessário construir os arquivos.po onde estarão os rótulos e seus significados, como mostramos abaixo na figura 2.4: bemvindo.po bemvindo_en.po bemvindo_fr-fr.po bemvindo_it.po

15 15 bemvindo.po bemvindo_en.po bemvindo_fr-fr.po bemvindo_it.po #português #inglês #francês #italiano msgid bem vindo msgid bem vindo msgid bem vindo msgid bem vindo msgstr bem vindo msgstr welcome msgstr bienvenue msgstr benvenuto Figura 2.4 Exemplos do conteúdo dos arquivos de internacionalização Como funciona o GNU gettext: Os arquivos.po, anteriormente mencionados, devem ser compilados e gerando um arquivo de dados com a extensão.mo. Esse arquivo.mo é lido pelo GNU-gettext durante a execução da aplicação que construirá um dicionário de dados (tabela hash 3 ). Este tipo de implementação gera um menor overhead 4 na aplicação ao internacionalizar, visto que as características determinadas pela implementação (uso de tabela hash) afetam diretamente a recuperação de informações, que nesta estrutura de dados é muito eficiente. Quando invocado pela aplicação, o gettext consulta a tabela hash, que é carregada na leitura do arquivo.mo, o rotulo passado como parâmetro e retorna sua tradução registrada no dicionário Vantagens do GNU-gettext Os detalhes claros em sua documentação oficial, que se encontra no site mostram que sua implementação priorizou muito o desempenho, visto em fatores como a escolha de estruturas de dados eficientes e a implementação de um sistema de arquivo compilado para armazenamento da informação. A tabela hash, estrutura escolhida para suportar a recuperação de informações, principal funcionalidade na internacionalização, que sob hipóteses razoáveis para a busca por um elemento (em uma tabela hash) é O(1) [Cormen, Thomas H Algoritmo: Teoria e Prática, 2002 ]. 3 Tabela Hash: Tipo Abstrato de Dados que armazena a informação em uma tabela onde a função h, chamada de função hash que mapeia a chave k [Grooobich, Michael T. Projetos de Algoritmo: Fundamentos, Análise e Exemplos da internet, 2004] possibilitando a recuperação do elemento associado a k. 4 Overhead: Conjunto de processamento efetuado adicionalmente na aplicação que não possui nenhuma relação direta na obtenção da saída da operação executada. Em geral são provenientes de requisitos não funcionais.

16 Desvantagens do GNU-gettext Muitos conceitos amadurecidos e largamente utilizados por desenvolvedores atualmente, como por exemplo, a orientação a objetos e a utilização de sistemas de banco de dados em preferência à criação de sistemas de arquivos proprietários fez com que o GNU-gettext fosse construído num paradigma que deixa muita responsabilidade na mão do programador e do tradutor, que precisam se adequar às normas para o correto funcionamento do sistema Arquivos de Recursos do ASP.NET 2.0 O.Net é uma iniciativa da Microsoft para permitir a portabilidade no desenvolvimento de software. Sua arquitetura é composta de um conjunto de compiladores de linguagens de alto nível (VB.NET, C#, J#, Boo, C++) cujo resultado de seu trabalho é uma linguagem intermediária chamada de CLR (Common Languagem Runtime) em vez de código binário. Depois de compilado, essa linguagem intermediária é executada pelo Framework.NET, uma espécie de máquina virtual que a compila usando o compilador JIT (Compilador em Tempo de Execução) que gerará o código binário que é capaz de ser executado na plataforma utilizada [http://pt.wipedia.org/wiki/microsoft_.net, 11/2006 ]. O ASP.NET é parte desta plataforma voltada para a construção de aplicações para WEB. Ele permite a construção de páginas web e os chamados web-services Internacionalizando com o ASP.NET 2.0 A internacionalização de aplicações no ASP.NET 2.0 utiliza-se dos chamados arquivos de recursos com extensões.resx. Esses arquivos já existiam na versão 1.1, porém essa forma de utilização foi inserida recentemente a partir da versão 2.0. O processo de internacionalização inicia-se escrevendo o arquivo de recurso para o idioma padrão da aplicação usando o formato XML, armazenando nesse arquivo as chaves, os tipos e os valores dele para aquele idioma. O termo chave consiste em uma forma de identificar aquele rótulo e é por onde se recupera as informações. A figura 2.5 apresenta o trecho do arquivo.resx onde se encontram as informações de internacionalização. 5 web-service: [XML WebService] aplicação acessada através da de protocolos web [...] que são independente de plataformas [e linguagens] e usam o XML para se comunicar. (Souza, J. de G., 2003 )

17 17 <data name="lblola" type= string > <value>olá</value> </data> Figura 2.5 Exemplo de um arquivo.resx com informações de internacionalização. A utilização dessa informação no ASP.NET 2.0 pode ser feita pelo programador por meio de tags do tipo asp, inserindo no atributo meta:resourcekey o valor da chave, como mostrado na figura 2.6 e 2.7. De acordo com a chave, quando essa possuir sub-chaves referentes aos atributos do objeto de destino, o.net efetuará a ligação automaticamente. Default.aspx.resx <data name="labelola.text" type= string > <value>olá</value> </data> <data name="labelola.tooltip" type= string > <value>mensagem do sistema</value> </data> Figura 2.6 Arquivo de Internacionalização. Na tag asp (figura 2.7) o internacionalizador irá sobrescrever o valor das propriedades, como por exemplo, Text, que se encontra sublinhada, terá o seu valor (Nome) sobrescrito quando o arquivo de recursos, mostrado na figura 2.6 é invocado. <asp:label ID="Label1" meta:resourcekey="labelola" runat="server" Font-Size="Larger" Text= Nome ></asp:label> Figura 2.7 Tag asp que utiliza a informação do arquivo de internacionalização. Para se gerar novos idiomas na internacionalização, cria-se arquivos de recursos seguindo a seguinte nomenclatura: [nome-do-arquivo].resx para o idioma padrão da aplicação, e [nome-doarquivo].[localização].resx. Usando a estrutura do arquivo de recurso (figura 2.6) pode-se criar

18 18 arquivos para as demais localidades, o arquivo de recurso em inglês para a mesma aplicação é mostrado na figura 2.8. Default.aspx.EN-US.resx <data name="labelolatext" type= string > <value>hi</value> </data> <data name="labelola.tooltip" type= string > <value>system Message</value> </data> Figura 2.8 Arquivo de recurso para a localidade EN-US (Inglês Estados Unidos) Vantagens da Internacionalização por Arquivos de Recursos. O arquivo de Recurso que consiste em um arquivo do formato XML permite algumas alterações em sua estrutura, desde que mantida a árvore de nós, como a inclusão de informações e o uso para outras funcionalidades além da internacionalização. Recursos Desvantagens da Internacionalização por Arquivos de A edição deste arquivo manualmente, devido à sobrecarga de elementos textuais, é pouco produtiva e obscura induzindo muitos erros do desenvolvedor ou tradutor, sendo ideal que se crie um editor gráfico para isso na ferramenta de desenvolvimento Apache Struts O Struts é uma framework livre para o desenvolvimento de software web, construída pela Apache Software Foudation ( ). Funciona sobre a plataforma JSP (JavaServer Pages) e é baseado no Modelo-2 que é uma variação do Modelo MVC (http://struts.apache.org, 2006).

19 19 O objetivo do Struts é prover um conjunto de funcionalidades onde o desenvolvedor, de forma mais ágil, pode construir uma aplicação para web (Husted, Ted. Struts em Ação, 2002). Porém, como todas os Frameworks ele enrijece o processo de construção de software exigindo que o programador a construa de acordo com as regras pré-estabelecidas. O padrão estabelecido consiste em separar as apresentações, que serão armazenada em um ActionForm e que se conectará ao RegisterAction, responsável por validar as entradas, invocar as lógicas de negócio e enviar a saída para o ActionFoward, mecanismo responsável por emitir a saída do processamento da página corrente Internacionalização no Struts A plataforma JAVA provê ao usuário 3 classes principais na internacionalização que são: 1. Java.util.Locale responsável por distinguir as diferentes localidades; 2. java.util.resourcebundle que armazena as mensagens e etiquetas associando-as as suas localidades e 3. java.text.messageformat responsável pelo tipo de formatação dos elementos sensíveis a localidade. A classe Locale é utilizada pelas outras 2 para indicar a sua localização (idioma/dialeto) ajudando-as a efetuarem tarefas para internacionalização (Husted, Ted. Struts em Ação, 2002). Os mecanismos de internacionalização providos pelo JAVA são muitos limitados para as atividades do dia a dia no desenvolvimento de sistemas WEB. Por isso, o Struts precisou prover uma maneira mais eficaz: a localização é armazenada numa variável de sessão, onde cada usuário obtém a sua no momento que se conecta na aplicação. Para armazenamento na sessão desse atributo de localização o struts provê a classe org.apache.struts.util.locale. A classe org.apache.struts.util.messageresources é a responsável pela recuperação das mensagens durante a execução de java.text.messageformat. O struts, por meio da MessageResources permite a recuperação de diversos mecanismos de armazenamento como arquivosxml e Banco de Dados, mas por padrão costuma-se utilizar um arquivo de texto. A construção da internacionalização é feita escrevendo um arquivo, que por hábito é chamado de ApplicationResources.properties para o idioma padrão da aplicação e para cada localidade (Locale) adicional será construído um arquivo com o nome ApplicationResources_XX.properties, onde o XX representa o nome da localidade internacionalizada (ver exemplo da figura 2.9). Este arquivo conterá as informações que serão escritas da seguinte maneira: chave.subchave = texto. Para se utilizar as informações armazenadas

20 20 nos arquivos de internacionalização (ApplicationResources_XX.properties) coloca-se como origem as informações do campo Keys da tag jsp (o valor de chave.subchave referente ao elemento). ApplicationResources. Properties lblola=olá lblbemvindo=bem Vindo message.ola=olá garota message.erro= TILTI ApplicationResources_EN. properties lblola=hi lblbemvindo=wellcome message.ola=hi girl message.erro= TILTI ApplicationResources_IT. Properties lblola=tcau lblbemvindo=bevenuto message.ola=tcau ragazza message.erro= TILTI Figura 2.9 Arquivo de internacionalização lido pelo struts. Sob demanda, cada rótulo é carregado na memória e permanecerá durante toda a execução, quando requisitado por meio do uso de tags JSP ou pelas classes ActionMessage e ActionErros (figura 2.10). Tag JSP <bean:message key="lblola"/> ActionErros errors.add(action.errors.global_error, new Action.Errors( message.erro )); ActionMessage messages.add(actionmessages.global_message,new ActionMessage( message.ola )); Figura 2.10 Utilização dos rótulos de internacionalização Vantagens da Internacionalização proposta pelo Struts A sintaxe do arquivo.properties, usado para armazenar a informação pelo struts, é a mais simples dos mecanismos apresentados, o que facilita muito seu uso pelo tradutor. A chamada de rótulos por demanda e sua permanência em memória provê um ganho de desempenho no acesso às informações internacionalizadas.

21 Desvantagens da Internacionalização proposta pelo Struts 21 A edição manual dos arquivos de internacionalização gera aumento na complexidade do processo de tradução das interfaces, pedindo ao tradutor que se responsabilize pela construção correta dos arquivos de internacionalização. A documentação não deixa claro como os rótulos, que são carregados em memória, são dês-alocados para evitar uma possível sobrecarga no sistema com a perda de espaço útil da aplicação para elementos que são acessados raramente.

22 CAPÍTULO 03 - LEVANTAMENTO DE REQUISITOS 22 Este capítulo apresenta o levantamento de requisitos do sistema de internacionalização. 3.1 Requisitos não Funcionais do Sistema Como descrito no capítulo 1, sobre as metodologias a serem usadas no desenvolvimento ficou definido o uso da plataforma MONO e a plataforma.net 6. Visando desempenho, far-se-á necessária a construção de um sistema de dados que agilize o processo de recuperação da informação traduzida no momento da exibição da interface internacionalizada. A confiabilidade das traduções precisa ser garantida, assim uma interface deve somente entrar em produção quando esta se encontrar totalmente corrigida. 3.2 Atores do Sistema Serão três atores interagindo para o funcionamento correto do projeto, cada qual com seu papel dentro do sistema, sendo que os dois primeiro são humanos: o programador e o tradutor. E o último é uma representação da entidade do sistema que corresponde ao servidor de aplicação Programador O Ator do sistema invocado pelo nome de programador representa o desenvolvedor de software que pretende utilizar o internacionalizador de interfaces no sistema de informação que pretende construir Tradutor Humano As interfaces previstas para o sistema serão construídas para este ator, sobre sua responsabilidade estará a tradução e validação de todas as interfaces.este ator também cadastrará idiomas para a aplicação, e poderá construir manualmente a memória de termos do sistema Servidor de Aplicação 6 MONO e.net: Em teoria, uma aplicação construía sem código gerenciado para alguma plataforma destas deveriam ser capaz de rodar na outra.

23 23 O servidor da aplicação no sistema de internacionalização de interface é representado como um ator. Na plataforma.net este ator é o servidor de aplicações corresponde IIS 7 (Internet Information Server) e no MONO, sobre o Linux será o servidor de aplicação XPS2 8. Este ator dispara uma série de casos de usos que fornecem a automação do sistema. 3.3 Funcionalidades da Aplicação Figura 3.1 Diagrama de Casos de Uso da aplicação. Esta seção apresenta as funcionalidades previstas para a aplicação divididas em categorias que apresentam semelhanças em seus objetivos. O diagrama (Figura 3.1) exibe o acesso ao caso de usos feitos pelos usuários do sistema Funcionalidades para Programação 7 ISS: Servidor de aplicações web para a tecnologia ASP.NET construído e mantido pela Microsoft. 8 XSP2: Servidor de aplicação para ASP.NET que é implementado e mantido pela comunidade software livre, é executável em diversos sistemas operacionais como o Linux e Windows.

24 24 Figura 3.2 Diagrama de Casos de Uso de Programação. Os casos de uso a seguir são acessados, como visto no diagrama (Figura 3.2) somente pelo programador que acessará eles no momento em que desenvolve a aplicação internacionalizada. Quando mencionada a implementação, para eles, significa que são os requisitos para a preparação do ambiente em que estes casos de usos serão executados Associar Interface A idéia desse caso de uso é desvincular o programador da tarefa de traduzir a interface, criando um mecanismo no qual ele registre as interfaces, e o sistema de Internacionalização de Interfaces opere por traz, detectando os elementos internacionalizáveis automaticamente, preparando o caminho do tradutor em suas atividades de tradução e publicação de telas. Esse caso de uso deve minimizar a complexidade de seu uso, provendo um mecanismo ágil e simples para o programador. Sua implementação deve seguir os princípios: Atuação Reduzida do ator. Simplicidade de Uso Trabalhar Mensagens Esse caso de uso é uma extensão do caso de uso anterior, Associar Interface sua implementação deve seguir os mesmos princípios citados: Atuação Reduzida do ator. Simplicidade de Uso.

4 O Workflow e a Máquina de Regras

4 O Workflow e a Máquina de Regras 4 O Workflow e a Máquina de Regras O objetivo do workflow e da máquina de regras é definir um conjunto de passos e regras configuráveis. Ao longo de sua execução, um usuário consegue simplificar o seu

Leia mais

1- ASP.NET - HTML Server Controls

1- ASP.NET - HTML Server Controls 1- ASP.NET - HTML Server Controls Os controles de servidor - Server Controls - HTML são tags HTML padrão, com exceção de possuirem o atributo : runat="server". Vejamos um código que ilustra isto: O atributo

Leia mais

Introdução ao C# . Visão geral do.net Framework

Introdução ao C# . Visão geral do.net Framework Introdução ao C# Microsoft.NET (comumente conhecido por.net Framework - em inglês: dotnet) é uma iniciativa da empresa Microsoft, que visa uma plataforma única para desenvolvimento e execução de sistemas

Leia mais

Capítulo 1. Introdução. 1.1 Linguagens. OBJETIVOS DO CAPÍTULO Ao final deste capítulo você deverá ser capaz de:

Capítulo 1. Introdução. 1.1 Linguagens. OBJETIVOS DO CAPÍTULO Ao final deste capítulo você deverá ser capaz de: i Sumário 1 Introdução 1 1.1 Linguagens....................................... 1 1.2 O que é um Compilador?................................ 2 1.3 Processadores de Programas: Compiladores, Interpretadores

Leia mais

Geração e execução de scripts de teste em aplicações web a partir de casos de uso direcionados por comportamento 64

Geração e execução de scripts de teste em aplicações web a partir de casos de uso direcionados por comportamento 64 direcionados por comportamento 64 5 Estudo de caso Neste capítulo serão apresentadas as aplicações web utilizadas na aplicação da abordagem proposta, bem como a tecnologia em que foram desenvolvidas, o

Leia mais

Engenharia de Software I

Engenharia de Software I Engenharia de Software I Rogério Eduardo Garcia (rogerio@fct.unesp.br) Bacharelado em Ciência da Computação Aula 05 Material preparado por Fernanda Madeiral Delfim Tópicos Aula 5 Contextualização UML Astah

Leia mais

ASP.NET 2.0 e PHP. Autor: Glauber de Almeida e Juarez Fernandes

ASP.NET 2.0 e PHP. Autor: Glauber de Almeida e Juarez Fernandes ASP.NET 2.0 e PHP Autor: Glauber de Almeida e Juarez Fernandes Linguagens pesquisadas ASP.NET 2.0 e PHP. 1 - ASP.NET 2.0 ASP.NET não é nem uma linguagem de programação como VBScript, php, nem um servidor

Leia mais

World Wide Web e Aplicações

World Wide Web e Aplicações World Wide Web e Aplicações Módulo H O que é a WWW Permite a criação, manipulação e recuperação de informações Padrão de fato para navegação, publicação de informações e execução de transações na Internet

Leia mais

2 Auto-sintonia de Bancos de Dados e Agentes de Software

2 Auto-sintonia de Bancos de Dados e Agentes de Software 2 Auto-sintonia de Bancos de Dados e Agentes de Software A uso da abordagem de agentes de software 1 pode trazer benefícios a áreas de aplicação em que é necessário construir sistemas autônomos, ou seja,

Leia mais

FERRAMENTAS PARA DESENVOLVIMENTO EM C#

FERRAMENTAS PARA DESENVOLVIMENTO EM C# FERRAMENTAS PARA DESENVOLVIMENTO EM C# Camila Sanches Navarro 1,2, Wyllian Fressatti 2 ¹Universidade paranaense (Unipar) Paranavaí PR Brasil sanchesnavarro@gmail.com wyllian@unipar.br Resumo. Este artigo

Leia mais

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011 CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma

Leia mais

PRD Tecnologia de Gestão Ltda. Julho/2008

PRD Tecnologia de Gestão Ltda. Julho/2008 O Processo de Desenvolvimento Telescope Julho/2008 Página 1 Sumário Introdução...3 O desenvolvimento de software tradicional...3 O problema da produtividade...3 O problema da portabilidade...6 O problema

Leia mais

Trabalho de Sistemas Distribuídos

Trabalho de Sistemas Distribuídos Cássio de Olivera Ferraz Trabalho de Sistemas Distribuídos Petrópolis 2015, v-1.0 Cássio de Olivera Ferraz Trabalho de Sistemas Distribuídos Trabalho sobre sistemas distribuídos e suas tecnologias. Universidade

Leia mais

Associação Carioca de Ensino Superior Centro Universitário Carioca

Associação Carioca de Ensino Superior Centro Universitário Carioca Desenvolvimento de Aplicações Web Lista de Exercícios Métodos HTTP 1. No tocante ao protocolo de transferência de hipertexto (HTTP), esse protocolo da categoria "solicitação e resposta" possui três métodos

Leia mais

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos

Leia mais

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.

Leia mais

FERRAMENTAS NECESSÁRIAS PARA O DESENVOLVIMENTO EM C#

FERRAMENTAS NECESSÁRIAS PARA O DESENVOLVIMENTO EM C# FERRAMENTAS NECESSÁRIAS PARA O DESENVOLVIMENTO EM C# Camila Sanches Navarro 1,2, Willian Magalhães 2 ¹Universidade paranaense (Unipar) Paranavaí PR Brasil sanchesnavarro@gmail.com wmagalhaes@unipar.br

Leia mais

Universidade Federal Rural de Pernambuco. Bacharelado em Sistemas de Informação. Disciplina: Análise e Projeto de Sistemas de Informação

Universidade Federal Rural de Pernambuco. Bacharelado em Sistemas de Informação. Disciplina: Análise e Projeto de Sistemas de Informação Universidade Federal Rural de Pernambuco Bacharelado em Sistemas de Informação Disciplina: Análise e Projeto de Sistemas de Informação Docente: Rodrigo Aluna: Thays Melo de Moraes Diagramas do Projeto

Leia mais

INDICE 3.APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES

INDICE 3.APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES w w w. i d e a l o g i c. c o m. b r INDICE 1.APRESENTAÇÃO 2.ESPECIFICAÇÃO DOS RECURSOS DO SOFTWARE SAXES 2.1. Funcionalidades comuns a outras ferramentas similares 2.2. Funcionalidades próprias do software

Leia mais

19/05/2009. Módulo 1

19/05/2009. Módulo 1 ASP.NET Módulo 1 Objetivo Mostrar os conceitos fundamentais da plataforma Microsoft.Net e suas ferramentas; Apresentar os conceitos fundamentais de aplicações web e seus elementos; Demonstrar de forma

Leia mais

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional Juarez Bachmann Orientador: Alexander Roberto Valdameri Roteiro Introdução Objetivos Fundamentação teórica Desenvolvimento

Leia mais

ESTUDO COMPARATIVO DE BIBLIOTECAS GRÁFICAS I TEGRADAS COM OPE GL

ESTUDO COMPARATIVO DE BIBLIOTECAS GRÁFICAS I TEGRADAS COM OPE GL ESTUDO COMPARATIVO DE BIBLIOTECAS GRÁFICAS I TEGRADAS COM OPE GL Francisco Tiago Avelar, Vitor Conrado F. Gomes, Cesar Tadeu Pozzer Universidade Federal de Santa Maria UFSM Curso de Ciência da Computação

Leia mais

MedEl: Uma solução de E-Learning utilizando tecnologia Microsoft ASP.NET

MedEl: Uma solução de E-Learning utilizando tecnologia Microsoft ASP.NET MedEl: Uma solução de E-Learning utilizando tecnologia Microsoft ASP.NET Átila Correia Cunha 1, 2, Glaucon Henrique Mauricio Maia 1, 2, Waner Ferreira Tavares 1, 2, Jorge Bergson¹, Rui Gomes Patrício 3

Leia mais

Com relação às áreas de conhecimento de projetos conforme o. PMBoK, julgue os itens subseqüentes.

Com relação às áreas de conhecimento de projetos conforme o. PMBoK, julgue os itens subseqüentes. De acordo com o comando a que cada um dos itens de 1 a 70 se refira, marque, na folha de respostas, para cada item: o campo designado com o código C, caso julgue o item CERTO; ou o campo designado com

Leia mais

Protótipo de um sistema para licenciamento de aplicativos Microsoft.NET baseado em assinatura digital XML

Protótipo de um sistema para licenciamento de aplicativos Microsoft.NET baseado em assinatura digital XML Protótipo de um sistema para licenciamento de aplicativos Microsoft.NET baseado em assinatura digital XML Acadêmico: Leonardo Chagas D Ippolito Orientador: Prof. Marcel Hugo Blumenau, Dezembro de 2004

Leia mais

Desenvolvendo Websites com PHP

Desenvolvendo Websites com PHP Desenvolvendo Websites com PHP Aprenda a criar Websites dinâmicos e interativos com PHP e bancos de dados Juliano Niederauer 19 Capítulo 1 O que é o PHP? O PHP é uma das linguagens mais utilizadas na Web.

Leia mais

Sistema Gerenciador de Hotel. Adriano Douglas Girardello. Ana Paula Fredrich. Tiago Alexandre Schulz Sippert

Sistema Gerenciador de Hotel. Adriano Douglas Girardello. Ana Paula Fredrich. Tiago Alexandre Schulz Sippert UNIOESTE Universidade Estadual do Oeste do Paraná CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS Colegiado de Informática Curso de Bacharelado em Informática Sistema Gerenciador de Hotel Adriano Douglas Girardello

Leia mais

ASP.NET. Guia do Desenvolvedor. Felipe Cembranelli. Novatec Editora. www.novateceditora.com.br

ASP.NET. Guia do Desenvolvedor. Felipe Cembranelli. Novatec Editora. www.novateceditora.com.br ASP.NET Guia do Desenvolvedor Felipe Cembranelli Novatec Editora www.novateceditora.com.br 1 Introdução à plataforma.net A plataforma Microsoft.NET.NET é uma nova plataforma de software para desenvolvimento

Leia mais

Ambientes Visuais. Ambientes Visuais

Ambientes Visuais. Ambientes Visuais Ambientes Visuais Inicialmente, apenas especialistas utilizavam os computadores, sendo que os primeiros desenvolvidos ocupavam grandes áreas e tinham um poder de processamento reduzido. Porém, a contínua

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA CURSO DE GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO. Contribuições do MDA para o desenvolvimento de software

UNIVERSIDADE FEDERAL DE SANTA CATARINA CURSO DE GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO. Contribuições do MDA para o desenvolvimento de software UNIVERSIDADE FEDERAL DE SANTA CATARINA CURSO DE GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO Contribuições do MDA para o desenvolvimento de software Anna Carla Mohr Verner Helder Eugenio dos Santos Puia Florianópolis,

Leia mais

4 Conversor EDTV Raw. 4.1 Arquitetura

4 Conversor EDTV Raw. 4.1 Arquitetura 4 Conversor EDTV Raw O conversor EDTV Raw é o programa que lê um documento escrito no perfil NCL EDTV e gera um documento Raw equivalente, i.e. que define a mesma apresentação. Este capítulo, apresenta

Leia mais

CURSO DESENVOLVEDOR JAVA Edição 2009

CURSO DESENVOLVEDOR JAVA Edição 2009 CURSO DESENVOLVEDOR JAVA Edição 2009 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos e com o uso

Leia mais

AULA 1 PHP O QUE É APACHE FRIENDS

AULA 1 PHP O QUE É APACHE FRIENDS O QUE É PHP Se você já programa PHP, aconselho que pule para o capítulo 7 desse livro. Pois até esse capitulo iremos abordar algoritmos em PHP até a construção de uma classe com seus métodos e atributos

Leia mais

DMS Documento de Modelagem de Sistema. Versão: 1.4

DMS Documento de Modelagem de Sistema. Versão: 1.4 DMS Documento de Modelagem de Sistema Versão: 1.4 VERANEIO Gibson Macedo Denis Carvalho Matheus Pedro Ingrid Cavalcanti Rafael Ribeiro Tabela de Revisões Versão Principais Autores da Versão Data de Término

Leia mais

Exemplos práticos do uso de RMI em sistemas distribuídos

Exemplos práticos do uso de RMI em sistemas distribuídos Exemplos práticos do uso de RMI em sistemas distribuídos Elder de Macedo Rodrigues, Guilherme Montez Guindani, Leonardo Albernaz Amaral 1 Fábio Delamare 2 Pontifícia Universidade Católica do Rio Grande

Leia mais

Questionário. A ferramenta auxilia na alocação de Não (0) x x x. Satisfatório (5) complexidade de um caso de uso? de uso (72) Sim (10)

Questionário. A ferramenta auxilia na alocação de Não (0) x x x. Satisfatório (5) complexidade de um caso de uso? de uso (72) Sim (10) Questionário Nível Avaliado Gerador de plano de teste Gerador de dados Função/característica do produto Gestão dos dados do plano de teste (51) Perguntas Pontuação Selenium BadBoy Canoo A ferramenta auilia

Leia mais

Programação WEB Introdução

Programação WEB Introdução Programação WEB Introdução Rafael Vieira Coelho IFRS Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Sul Campus Farroupilha rafael.coelho@farroupilha.ifrs.edu.br Roteiro 1) Conceitos

Leia mais

SIMTOL - Sistema de Memória de Tradução Online

SIMTOL - Sistema de Memória de Tradução Online Universidade Federal do Espírito Santo Departamento de Informática Curso de Ciências da computação Eduardo Rocha Monteiro SIMTOL - Sistema de Memória de Tradução Online Vitória-ES 2007 Eduardo Rocha Monteiro

Leia mais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais Notas da Aula 15 - Fundamentos de Sistemas Operacionais 1. Software de Entrada e Saída: Visão Geral Uma das tarefas do Sistema Operacional é simplificar o acesso aos dispositivos de hardware pelos processos

Leia mais

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões Prof. MSc. Hugo Souza Se você precisar manter informações sobre seus usuários enquanto eles navegam pelo seu site, ou até quando eles saem

Leia mais

Infracontrol versão 1.0

Infracontrol versão 1.0 Infracontrol versão 1.0 ¹Rafael Victória Chevarria ¹Tecnologia em Redes de Computadores - Faculdade de Tecnologia SENAC (Serviço Nacional de Aprendizagem Comercial) Rua Gonçalves Chaves 602-A Centro 96015-560

Leia mais

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE Aluno: Roberto Reinert Orientador: Everaldo A. Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Workflow Processo

Leia mais

Sistemas para internet e software livre

Sistemas para internet e software livre Sistemas para internet e software livre Metodologia de modelagem de aplicações WEB Image: FreeDigitalPhotos.net Domínio: Elementos de aplicação WEB Páginas Web Scripts Formulários Applets e ActiveX Motivação

Leia mais

UNIVERSIDADE ESTADUAL DE PONTA GROSSA

UNIVERSIDADE ESTADUAL DE PONTA GROSSA UNIVERSIDADE ESTADUAL DE PONTA GROSSA SECRETARIA MUNICIPAL DE GESTÃO DE RECURSOS HUMANOS CONCURSO PÚBLICO PARA ANALISTA DE SUPORTE 08 DE NOVEMBRO DE 2009... (NOME COMPLETO EM LETRA DE FORMA) INSTRUÇÕES

Leia mais

Desenvolvendo e Integrando Serviços Multiplataforma de TV Digital Interativa

Desenvolvendo e Integrando Serviços Multiplataforma de TV Digital Interativa Desenvolvendo e Integrando Serviços Multiplataforma de TV Digital Interativa Agenda Introdução Aplicações interativas de TV Digital Desafios de layout e usabilidade Laboratório de usabilidade Desafios

Leia mais

TEMA TECNOLOGIA DA INFORMAÇÃO -Tipos de SI e Recursos de Software parte2. AULA DE SISTEMAS DE INFORMAÇÃO PROFa. ROSA MOTTA

TEMA TECNOLOGIA DA INFORMAÇÃO -Tipos de SI e Recursos de Software parte2. AULA DE SISTEMAS DE INFORMAÇÃO PROFa. ROSA MOTTA TEMA TECNOLOGIA DA INFORMAÇÃO -Tipos de SI e Recursos de Software parte2 AULA DE SISTEMAS DE INFORMAÇÃO PROFa. ROSA MOTTA CONTEÚDO DA AULA Tipos de Software Serviços Web Tendências 2 OBJETIVOS ESPECÍFICOS

Leia mais

Aula 03 - Projeto Java Web

Aula 03 - Projeto Java Web Aula 03 - Projeto Java Web Para criação de um projeto java web, vá em File/New. Escolha o projeto: Em seguida, na caixa Categorias selecione Java Web. Feito isso, na caixa à direita selecione Aplicação

Leia mais

CURSO DE SISTEMAS DE INFORMAÇÃO

CURSO DE SISTEMAS DE INFORMAÇÃO 1 CURSO DE SISTEMAS DE INFORMAÇÃO EMENTÁRIO DAS DISCIPLINAS 2011.1 BRUSQUE (SC) 2015 2 SUMÁRIO 1ª FASE... 4 01 ARQUITETURA DE COMPUTADORES... 4 02 FILOSOFIA... 4 03 FUNDAMENTOS MATEMÁTICOS PARA COMPUTAÇÃO...

Leia mais

Programando em C# Orientado a Objetos. By: Maromo

Programando em C# Orientado a Objetos. By: Maromo Programando em C# Orientado a Objetos By: Maromo Agenda Módulo 1 Plataforma.Net. Linguagem de Programação C#. Tipos primitivos, comandos de controle. Exercícios de Fixação. Introdução O modelo de programação

Leia mais

Curso de Aprendizado Industrial Desenvolvedor WEB

Curso de Aprendizado Industrial Desenvolvedor WEB Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos II Professor: Cheli dos S. Mendes da Costa Modelo Cliente- Servidor Modelo de Aplicação Cliente-servidor Os

Leia mais

PROJETO DE REDES www.projetoderedes.com.br

PROJETO DE REDES www.projetoderedes.com.br PROJETO DE REDES www.projetoderedes.com.br Centro Universitário de Volta Redonda - UniFOA Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro

Leia mais

SENADO FEDERAL Secretaria Especial do Interlegis SINTER Subsecretaria de Tecnologia da Informação SSTIN. Produto I: ATU SAAP

SENADO FEDERAL Secretaria Especial do Interlegis SINTER Subsecretaria de Tecnologia da Informação SSTIN. Produto I: ATU SAAP Produto I: ATU SAAP Documento de projeto do novo sistema. Modelo de Dados, Casos de Usos e Interface Gráfica do Sistema Pablo Nogueira Oliveira Termo de Referência nº 129275 Contrato Número 2008/000988

Leia mais

Programando em PHP. Conceitos Básicos

Programando em PHP. Conceitos Básicos Programando em PHP www.guilhermepontes.eti.br lgapontes@gmail.com Conceitos Básicos Todo o escopo deste estudo estará voltado para a criação de sites com o uso dos diversos recursos de programação web

Leia mais

EMENTAS DO CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

EMENTAS DO CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS EMENTAS DO CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS INTRODUÇÃO À COMPUTAÇÃO 60 h 1º Evolução histórica dos computadores. Aspectos de hardware: conceitos básicos de CPU, memórias,

Leia mais

Excel 2010 Modulo II

Excel 2010 Modulo II Excel 2010 Modulo II Sumário Nomeando intervalos de células... 1 Classificação e filtro de dados... 3 Subtotais... 6 Validação e auditoria de dados... 8 Validação e auditoria de dados... 9 Cenários...

Leia mais

Softwares de Sistemas e de Aplicação

Softwares de Sistemas e de Aplicação Fundamentos dos Sistemas de Informação Softwares de Sistemas e de Aplicação Profª. Esp. Milena Resende - milenaresende@fimes.edu.br Visão Geral de Software O que é um software? Qual a função do software?

Leia mais

Documento de Arquitetura

Documento de Arquitetura Documento de Arquitetura A2MEPonto - SISTEMA DE PONTO ELETRÔNICO A2MEPonto - SISTEMA DE PONTO ELETRÔNICO #1 Pág. 1 de 11 HISTÓRICO DE REVISÕES Data Versão Descrição Autor 28/10/2010 1 Elaboração do documento

Leia mais

Rational Quality Manager. Nome: Raphael Castellano Campus: AKXE Matrícula: 200601124831

Rational Quality Manager. Nome: Raphael Castellano Campus: AKXE Matrícula: 200601124831 Rational Quality Manager Nome: Raphael Castellano Campus: AKXE Matrícula: 200601124831 1 Informações Gerais Informações Gerais sobre o RQM http://www-01.ibm.com/software/awdtools/rqm/ Link para o RQM https://rqmtreina.mvrec.local:9443/jazz/web/console

Leia mais

Programação para Internet Orientada a Objetos com PHP & MySQL Visão Geral de Programação Orientada a Objetos com PHP & MySQL II

Programação para Internet Orientada a Objetos com PHP & MySQL Visão Geral de Programação Orientada a Objetos com PHP & MySQL II Programação para Internet Orientada a Objetos com PHP & MySQL Visão Geral de Programação Orientada a Objetos com PHP & MySQL II Prof. MSc. Hugo Souza Na última aula falamos um pouco da necessidade do surgimento

Leia mais

Gerenciador Financeiro CITi. Gerenciador Financeiro CITi

Gerenciador Financeiro CITi. Gerenciador Financeiro CITi (Sistema de Gerenciamento Financeiro) Especificação dos Requisitos do Software Gerenciador Financeiro CITi Versão 1.0 Autores: Bruno Medeiros de Oliveira Igor Rafael Medeiros Pedro Araújo de Melo Tiago

Leia mais

UNIVERSIDADE PRESBITERIANA MACKENZIE FACULDADE DE COMPUTAÇÃO E INFORMÁTICA

UNIVERSIDADE PRESBITERIANA MACKENZIE FACULDADE DE COMPUTAÇÃO E INFORMÁTICA EDITAL DO PROGRAMA DE CERTIFICAÇÕES EM COMPUTAÇÃO MACK COMPUTING CERTIFICATION MCC 2º SEMESTRE DE 2014 O Diretor da Faculdade de Computação e Informática (FCI), no uso de suas atribuições estatutárias

Leia mais

Conteúdo Programático de PHP

Conteúdo Programático de PHP Conteúdo Programático de PHP 1 Por que PHP? No mercado atual existem diversas tecnologias especializadas na integração de banco de dados com a WEB, sendo o PHP a linguagem que mais se desenvolve, tendo

Leia mais

AULA 4 VISÃO BÁSICA DE CLASSES EM PHP

AULA 4 VISÃO BÁSICA DE CLASSES EM PHP AULA 4 VISÃO BÁSICA DE CLASSES EM PHP Antes de mais nada, vamos conhecer alguns conceitos, que serão importantes para o entendimento mais efetivos dos assuntos que trataremos durante a leitura desta apostila.

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

CURSO TECNOLÓGICO 2008/01 1º SEMESTRE. Programação e Estruturas de Dados Fundamentais

CURSO TECNOLÓGICO 2008/01 1º SEMESTRE. Programação e Estruturas de Dados Fundamentais 1º SEMESTRE Programação e Estruturas de Dados Fundamentais 8 Créditos Desenvolver a lógica de programação através da construção de algoritmos utilizando português estruturado Representar a solução de problemas

Leia mais

DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS

DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS Leandro Guilherme Gouvea 1, João Paulo Rodrigues 1, Wyllian Fressatti 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil leandrog.gouvea@gmail.com,

Leia mais

1. DESCRIÇÃO DO SIE Sistema de Informações para o Ensino

1. DESCRIÇÃO DO SIE Sistema de Informações para o Ensino 1. DESCRIÇÃO DO SIE Sistema de Informações para o Ensino O SIE é um sistema aplicativo integrado, projetado segundo uma arquitetura multicamadas, cuja concepção funcional privilegiou as exigências da Legislação

Leia mais

Uma Abordagem usando PU

Uma Abordagem usando PU Uma Abordagem usando PU Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Referências: Baseada em: Rational Software Corpotation G. Booch, Ivar Jacobson,

Leia mais

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider Ferramenta: Spider-CL Manual do Usuário Versão da Ferramenta: 1.1 www.ufpa.br/spider Histórico de Revisões Data Versão Descrição Autor 14/07/2009 1.0 15/07/2009 1.1 16/07/2009 1.2 20/05/2010 1.3 Preenchimento

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA. Informatização de farmácias publicas utilizando software livre.

UNIVERSIDADE FEDERAL DE SANTA CATARINA. Informatização de farmácias publicas utilizando software livre. UNIVERSIDADE FEDERAL DE SANTA CATARINA Informatização de farmácias publicas utilizando software livre. MURILO NUNES ELIAS FLORIANÓPOLIS SC 2007/2 UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE

Leia mais

Desenvolvendo Websites com PHP

Desenvolvendo Websites com PHP Desenvolvendo Websites com PHP 2ª Edição Juliano Niederauer Novatec Copyright 2009, 2011 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução

Leia mais

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração O livro

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração O livro Desenvolvimento em PHP usando Frameworks Elton Luís Minetto Agenda Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração O livro Ambiente Web É o ambiente

Leia mais

Acessando um Banco de Dados

Acessando um Banco de Dados Acessando um Banco de Dados Introdução Agora que você já está craque em JSP e já instalou seu servidor, vamos direto para a parte prática! Neste tutorial vamos aprender a acessar um banco de dados. Para

Leia mais

Documento de Projeto de Sistema

Documento de Projeto de Sistema Documento de Projeto de Sistema 1 IFES / Serra Projeto: Gerenciador de Pelada - Oasis Registro de Alterações: Versão Responsável Data Alterações 0.1 Eduardo Rigamonte, Geann Valfré, João Paulo Miranda,

Leia mais

Desenvolvimento Web. Saymon Yury C. Silva Analista de Sistemas. http://www.saymonyury.com.br

Desenvolvimento Web. Saymon Yury C. Silva Analista de Sistemas. http://www.saymonyury.com.br Desenvolvimento Web Saymon Yury C. Silva Analista de Sistemas http://www.saymonyury.com.br Vantagens Informação em qualquer hora e lugar; Rápidos resultados; Portabilidade absoluta; Manutenção facilitada

Leia mais

1 http://www.google.com

1 http://www.google.com 1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou

Leia mais

GeCA: Uma Ferramenta de Engenharia Reversa e Geração Automática de Código

GeCA: Uma Ferramenta de Engenharia Reversa e Geração Automática de Código GeCA: Uma Ferramenta de Engenharia Reversa e Geração Automática de Código Igor Steinmacher 1, Éderson Fernando Amorim 1, Flávio Luiz Schiavoni 1, Elisa Hatsue Moriya Huzita 1 1 Departamento de Informática

Leia mais

Documento de Requisitos Projeto SisVendas Sistema de Controle de Vendas para Loja de Informática.

Documento de Requisitos Projeto SisVendas Sistema de Controle de Vendas para Loja de Informática. Documento de Requisitos Projeto SisVendas Sistema de Controle de Vendas para Loja de Informática. 1 Introdução 1.1 Propósito O propósito deste documento de especificação de requisitos é definir os requisitos

Leia mais

Banco de Dados de Músicas. Andre Lima Rocha Campos Osório Pereira Carvalho

Banco de Dados de Músicas. Andre Lima Rocha Campos Osório Pereira Carvalho Banco de Dados de Músicas Andre Lima Rocha Campos Osório Pereira Carvalho Definição Aplicação Web que oferece ao usuário um serviço de busca de músicas e informações relacionadas, como compositor, interprete,

Leia mais

DESENVOLVIMENTO DE ALGORITMO PARA FUNÇÃO MULTILÍNGUE DO SOFTWARE TROPLUX

DESENVOLVIMENTO DE ALGORITMO PARA FUNÇÃO MULTILÍNGUE DO SOFTWARE TROPLUX DESENVOLVIMENTO DE ALGORITMO PARA FUNÇÃO MULTILÍNGUE DO SOFTWARE TROPLUX Pedro Vítor Sousa Ribeiro Universidade Federal de Alagoas pedrovsribeiro@gmail.com Ricardo Carvalho Cabús Universidade federal de

Leia mais

Especificação dos Requisitos do Software. White Label

Especificação dos Requisitos do Software. White Label Ubee Especificação dos Requisitos do Software White Label Review 0.3 Autores: Airton Sampaio de Sobral (asds@cin.ufpe.br) Alan Gomes Alvino (aga@cin.ufpe.br) Glauco Roberto Pires dos Santos (grps@cin.ufpe.br)

Leia mais

Diretrizes para criação de um padrão de desenvolvimento de sistemas de informação baseados em cots

Diretrizes para criação de um padrão de desenvolvimento de sistemas de informação baseados em cots Diretrizes para criação de um padrão de desenvolvimento de sistemas de informação baseados em cots Roosewelt Sanie Da Silva¹ 1 Ciência da Computação Universidade Presidente Antônio Carlos (UNIPAC) Rodovia

Leia mais

Java II. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com

Java II. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Java II Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Por quê JSP? Com Servlets é fácil Ler dados de um formulário Recuperar dados de uma requisição Gerar informação de resposta Fazer gerenciamento

Leia mais

Aplicação Prática de Lua para Web

Aplicação Prática de Lua para Web Aplicação Prática de Lua para Web Aluno: Diego Malone Orientador: Sérgio Lifschitz Introdução A linguagem Lua vem sendo desenvolvida desde 1993 por pesquisadores do Departamento de Informática da PUC-Rio

Leia mais

Semântica para Sharepoint. Busca semântica utilizando ontologias

Semântica para Sharepoint. Busca semântica utilizando ontologias Semântica para Sharepoint Busca semântica utilizando ontologias Índice 1 Introdução... 2 2 Arquitetura... 3 3 Componentes do Produto... 4 3.1 OntoBroker... 4 3.2 OntoStudio... 4 3.3 SemanticCore para SharePoint...

Leia mais

Universidade Federal de Goiás Centro de Recursos Computacionais - CERCOMP Divisão de Sistemas. Criação de uma Serviço de Geração de Relatórios

Universidade Federal de Goiás Centro de Recursos Computacionais - CERCOMP Divisão de Sistemas. Criação de uma Serviço de Geração de Relatórios Universidade Federal de Goiás Centro de Recursos Computacionais - CERCOMP Divisão de Sistemas Criação de uma Serviço de Geração de Relatórios Goiânia 12/2011 Versionamento 12/12/2011 Hugo Marciano... 1.0

Leia mais

Bool setcookie (string nome [, string valor [, int validade [, string caminho [, string dominio [, int seguro]]]]] )

Bool setcookie (string nome [, string valor [, int validade [, string caminho [, string dominio [, int seguro]]]]] ) Disciplina: Tópicos Especiais em TI PHP Este material foi produzido com base nos livros e documentos citados abaixo, que possuem direitos autorais sobre o conteúdo. Favor adquiri-los para dar continuidade

Leia mais

FERRAMENTA WEB PARA MODELAGEM LÓGICA EM PROJETOS DE BANCOS DE DADOS RELACIONAIS

FERRAMENTA WEB PARA MODELAGEM LÓGICA EM PROJETOS DE BANCOS DE DADOS RELACIONAIS FERRAMENTA WEB PARA MODELAGEM LÓGICA EM PROJETOS DE BANCOS DE DADOS RELACIONAIS PAULO ALBERTO BUGMANN ORIENTADOR: ALEXANDER ROBERTO VALDAMERI Roteiro Introdução Objetivos Fundamentação teórica Desenvolvimento

Leia mais

Automação do Processo de Instalação de Softwares

Automação do Processo de Instalação de Softwares Automação do Processo de Instalação de Softwares Aislan Nogueira Diogo Avelino João Rafael Azevedo Milene Moreira Companhia Siderúrgica Nacional - CSN RESUMO Este artigo tem como finalidade apresentar

Leia mais

XDR. Solução para Big Data.

XDR. Solução para Big Data. XDR Solução para Big Data. ObJetivo Principal O volume de informações com os quais as empresas de telecomunicações/internet têm que lidar é muito grande, e está em constante crescimento devido à franca

Leia mais

O atacante pode roubar a sessão de um usuário legítimo do sistema, que esteja previamente autenticado e realizar operações que o mesmo poderia.

O atacante pode roubar a sessão de um usuário legítimo do sistema, que esteja previamente autenticado e realizar operações que o mesmo poderia. Explorando e tratando a falha de Cross-site-scripting (XSS) 1 D E D E Z E M B R O D E 2 0 1 5 Muito pouco falada e com alto nível crítico dentro das vulnerabilidades relatadas, o Cross-site-scripting (XSS)

Leia mais

ORDEM DE SERVIÇO OS 003/DINFO/2013 16/09/2013

ORDEM DE SERVIÇO OS 003/DINFO/2013 16/09/2013 A DIRETORIA DE INFORMÁTICA DINFO DA UNIVERSIDADE DO ESTADO DO RIO DE JANEIRO -UERJ, no uso de suas atribuições legais, estabelece: Art. 1º: Para fins de normatização do Desenvolvimento Tecnológico na UERJ

Leia mais

Documento de Visão do Projeto

Documento de Visão do Projeto Documento de Visão do Projeto 1. Objetivo O propósito deste documento é coletar, analisar e definir as necessidades de alto-nível e características do projeto de software do Módulo Editor de Estruturas

Leia mais

Impressão e Fotolito Oficina Gráfica da EDITORA VIENA. Todos os direitos reservados pela EDITORA VIENA LTDA

Impressão e Fotolito Oficina Gráfica da EDITORA VIENA. Todos os direitos reservados pela EDITORA VIENA LTDA Autores Karina de Oliveira Wellington da Silva Rehder Consultores em Informática Editora Viena Rua Regente Feijó, 621 - Centro - Santa Cruz do Rio Pardo - SP CEP 18.900-000 Central de Atendimento (0XX14)

Leia mais

Suporte à Engenharia Reversa para o ambiente SEA

Suporte à Engenharia Reversa para o ambiente SEA Otavio Pereira Suporte à Engenharia Reversa para o ambiente SEA Orientador: Ricardo Pereira e Silva Universidade Federal de Santa Catarina - UFSC Departamento de Informática e Estatística - INE Florianópolis

Leia mais

WEBDESIGN. Professor: Paulo Trentin paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira

WEBDESIGN. Professor: Paulo Trentin paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira WEBDESIGN Professor: Paulo Trentin paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira 1 CDI - Curso de Webdesign - Prof. Paulo Trentin Objetivos para esta aula Debater sobre

Leia mais

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração Desenvolvimento em PHP usando Frameworks Elton Luís Minetto Agenda Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração Ambiente Web É o ambiente formado

Leia mais

Introdução à Tecnologia Web. Ferramentas e Tecnologias de Desenvolvimento Web. Profª MSc. Elizabete Munzlinger www.elizabete.com.

Introdução à Tecnologia Web. Ferramentas e Tecnologias de Desenvolvimento Web. Profª MSc. Elizabete Munzlinger www.elizabete.com. IntroduçãoàTecnologiaWeb FerramentaseTecnologiasde DesenvolvimentoWeb ProfªMSc.ElizabeteMunzlinger www.elizabete.com.br ProfªMSc.ElizabeteMunzlinger www.elizabete.com.br FerramentaseTecnologiasde DesenvolvimentoWeb

Leia mais