A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Engenharia de Software I

Apresentações semelhantes


Apresentação em tema: "Engenharia de Software I"— Transcrição da apresentação:

1 Engenharia de Software I

2 Trabalho Independiente
¿Quais são os enfoques que se podem seguir no processo de desenvolvimento de software?

3 INTELIGENCIA ARTIFICIAL
Tipos de software SOFTWARE SISTEMA APLICATIVO CIENTÍFICO E DE ENGENHARÍA EMPOTRADO LINHA DE PRODUCTOS BASEADAS N SITE INTELIGENCIA ARTIFICIAL

4 ESW como tecnología estratificada
¿Com que? ¿Como? ¿Que? Compromiso A pesar de la diversidad de criterios respecto a qué es la IS, trabajaremos con la perspectiva de Pressman, quien la ve como una tecnología multicapa o estratificada, debido a que cuenta con 3 capas (Herramientas, Métodos, Proceso) y un enfoque de calidad como base. Segundo Pressman, tecnología multicapa | 01 |

5 Engenharia de Software
O aplicativo de um enfoque cuantificable, disciplinado e sistémico ao desenvolvimento, operação e manutenção do software. (IEEE, 1993) | 01 |

6 Recordando da atividade anterior….
¿ Em que consiste o marco de trabalho comum? ¿Quais são as actividades genéricas segundo Pressman? ¿Desenvolvem-se de igual forma em todos os projectos? ¿Em que consistem as diferenças? ¿Que são as actividades sombrilla? ¿Quando se desenvolvem?

7 Marco de trabalho Processo MARCO DE TRABALHO Actividades sombrillas
| 01 | Processo MARCO DE TRABALHO Actividades sombrillas Actividades genéricas Acção Tarefa

8 Actividades genéricas
Explicar brevemente en qué consisten cada una de ellas: Comunicación: Implica colaboración y comunicación con el clientes Abarca la investigación de requisitos y otras actividades relacionadas. Planificación:Establece un plan. Describe las tareas, los riesgos, los recursos, los productos de trabajo etc.Programa de trabajo. Modelado: Creación de modelos para entender mejor los requisitos y el diseño que logrará satisfacerlos. Construcción: Generación de código. Incluye pruebas necesarias para descubrir errores en el código. Despliegue: El software se entrega al cliente, quien evalúa el producto recibido y proporciona información basada en su evaluación. | 01 |

9 Actividades sombrilla
1- Rastreamento e controle do projecto. 2- Gestão do risco. 3- Garantia da qualidade do software. 4- Revisões técnicas formais 5- Medida. 6- Gestão da configuração do software. 7- Gestão da reutilização. 8- Preparação e produção do produto de trabalho. Explicar brevemente en qué consisten cada una de ellas: Comunicación: Implica colaboración y comunicación con el clientes Abarca la investigación de requisitos y otras actividades relacionadas. Planificación:Establece un plan. Describe las tareas, los riesgos, los recursos, los productos de trabajo etc.Programa de trabajo. Modelado: Creación de modelos para entender mejor los requisitos y el diseño que logrará satisfacerlos. Construcción: Generación de código. Incluye pruebas necesarias para descubrir errores en el código. Despliegue: El software se entrega al cliente, quien evalúa el producto recibido y proporciona información basada en su evaluación. | 01 |

10 Processo ¿Que é o común? ¿Que é o diferente?

11 ¿Que resulta? Diferentes Enfoques de ESW Modelos de desenvolvimento Metodologías de desenvolvimento Mantém-se invariáveis os princípios do marco de trabalho comum do projecto. 11 11

12 ¿Se você fosses um líder de um projecto e tivesse que criar um produto que faria?

13 Conferencia 2. Enfoques de engenharia de software
Conferencia 2. Enfoques de engenharia de software. Modelos, metodologias e processos de desenvolvimento de software.

14 Objectivo Caracterizar os enfoques de Engenharia de Software e os modelos de processos de desenvolvimento de software, enfatizando nos elementos que permitem sua selecção de acordo ao contexto e como base para a definição da metodologia de desenvolvimento de software adequada. | 01 |

15 Contéudos da clase Enfoques de Engenharia de Software.
Características dos modelos do processo de desenvolvimento de software. Classificação. Definição de metodologías de desenvolvimento de software. Características de los modelos del proceso de desarrollo de software. Clasificación. Definición de metodologías de desarrollo de software. | 01 |

16 Bibliografía Pressman, Roger S.; “Ingeniería del Software. Un enfoque práctico”. 6ta Edición. Parte I. Capítulos 3 y 4. Pág Sommerville, I.; “Ingeniería de Software”, Parte I. Capítulo 1 Epígrafe Pág. 8. Capítulo 4 Epígrafes 4.1 y 4.2. Pág | 01 |

17 Bibliografía Boehm, B. y Turner, R.; “Balancing Agility and Discipline: A Guide for the Perplexed”; Chapter (The Two Approaches), Chapter 2 (Summary) y Chapter 4. Larman, C. (2005). Agile & Iterative Development. A Manager’s Guide. Addison Wesley. ISBN Chapters 2-3, 7-9. Pages 9-39, | 01 |

18 enfoques de Ingeniería de Software
Resultado de dirigir a atenção ou o interesse para um assunto ou problema desde uns supostos prévios, para tratar de resolvê-lo acertadamente. Industria de software Enfoque prescriptivo Enfoque Ágil

19 Enfoques de Engenharia de Software
¿Em que se diferenciam? - Tamaño del equipo de desarrollo. - Documentación generada. - Tiempo de entrega. - Planificación. | 01 |

20 Variáveis Complexidade Tamanho do equipa de desenvolvimento.
Documentação gerada. Tempo de entrega. Planificação.

21 Enfoque de ISW Enfoque Prescriptivo Enfoque Ágil
Dirige a atenção aos elementos de estrutura e ordem do processo de desenvolvimento de software.. Enfoque Prescriptivo Enfoque Ágil Centra-se nas pessoas que intervêm no processo de desenvolvimento de software.

22 Enfoque Prescriptivo - Características
Uma documentação exhaustiva de todo o projecto. Centram sua atenção em cumprir com um plano detalhado. Baseiam-se na gestão de todo o processo. Jacobson, I.; Booch, G. y Rumbaugh, J.; “El Proceso Unificado de Desarrollo de software” Pág. 13. | 01 |

23 Enfoque Ágil - Características
Concorrência. Enfoque comum. Colaboração. Habilidade para a tomada de decisões. Capacidade de resolução de problemas confusos. Confiança e respeito mútuo. Organização própria. Jacobson, I.; Booch, G. y Rumbaugh, J.; “El Proceso Unificado de Desarrollo de software” Pág. 13. | 01 |

24 Modelo de Processo de software
Arquetipo ou ponto de referência para imitá-lo ou reproduzí-lo. ¿Que se entende por Modelo de Processo de Software?

25 Modelos de processos Uma representação simplificada de um processo de software, representada desde uma perspectiva específica. Por sua natureza os modelos são simplificados, portanto um modelo de processos do software é uma abstracção de um processo real. Somerville, 2005

26 Modelos de Procesos Definem um conjunto de elementos do processo que permitem de alguma maneira predizer os resultados a obter e a forma na que executar-se-ão. Classificação: Prescriptivos ou convencionais Ágeis | 01 |

27 Modelos de Procesos Prescriptivos
Modelos nos quais se descreveram os fluxos de trabalho, as atividades e a inter-relação entre os componentes de um projecto, permitindo a existência de diferentes maneiras de executar os processos de desenvolvimento de acordo às condições do meio onde se ocorrem. Modelos en los cuales se han descrito los flujos de trabajo, las actividades y la interrelación entre los componentes de un proyecto, permitiendo la existencia de diferentes maneras de ejecutar los procesos de desarrollo de acuerdo a las condiciones del entorno donde se ocurren. | 01 |

28 Modelos de Processos Ágeis
Centram-se em: Os indivíduos e suas relações sobre os processos e as ferramentas. O software em funcionamento sobre a documentação extensa. A colaboração do cliente sobre o respeito a um contrato. A resposta a uma mudança sobre o rastreamento de um plano. | 01 |

29 Modelos de Proceso de SW
Estáticos Incrementais Evolutivos Especializados Modelos Prescriptivos Modelos de Proceso de SW Modelos Ágeis Modelo Ágil

30 Modelos de Procesos Estáticos
Desenvolvem suas actividades de forma contínua sem retrocessos a actividades prévias e sem repetição das já executadas. Nestes é necessário que os requisitos estejam bem estabelecidos inicialmente e que sua probabilidade de mudança seja muito baixa. Modelos de desenvolvimento em Cascata e Linear. | 01 |

31 Ciclo de Vida Lineal Secuencial

32 Modelos de Procesos Incrementales
Os requisitos estão bem definidos mas é necessário satisfazer ao cliente de forma rápida com conjuntos limitados de funcionalidade em pequenas porções que aumentam gradualmente e se refinam e expandem na cada entrega. Modelo de desenvolvimento incremental. Modelo de Desenvolvimento Rápido de Aplicativos (DRA). | 01 |

33 Ciclo de Vida Incremental

34 Modelos de Procesos Evolutivos
Os requisitos finais não estão bem definidos, ainda que sim o esquema geral de necessidades do cliente mas é necessário satisfazer ao cliente de forma rápida ante a pressão do mercado, se dedicando inicialmente a satisfazer requisitos essenciais e depois trabalhar sobre as extensões destes requisitos. Modelo de Construção de protótipos Modelo em torque Modelo de desenvolvimento concorrente | 01 |

35 Modelos de Procesos Especializados
Aplicam de maneira integrada vários dos modelos anteriores quando se elegeu para o desenvolvimento do sistema um enfoque que responda a um tipo específico de sistema ou grupo destes. Modelo de construção baseado em componentes. Modelo de métodos formais. Modelo de desenvolvimento orientado a aspectos. | 01 |

36 Modelos de Procesos Ágeis
As necessidades e soluções evoluem através de uma estreita colaboração entre as equipes multidisciplinares. Eles são caracterizados por enfatizar a comunicação sobre a documentação, por o desenvolvimento evolutivo e por sua flexibilidade. Adaptive Software Development (ASD) Programación Extrema (XP) Open Unified Process (Open Up). Scrum. Las necesidades y soluciones evolucionan a través de una colaboración estrecha entre equipos multidisciplinarios. Se caracterizan por enfatizar la comunicación frente a la documentación, por el desarrollo evolutivo y por su flexibilidad | 01 |

37 ¿Qual modelo seleccionar?
Utilizando o Método de Boehm y Turner Propõe 5 critérios fundamentais mediante os que estar-se-á a valorizar o projecto; estes são: tamanho da equipa, criticidad do produto, dinamismo das mudanças, cultura da equipa e pessoal com que se conta. | 01 |

38 Método de Boehm y Turner
Tamanho: Quantidade de desenvolvedores. Criticidad: Valoriza as consequências de danos por ocorrência de defeitos. Dinamismo: Rapidez com que se possam mudar os requerimentos. Pessoal: Experiência da equipa de trabalho. Cultura: Nível de organização e relações entre o pessoal. | 01 |

39 Estrela de Boehm y Turner
| 01 |

40 ¿Quais consideram seria melhor utilizar?
Resumindo… ¿Que importância lhes conferem aos modelos de processo de desenvolvimento? ¿Quais consideram seria melhor utilizar? | 01 |

41 Resumindo… Tendo as capas da IS , as 4P, seleccionando um modelo de processo.. ¿Acham que é suficiente? ¿Que faltaria? Uma metodología de software…!!! | 01 |

42 ¿Que é uma metodología? É um processo.
Num projecto de desenvolvimento de software um processo define: “QUEM” deve fazer “QUE”, “QUANDO”, e “COMO” para obter um produto de software. Las metodologías se basan en una combinación de los modelos de proceso genéricos (cascada, evolutivo, incremental, etc.). | 01 |

43 Características gerales
Não podem se aplicar a todo o tipo de projectos. Estão orientadas em função dos novos princípios de desenvolvimento do software. Podem ser ajustables de acordo às características do projecto. | 01 |

44 Clasificação Metodologias estruturadas e Metodologias Orientadas a Objetos. Metodologias Tradicionais ou pesadas e Metodologias ágeis. Para clasificar las metodologías de desarrollo de software existen 2 criterios fundamentales: uno de acuerdo a las notaciones utilizadas para especificar artefactos producidos en actividades de análisis y diseño (Metodologías estructuradas y Metodologías Orientadas a Objetos), y según la filosofía de desarrollo (Metodologías Tradicionales o pesadas y Metodologías ágiles). | 01 |

45 Metodologías pesadas Métrica V3 Open Source Development Software
MSF (Microsoft Solution Framework) RUP (Rational Unified Process) | 01 |

46 Metodologías ágeis Extreme Programming (XP). SCRUM. Crystal Clear.
Feature -Driven Development (FDD). Dynamic Systems Development Method (DSDM). | 01 |

47 Conclusões ¿Existe uma forma de desenvolver software? ¿Que enfoques se podem adoptar no processo? ¿Que características têm? ¿Que é um modelo de processo de desenvolvimento de software? ¿Qual é o melhor modelo de desenvolvimento de software? ¿Que é uma metodologia de desenvolvimento de software? | 01 |

48 Conclusões ¿Qual é a melhor das metodologias?
¿Que relação existe entre modelo e metodologia de desenvolvimento de software? ¿Como identificar o modelo e metodologia a utilizar para o desenvolvimento de determinado software? Resaltar que no existe una metodología mejor que otra, sino que todas pueden útiles para resolver una situación determinada. | 01 |

49 Engenharia de Software I


Carregar ppt "Engenharia de Software I"

Apresentações semelhantes


Anúncios Google