1 / 27

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

MedEl: Uma solução de E-Learning utilizando tecnologia Microsoft ASP.NET. Autores: Glaucon Henrique Mauricio Maia CoAutores: Atila Correia, Waner Tavares, Jorge Bergson, Rui Gomes, Marcelo Iury, João Neto e José Candido. Introdução.

Download Presentation

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

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MedEl: Uma solução de E-Learning utilizando tecnologia Microsoft ASP.NET Autores: Glaucon Henrique Mauricio Maia CoAutores: Atila Correia, Waner Tavares, Jorge Bergson, Rui Gomes, Marcelo Iury, João Neto e José Candido

  2. Introdução • Crescimento da demanda por produtos e serviços na área de educação à distância • Aplicações Web: • Atendem a uma grande gama de clientes; • Independência de localidade e configuração; • Acessibilidade via Internet • A tecnologia Microsoft: • Plataforma ASP.NET • Framework .NET • Desenvolvimento de aplicações Web robustas e de grande escala.

  3. Ambiente de Educação a Distância • Para comprovar a eficiência das tecnologias Microsoft .NET e atender a demanda citada anteriormente (software de ensino a distância para profissionais da saúde) foi desenvolvida a aplicação MedEl (Medical E-Learning).

  4. Metodologia • A definição da arquitetura do sistema preocupou-se com um baixo custo de implantação e com uma fácil extensão e manutenção da ferramenta gerada. • Para isso foram utilizados o paradigma da Orientação a Objetos e Padrões de Projeto (Design Patterns) • No processo de análise foram realizadas entrevistas com estudantes e professores da área (Curso de Medicina da Universidade Federal do Ceará), facilitando: • Especificação dos requisitos adequados; • IHC mais adequada.

  5. Orientação a Objetos Orientação a Objetos • O paradigma da Orientação a Objetos (OO) • Baseado na construção de sistemas a partir de componentes reutilizáveis, chamados de classes; • Relacionamento entre dados (atributos) e comportamentos (métodos); • Encapsulamento; • Herança; • Polimorfismo.

  6. Classe Covered Porch Bath Office kitchen Dining Room Family Room Living Room O que são Classes e Objetos • Classes: • São como “plantas” de objetos • Contém comportamentos (métodos) • e atributos (dados) • Objetos: • São instâncias de uma classe • Criados usando a palavra-chave new • Executam ações Objeto

  7. Orientação a Objetos Encapsulamento • Separação dos aspectos externos de um objeto, que são acessíveis para outros objetos, dos detalhes internos de implementação do objeto. [Rumbaugh] • Mecanismo para “esconder” a implementação do objeto fazendo com que outros componentes do sistema não tenham conhecimento do conteúdo interno dos dados armazenados no objeto. [Yourdon]

  8. Orientação a Objetos Encapsulamento... • Conseqüências: • Comunicação entre os objetos é feita através de mensagens enviadas para as operações • Implementação de um objeto pode ser mudada sem afetar as aplicações que o usam • Facilidade de depuração, portabilidade, etc • Lei da OO • Os dados não podem ser acessados diretamente (são encapsulados)

  9. Polimorfismo • Linguagens convencionais, como Pascal e C são baseadas na idéia de que funções têm um tipo único: são linguagens monomórficas. • Linguagens polimórficas, por sua vez, permitem que funções de mesmo nome, desde que pelo menos um de seus parâmetros perfaça uma distinção (quantidade, nome ou tipo), sejam invocadas para objetos diferentes. • Significa que a mesma operação pode se comportar diferentemente em classes diferentes. [Rumbaugh]

  10. CLASSE BASE B A Características Herdadas A B A B C E F D CLASSES DERIVADAS Herança • Todos os objetos criados a partir da mesma classe vão compartilhar (herdar) as características descritas por ela. • Usando a herança é possível montar uma classe nova (subclasse ou classe-filho), definindo-a em termos de outra classe existente (superclasse ou classe pai).

  11. Herança... • Na prática, a herança é uma maneira de evitar repetição de código. • Especialização, você pode considerar uma subclasse um caso especial da classe-pai. • Generalização, você pode usar a classe-pai para compartilhar os elementos comuns, e também parte do código. Automóvel Generalização Automóvel esportivo Especialização Porsche

  12. Orientação a Objetos Padrões de Projeto • Padrões de Projeto: • Soluções genéricas e reutilizáveis • Aplicáveis em classes de problemas bem conhecidos. • Soluções que um dia funcionaram, tornam-se receitas para situações similares (desde que estas soluções tenham sido projetadas com flexibilidade). • Fornece um conjunto de interações específicas que podem ser aplicadas para objetos genéricos para resolver problemas conhecidos.

  13. Orientação a Objetos Padrões de Projeto - MVC • Model-View-Controller(MVC): • Padrão fundamental • Desenvolvido para atuar na separação da interface do usuário das Regras de Negócio e acesso aos Dados.

  14. Orientação a Objetos Padrões de Projeto - DAO • O Data Access Object (DAO) • Fornece interface flexível entre a lógica de negócio e as fontes de dados reais. • Desenvolvedores implementam um objeto unicamente responsável por receber informação de um armazenamento persistente, onde quer que ele esteja. • Isto abstrai a visão do dado usada por uma aplicação do layout da tabela, esquema XML ou arquivo em disco.

  15. Orientação a Objetos Padrões de Projeto - Singleton • Utilizado quando se necessita assegurar que só pode existir uma e somente uma instância de uma classe. • Pode utilizar construtores privados • Se a instância não existir, ela será criada a primeira vez e sempre que o método for chamado, ele irá retornar o mesmo objeto.

  16. Orientação a Objetos Padrões de Projeto – Abstract Factory • Provê uma interface para criar famílias de objetos relacionados sem especificar suas classes concretas. • As Classes e/ou objetos que participam deste padrão são: • AbstractFactory - declara uma interface para operações que cria objetos produto abstratos • ConcreteFactory   - implementa as operações para criar objetos produto concretos • AbstractProduct - declara uma interface para um tipo objeto produto • Product  - define um objeto produto a ser criado pelo factory concreto correspondente • Client – usa interfaces declaradas pelas classes AbstractFactory e AbstractProduct

  17. Orientação a Objetos Padrões de Projeto – Abstract Factory Diagrama UML

  18. Orientação a Objetos Arquitetura da Solução • Dividida em três partes • MedElUI • MedElBusiness • MedElDAO

  19. Orientação a Objetos Arquitetura da Solução - MedElUI • MedElUI • ASP.NET WebForms • Navegabilidade simples e intuitiva

  20. Orientação a Objetos Arquitetura da Solução - MedElBusiness • MedElBusiness • Manipular chamadas vindas da camada de apresentação • Utiliza Facade para interceptar as chamadas e enviá-las para o(s) Business correspondentes. • Implementa Interface DAO, que implementa o padrão de projeto Data Acess Object, é utilizada através da Camada de Dados.

  21. Orientação a Objetos Arquitetura da Solução - MedElDAO • MedElDAO • Camada flexível para diversas formas de acesso a dados • Banco de dados SQL Server 2000 • Através de um nome, podemos recuperar a query SQL responsável por uma operação.

  22. Resultados • Grande produtividade da arquitetura utilizada e da ferramenta RAD (Visual Studio .NET) • Um protótipo de alta qualidade, comparável com produtos existentes no mercado • A arquitetura foi montada a fim de poder ser facilmente estendida a outros tipos de aplicações de e-learning.

  23. Telas – Cadastro de Tutorial

  24. Telas – Listagem de Tutoriais

  25. Telas – Visualização de Tutorial2

  26. Telas – Gerenciamento de Usuários

  27. Contatos www.atlantico.com.br/~ctxml ctxml@atlantico.com.br

More Related