8. Motivações Produzir software envolve: - lidar com muitas informações; - envolver muitas pessoas; - lidar com o imprevisível; - entender diferentes realidades; - trabalhar sob pressão; - trabalhar com prazos específicos; - lidar com novos conhecimentos. Para isso, é preciso algo que facilite na sistematização das ideias: - um processo de trabalho! Não um processo qualquer: mas algo que envolva tecnologia e pessoas! É sobre isso que iremos tratar no curso de metodologia.
10. pontos sobre desenvolvimento de sistemas de informação que gostaria observar: Quais são as fontes dos principais problemas em questão quando se trata de desenvolver software? Como os métodos mais utilizados tem contribuído para isso? Que novas possibilidades poderiam ser experimentadas a partir do TCC?
11. *Sucesso: projetos entregues no prazo, dentro do orçamento e com os requisitos corretos *Falharam: projetos cancelados e nunca utilizados *Problemas: atrasados, fora do orçamento e/ou com menos funcionalidades que demandadas Fonte: Chaos Repport 2009 Como os projetos de TI ocorrem
12. Como as pessoas vêem isso 51% dos usuários acham que a implantação do seu ERP não deu certo . 46% dos usuários acha que sua organização não entendeu o uso do sistema na melhoria de seus processos . 40% dos projetos falharam em atingir seus objetivos dentro de um ano de existência. 52,9% dos projetos vão custar aproximadamente 189% de seu orçamento original Fonte: Chaos Repport 2009, Robbins-Gioia Survey 2001, Conference Board Survey 2001.
13. Quais as principais causas encontradas 1. Falta de envolvimento do usuário 2. Falta de suporte executivo 3. Falta de clareza nos objetivos de negócio 4. Falta de maturidade emocional 5. Pouca otimização 6. Falta de um processo ágil 7. Falta de experiência em gerenciamento de projeto 8. Falta de conhecimento técnico 9. Má execução técnica do projeto 10. Falta de ferramentas e infra-estrutura Fonte: Chaos Repport 2009
14. Quais as causas tem a ver com relacionamento entre pessoas? 1. Falta de envolvimento do usuário 2. Falta de suporte executivo 3. Falta de clareza nos objetivos de negócio 4. Falta de maturidade emocional 5. Pouca otimização 6. Falta de um processo ágil 7. Falta de experiência em gerenciamento de projeto 8. Falta de conhecimento técnico 9. Má execução técnica do projeto 10. Falta de ferramentas e infra-estrutura Fonte: Chaos Repport 2009
15. Quais o principal problema no desenvolvimento de um projeto de TI? Relacionamento entre pessoas , que impacta em: - dificuldade de construir uma visão comum; - dificuldade de ter clareza de requisitos; - dificuldade de ter orientação clara sobre os rumos do projeto; - baixo nível de adesão; - possibilidades reduzidas de atingir o que se espera, pois cada um espera coisas muito diferentes.
16. Como os métodos de desenvolvimento de software buscam tratar isso? Propondo metodologias que, com variações, se propõe a organizar as etapas abaixo:
17. Como os métodos de desenvolvimento de software buscam tratar isso? As metodologias se propõem a: - mapear processos e sistematizar etapas de trabalho; - mostrar conexões entre essas etapas de trabalho; - documentar melhores casos e práticas de aplicação de seus processos; - criar símbolos, diagramas e esquemas padronizados que facilitem a comunidade de usuários do processo a se comunicarem.
18. Como os métodos de desenvolvimento de software buscam tratar isso?
19. Como os métodos de desenvolvimento de software buscam tratar isso? Metodologias de apoio são fundamentais! Mas, há algo ainda anterior a isso que o processo de desenvolvimento de software precisa levar em conta: Uma organização é formada por redes de conversação entre pessoas.
20. Organização como redes de conversação As redes de conversação expressam domínios de relações que podem ser: - formais: áreas, departamentos, gerências, etc. - informais: eventos, encontros, almoço, amizade, afinidades, adesão . - formais e informais: na prática, as coisas ocorrem juntas.
21. Organização como redes de conversação ? Como ocorre esse acoplamento? Em geral, nossa preocupação como técnicos é: - tratamos mais dos processos do que das pessoas; - consideramos que mediar as relações não é nosso trabalho.
22. Arquitetura do Projeto A arquitetura de um projeto é o conjunto de elementos estruturais que utilizamos para articular os objetos do projeto. Produzir a arquitetura de um projeto é produzir o espaço do projeto: - como ele irá ocorrer; - quais serão seus elementos; - como esses elementos conversam entre si; - como esses elementos foram concebidos. De que maneira levamos em consideração as redes na Arquitetura de um Projeto?
23. Ecossistema de colaborações As técnicas e ferramentas de análise ajudam a: - projetarmos uma ecologia de processos de colaboração entre os participantes de um projeto; - facilitam a comunicação; - facilitam o aproveitamento da inteligência coletiva ; - facilitam o surgimento do novo: inovação! Como?
24. Ecossistema de colaborações Ao projetar, levando em consideração que atuamos num ecossistema de colaborações, precisamos dar conta da Integração entre: - procedimentos, normas, processos de uma organização; - diversas maneiras como esses procedimentos são aplicados; - redes de conversação; - metodologias de apoio ao desenvolvimento de sistemas. Para atuar nessa integração, surgem as ferramentas da Análise
25. Importância e princípios de modelagem Por que modelamos um sistema? Para que possamos melhor entender os diversos elementos e fatores que devem ser levados em consideração para o desenvolvimento de um sistema. É uma necessidade de comunicação! Um sistema de software é composto de um conjunto de requisitos que representam as necessidades de diferentes pessoas que planejam utilizar o sistema.
26. Importância e princípios de modelagem Importâncias de um modelo: - ajuda a visualizar um sistema como ele é ou como gostaríamos que fosse; - permite especificarmos a estrutura e o comportamento do sistema; - fornece um guia para nos orientar na construção do sistema; - documenta as decisões que tomamos ao longo do projeto.
27. Importância e princípios de modelagem Princípios de modelagem: 1. A escolha de que modelos utilizar possui uma profunda influência sobre como o problema vai ser entendido e como a solução pode ser encontrada; 2. Cada modelo pode ser expresso em diferentes níveis de precisão; 3. Os melhores modelos são conectados a realidade ; 4. Nenhum modelo isolado é suficiente. Todo sistema não-trivial é melhor modelado utilizando um pequeno conjunto de modelos independentes.
28. Modelando software: Análise de software orientado a objetos Análise foca na investigação do problema e seus requisitos. A ênfase é dada ao processo de identificação e descrição dos objetos – ou conceitos – que fazem parte do domínio de um problema.
29. Quais recursos os diferentes analistas utilizam para se comunicarem , alinharem visões e otimizarem esforços na realização de um projeto de software?
30. Tipologia da análise: o papel das metodologias A metodologia é uma linguagem padrão para a construção de modelos de software. É organizada a partir de 3 blocos de construção: 1. Elementos: são as abstrações (conceitos) que compõem um modelo de software. 2. Relações: são as formas que os elementos podem ser interconectados. 3. Diagramas: são as formas que os diferentes elementos podem ser agrupados, permitindo descrever diversas visões sobre o funcionamento de um sistema. Analisar um sistema é mapear seus elementos , suas possíveis relações e utilizar diagramas para documentar as decisões produzidas ao longo da análise.