[Música] Olá eu sou o professor Marcelo Fantinato Esta é a disciplina de engenharia de software do curso de engenharia da computação da Univesp eu vou fazer apresentação básica agora da disciplina para vocês apresentar os objetivos principais para que depois nas próximas vídeos aulas então a gente começa a eh vendo a disciplina propriamente dita então aqui nós vamos ver basicamente os objetivos da disciplina eh já Adiantei para vocês então nós estamos falando do curso Engenharia de computação da Univesp Essa é a disciplina engenharia de software Nós já estamos basicamente eh na metade um pouco mais da
metade do curso de engenharia da computação eh Essa é uma das disciplinas eh já um pouco mais do que básicas começando um pouco mais disciplinas avançadas do curso de engenharia da computação Ah é uma das disciplinas de de oito oito créditos né 80 horas e nós vamos ter um um conjunto amplo de videoaulas serão 28 vídeoaulas eh e já Adiantei meu nome é professor Marcelo Fantinato então em termos de objetivos dessa disciplina ah essa disciplina né o nome dela engenharia de software Então dentro de engenharia da computação é um tipo específico de engenharia dentro de
uma engenharia maior nós estamos falando de engenharia da computação que vocês já sabem tem o objetivo de trabalhar uma série de técnicas uma série de ferramentas métodos eh para tratar de de vários aspectos da computação de uma forma geral e agora então a gente vai trabalhar também um conjunto de técnicas métodos ferramentas mas especificamente relacionadas ao desenvolvimento de software por isso o nome de engenharia de software sempre que a gente pensa no nome engenharia Nós pensamos Então nesse conjunto de técnicas para fazer algo de uma forma bastante sistemática e aqui no caso essa coisa sistemática
então é o desenvolvimento de software ah essa palavra software ela já já é usada há bastante tempo e o nome então engenharia de software ele ficou bastante solidificado na área mas hoje em dia a gente a gente pensa numa coisa um pouco mais abrangente do que software que é a questão dos sistemas de informação vocês já estudaram o conceito de sistemas de informação em outra disciplina anterior né a no próprio curso de engenharia da computação que coincidentemente eu fui responsável fui o formador e gravei também apresentei para vocês as videoaulas e naquela disciplina eh eu
tentei deixar bastante Clara a diferença do que é um software e que o que é um sistema de informa ação vocês devem se lembrar eh que um sistema de informação ele é algo maior do que um software um software é uma coisa bem mais técnica e um sistema de informação é algo maior que envolve um software o software era uma coisa mais técnica que foi criado lá na década de 50 60 70 e aí conforme isso foi evoluindo nós passamos a ter o conceito de sistema de informação hoje em dia dificilmente a gente desenvolve apenas
software que é tem aquela característica puramente técnica A grande maioria do que se desenvolve hoje são sistemas de informação apesar disso nós ainda usamos o nome engenharia de software o mais correto seria usar o termo engenharia de sistemas de informação em alguns lugar alguns cursos algumas disciplinas já se usa esse nome mas é raro tá porque nome é uma coisa que uma vez que pega dificilmente muda e até hoje a gente ainda usa o termo engenharia de software Esse é o termo usado no curso de vocês nessa disciplina Esse é o nome que a gente
vai usar em alguns momentos em algumas vídeoaulas eu vou acabar usando o termo sistema de informação ou simplesmente sistema mas em geral eu vou usar o termo software e vocês precisam entender que sempre eu vou estar me referindo a um sistema de informação embora em geral eu vou acabar usando simplesmente nome sistema ou nome software Ok mas enfim independentemente do nome que eu uso essa disciplina tem o objetivo de apresentar para vocês e nesse nessa disciplina de dois meses nesse conjunto de vídeoaulas na no material que vocês vão estudar eh vocês vão ler nos trabalhos
nos projetos que vocês vão realizar e semanalmente vocês vão ter o objetivo tem esse essa disciplina tem o objetivo de que vocês aprendam uma série de técnicas para que sistematicamente vocês desenvolvam um sistema de informação S um software com qualidade Né desde a etapa de conversar com o cliente o que o cliente deseja Qual é o sistema que o cliente deseja até passar por fazer o projeto desenvolver o sistema e na final entregar então é como se a gente pensasse em qualquer outro tipo de engenharia por exemplo engenharia civil você tem que passar por uma
série de etapas para desenvolver para construir um prédio por exemplo o que Qual é o prédio que o cliente quer ele vai dizer qual é o prédio que ele quer você vai fazer os primeiros modelos em algum momento você tem que fazer projetos o projeto arquitetônico o projeto eh elétrico o projeto hidráulico você tem diferentes tipos de projetos que juntos eles definem exatamente todas as características exatamente como o prédio ele tem que ser E aí você começa a construção desse prédio né construção propriamente dita em algum momento você tá com o prédio pronto e você
vai ter que ver verificar se aquilo que foi construído realmente é o que tinha sido projetado que é o que o cliente tinha pedido lá no início Bom na verdade você não espera o prédio ficar completamente pronto para fazer isso porque se lá na frente você verificar que tá totalmente errado vai fazer o quê vai derrubar o prédio e construir o outro né o custo disso vai ser altíssimo então a medida que você vai construindo o prédio você já tem que ir garantindo que está de acordo com o esperado se não o quanto mais rápido
você perceber que não tá sendo da forma esperada você já tem que corrigir e ao final você entrega pro cliente e em geral você tem um um um contrato em que você tem que dar uma manutenção por exemplo de até 5 anos e uma uma espécie de garantia A ideia é similar só que em vez de ser um prédio é um software Ok e é isso então que a gente vai ver nessa disciplina né por isso que temos aqui apresentar os alunos os principais consos relacionados ao ciclo de vida nós chamamos de ciclo de vida
de desenvolvimento do software bom de uma forma um pouco mais estruturada então basicamente isso que eu mencionei fazendo o paralelo com a engenharia civil mas a gente poderia fazer o paralelo com outros tipos de engenharia engenharia mecânica engenharia de alimentos enfim qualquer outro tipo de engenharia mas aqui especificamente na engenharia de software nós vamos primeiramente eh tratar de uma forma geral eh uma visão geral desse processo como um todo e depois nós vamos tratar é basicamente um pedacinho cada um desses pedaços né começando com a parte de requisitos A modelagem o projeto que seria o
design depois a implementação eh configuração o teste né que seria fazer essa validação essa verificação a evolução que seria fazer a ajustes depois de pronto e também alguns aspectos por exemplo de reuso e desenvolvimento baseado em Componentes Ok então basicamente está dividido aqui nas sete semanas que vocês vão ter de aulas e só para finalizar né Eh a a bibliografia básica que vai ser usada São esses três livros aqui que vocês têm eh na Biblioteca Virtual uma das referências principais na área de engenharia do software é esse livro engenharia de software do autor summerville é
uma referência básica mundialmente conhecida existem outras Mas é uma das duas principais eh já está na nona edição eh O que é uma referência uma das duas principais do que nós conhecemos hoje como a engenharia de software tradicional eu digo tradicional embora não esteja aqui no nome eu digo tradicional porque muitos de vocês já devem ter ouvido falar do que a gente chama de métodos ágeis para desenvolvimento de software e então seria um novo tipo de engenharia de software por conta disso como Existem os métodos ágeis o que está basicamente nesse tipo de livro aqui
é o que nós estamos chamando de engenharia de software tradicional para diferenciar do que seria a engenharia de software ágil eu vou tratar disso nas primeiras aulas embora para deixar bastante Claro para vocês desde esse primeiro momento essa disciplina é focada principalmente 90% 95% dela em engenharia de software tradicional Ok nas primeiras videoaulas que eu vou tratar dessa diferenciação Eu deixarei mais claro porque essa disciplina é é baseada em engenharia de software tradicional e a gente vai apenas apresentar eh os objetivos e uma visão Geral de métodos ágeis bom e temos também eh uma outra
referência que é engenharia de software eh de um outro autor aqui a a flever e também o desenvol desenvolvendo a software com ml o ML é uma das é a principal linguagem de modelagem para fazer os modelos para fazer a A modelagem de software o projeto de software inclusive para tratar um pouco de requisitos Ah já há muito tempo que o ML é tratado como cena princip principal linguagem de modelagem e aí nós vamos então Eh usar essa essa é referência entre outras existem também algumas referências complementares que vocês vão encontrar lá no no ambiente
a Ava eh para que vocês tenham apoio na na disciplina Ok então espero que vocês gostem da disciplina ah aqueles que já TM um conhecimento sobre processo de desenvolvimento de software eu espero que vocês ainda ainda consigam aprender algum conhecimento adicional Mas é claro que como uma disciplina de graduação a o objetivo é principalmente para aqueles que vão ter o primeiro contato com o processo sistemático de engenharia de software aqueles que vão ter o primeiro contato com engenharia de requisitos com modelagem de software com o ML eh vocês devem ter visto alguma coisa de uml
em programação orientada a objetos mas principalmente voltado pra programação propriamente dita e agora então vocês vão ter o primeiro contato com o ML para análise e eh análise e projeto Ok então é Principalmente nesse foco de aluno que essa disciplina ela está eh voltada Então até as próximas videoaulas [Música] obrigado [Música] [Música] [Música] k n [Música]