Baixe o app para aproveitar ainda mais
Prévia do material em texto
1.3 DISTINÇÃO DE QUANDO APLICAR E QUANDO NÃO APLICAR RAD 1.4 O PYTHON E AS FERRAMENTAS (FRAMEWORK) PARA O DESENVOLVIMENTO RAD DESENVOLVIMENTO RÁPIDO DE APLICAÇÕES EM PYTHON Prof. Ricardo Ferreira ferreira.jose@estacio.br (91) 98711-3121 1. RAD (RAPID APPLICATION DEVELOPMENT) Objetivos: Distinguir quando aplicar e quando não aplicar RAD; Justificar o Python e as ferramentas (framework) para o desenvolvimento RAD. 1. RAD (RAPID APPLICATION DEVELOPMENT) 1.3 DISTINÇÃO DE QUANDO APLICAR E QUANDO NÃO APLICAR RAD A metodologia RAD tem por objetivo fazer a entrega dos sistemas em menos tempo e com menos erros do que os métodos tradicionais de desenvolvimento. No entanto, para implementar esta metodologia, as empresas precisam satisfazer algumas condições, que são (BERGER & BEYNON-DAVIES, 2009): 1. RAD (RAPID APPLICATION DEVELOPMENT) 1.3 DISTINÇÃO DE QUANDO APLICAR E QUANDO NÃO APLICAR RAD No entanto, para implementar esta metodologia, as empresas precisam satisfazer algumas condições, que são (BERGER & BEYNON-DAVIES, 2009): - Pessoas: Profissionais qualificados; - Gerenciamento: Equipes coesa; e - Uso de ferramentas computacionais. 1. RAD (RAPID APPLICATION DEVELOPMENT) 1.3 DISTINÇÃO DE QUANDO APLICAR E QUANDO NÃO APLICAR RAD Não basta desejar usar a metodologia RAD, pois há casos que ela não aplica. É necessário conhecer cenários de aplicação nos quais o RAD traz ganhos. 1. RAD (RAPID APPLICATION DEVELOPMENT) 1.3 DISTINÇÃO DE QUANDO APLICAR E QUANDO NÃO APLICAR RAD Veja: RAD é uma metodologia que agiliza o processo de desenvolvimento de software, mas as 5 fases permanecem. 1. RAD (RAPID APPLICATION DEVELOPMENT) 1.3 DISTINÇÃO DE QUANDO APLICAR E QUANDO NÃO APLICAR RAD Ainda tem a necessidade de definição da linguagem e framework de desenvolvimento utilizados na na 4ª fase (Aplicação). Por isso, é importante compreender as vantagens e desvantagens na utilização da metodologia RAD. 1. RAD (RAPID APPLICATION DEVELOPMENT) 1.3 DISTINÇÃO DE QUANDO APLICAR E QUANDO NÃO APLICAR RAD PRINCIPAIS VANTAGENS: INTEGRAÇÃO ANTECIPADA DO SISTEMA E REDUÇÃO DE RISCOS – As avaliações a cada ciclo permitem o dimensionamento real da aplicação como um todo, visto que será possível fazer as estimativas de tempo e custo mais adequadas ao escopo real do projeto. 1. RAD (RAPID APPLICATION DEVELOPMENT) 1.3 DISTINÇÃO DE QUANDO APLICAR E QUANDO NÃO APLICAR RAD PRINCIPAIS VANTAGENS: ADAPTABILIDADE E COMPARTIMENTAÇÃO DOS COMPONENTES DO SISTEMA - A entrega de protótipos de partes da aplicação, totalmente funcionais, viabiliza a validação e correção de possíveis equívocos de forma prática e rápida, evitando transtornos dispendiosos no futuro, além da reutilização de componentes. 1. RAD (RAPID APPLICATION DEVELOPMENT) 1.3 DISTINÇÃO DE QUANDO APLICAR E QUANDO NÃO APLICAR RAD PRINCIPAIS VANTAGENS: VERSÕES ITERATIVAS E MENOR TEMPO DE COLOCAÇÃO NO MERCADO – É comum no desenvolvimento de software a reutilização de componentes e, portanto, a entrega de protótipos funcionais feitos com ferramentas contribui para o aumento da produtividade nessa metodologia iterativa. 1. RAD (RAPID APPLICATION DEVELOPMENT) 1.3 DISTINÇÃO DE QUANDO APLICAR E QUANDO NÃO APLICAR RAD PRINCIPAIS VANTAGENS: FEEDBACK CONSTANTE DO USUÁRIO - Essa é a principal vantagem da RAD. A eficiência e a qualidade do projeto aumentam com a comunicação regular e o feedback constante dos usuários finais na validação dos componentes de UI / UX do sistema. 1. RAD (RAPID APPLICATION DEVELOPMENT) 1.3 DISTINÇÃO DE QUANDO APLICAR E QUANDO NÃO APLICAR RAD PRINCIPAIS DESVANTAGENS: NECESSIDADE DE EQUIPES TECNICAMENTE MUITO QUALIFICADAS - A equipe terá que tratar de todas as fases do ciclo de desenvolvimento, além de ter habilidades para lidar e compreender requisitos de negócios a serem entregues. 1. RAD (RAPID APPLICATION DEVELOPMENT) 1.3 DISTINÇÃO DE QUANDO APLICAR E QUANDO NÃO APLICAR RAD PRINCIPAIS DESVANTAGENS: FOCO EXIGENTE NA INTERFACE – Um acrônimo antigo usado na computação é WYSIWYG que significa "What You See Is What You Get". Ou seja, "O que você vê é o que você tem". Isso define exatamente como os clientes fazem a avaliação da qualidade de uma aplicação com base no protótipo disponibilizado para eles. 1. RAD (RAPID APPLICATION DEVELOPMENT) 1.3 DISTINÇÃO DE QUANDO APLICAR E QUANDO NÃO APLICAR RAD PRINCIPAIS DESVANTAGENS: REQUER ALTO NÍVEL DE COMPROMETIMENTO DE TODAS AS PARTES INTERESSADAS - Aos clientes precisam estar dispostos a interagir constantemente com a equipe de dese desenvolvimento e, esta, também precisa compreender a importância das interações e modificações propostas pelos clientes. 1. RAD (RAPID APPLICATION DEVELOPMENT) 1.3 DISTINÇÃO DE QUANDO APLICAR E QUANDO NÃO APLICAR RAD PRINCIPAIS DESVANTAGENS: REQUER SISTEMAS MODULARES (DIFÍCIL PARA PROJETOS DE GRANDE ESCALA) - A natureza de modularização dessa metodologia pode tornar difícil a garantia de um sistema seguro, confiável e com bom desempenho, por isso RAD não é recomendada para sistemas complexos. 1. RAD (RAPID APPLICATION DEVELOPMENT) ●O crescimento da Linguagem Python. 1.4 O PYTHON E AS FERRAMENTAS (FRAMEWORK) PARA O DESENVOLVIMENTO RAD Fonte: http://datascienceacademy.com.br/blog/o-incrivel-crescimento-da-linguagem-python/ 1. RAD (RAPID APPLICATION DEVELOPMENT) ●Vantagens da Linguagem Python. - Portabilidade: Pode-se trabalhar com Python em diversos sistemas operacionais. - Licença de código aberto: As distribuições do Python são gratuitas e de código aberto sem restrições do uso da licença. 1.4 O PYTHON E AS FERRAMENTAS (FRAMEWORK) PARA O DESENVOLVIMENTO RAD 1. RAD (RAPID APPLICATION DEVELOPMENT) ●Vantagens da Linguagem Python. - Integração com outros sistemas: Existem muitos pacotes para Python que abrangem bancos de dados, Web, interfaces gráficas, ciências de dados, entre muitos outros. - Linguagem interpretada: Simplicidade de uso interativo de programas. Prático para 0 desenvolvimento de protótipos. 1.4 O PYTHON E AS FERRAMENTAS (FRAMEWORK) PARA O DESENVOLVIMENTO RAD 1. RAD (RAPID APPLICATION DEVELOPMENT) ●Vantagens da Linguagem Python. - Desenvolvimento rápido: Mais simples do que muitas outras linguagens e dispõe de diversos pacotes e frameworks. - Otimização de desempenho: Facilidade na manipulação de listas e de grandes volumes de dados como em aplicações de big data. 1.4 O PYTHON E AS FERRAMENTAS (FRAMEWORK) PARA O DESENVOLVIMENTO RAD 1. RAD (RAPID APPLICATION DEVELOPMENT) ●Python suporta vários tipos de frameworks. - Full-Stack: Solução para as três camadas da pilha (front-end, Back-end e Data Base). - Microframework: Quantidade mínima de serviços, como recebimento e retorno de solicitações HTTP. - Framework assíncrono: Usado por aplicações que requeiram tempo elevado de resposta de requisições. 1.4 O PYTHON E AS FERRAMENTAS (FRAMEWORK) PARA O DESENVOLVIMENTO RAD 1. RAD (RAPID APPLICATION DEVELOPMENT) ●Frameworks GUI para Python. - Tkinter - Biblioteca de interfaces gráficas. - PyQt - Biblioteca de componentes gráficos. - PySide – wrapper para bibliotecas gráficas. - Kivy - Framework para dispositivos móveis. - wxPython – wrapper para bibliotecas multiplatormas. 1.4 O PYTHON E AS FERRAMENTAS (FRAMEWORK) PARA O DESENVOLVIMENTO RAD 1. RAD (RAPID APPLICATION DEVELOPMENT) ●FRAMEWORKS WEB PARA PYTHON. - Conjunto de pacotes para o desenvolvimento de aplicações para Web que dispensam o programador de ter que implementar excesso de detalhes, como protocolos, soquetes ou gerenciamento de processos/threads. 1.4 O PYTHON E AS FERRAMENTAS (FRAMEWORK) PARA O DESENVOLVIMENTO RAD 1. RAD (RAPID APPLICATION DEVELOPMENT) ●FRAMEWORKS WEB PARA PYTHON. A maioria dos frameworks para aplicações Web incluem padrões que devem ter: - Roteamento de URL - Objetos de solicitação e resposta - Template Engine - Servidor Web de Desenvolvimento Framework Python: Django,Flask e AsyncIO 1.4 O PYTHON E AS FERRAMENTAS (FRAMEWORK) PARA O DESENVOLVIMENTO RAD 1. RAD (RAPID APPLICATION DEVELOPMENT) Leitura Específica Conteúdo digital da disciplina Tema "RAD (Rapid Application Development)", - Módulo 3 - "Distinção de quanto aplicar e quando não aplicar RAD"; e - Módulo 4 – "O Python e as ferraments (Frmework) para o Desenvolvimento RAD" * Kerr, J.; Hunter, R. Inside RAD: How to Build Fully Functional Computer Systems in 90 Days or Less. New York: McGraw-Hill, 1994. Prof. Ricardo Ferreira ferreira.jose@estacio.br (91) 98711-3121 Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20 Slide 21 Slide 22 Slide 23 Slide 24 Slide 25
Compartilhar