1
Faculdade de Tecnologia de São Caetano do Sul
Prof. Msc Adilson Ferreira da Silva
Ferramentas de Engenharia de Software
Prof. Msc Adilson Ferreira da Silva• Mestre em Tecnologia – Centro Paula Souza ;
• Mestre em Sistemas de Computação – UNIFIEO ;
• Especialista em Análise e Projeto de Sistemas – FECAP ;
• Especialista em gestão de cursos em EAD – PUC/SP;
• Professor e Coordenador dos cursos de Tecnologia em Informática e Sistemas de informação da Faculdade IESA desde 03/1992;
• Ex-Consultor de Projetos de sistemas: Banco Santander, Banco Finasa, Dinap – empresa do grupo Abril e Telefonica;
• Ex-Coordenador de projetos de novos sistemas - Prefeitura de Santo André, 01/2001 à 02/2008
• Chefe de divisão de Planejamento Organizacional, Prefeitura de São Bernardo do Campo, desde 01/2010
• Sócio-Diretor da AFS-Sistemas de Informação desde 01/98.2
Ferramentas de Engenharia de Software
Ementa:
Ferramentas gráficas para modelagem de sistemas (DER, DFD, Diagramas, UML). Geradores de código, de testes e de documentação.
Bibliografia
• COSTA, R G; RODESCHINI, L. Web - Como Programar Usando Ferramentas Livres.
• Alta Books, 2006.
• LARMAN, C. Utilizando UML e Padrões. Bookman 2007
• SILVA, R P. UML 2 - modelagem orientada a objetos. Visual Books, 2007.
3
Ferramentas de Engenharia de Software
4
Metodologia de ensino
• Aulas expositivas e práticas;
• Integração entre disciplinas;
• Trabalho de pesquisa.
Ferramentas de Engenharia de Software
5
Forma de avaliação
• Avaliação de acordo ao regimento;
• Trabalho de pesquisa – individual ou em grupo;
Ferramentas de Engenharia de Software
6
Ferramentas de Engenharia de Software
7
Engenharia de Software• Testes
• Requisitos
• Projeto e implementação de Software
Ferramentas de Engenharia de Software
8
Geração de programa executável Edição de código fonte, compilação, depuração e geração de
programa executável, ferramentas ORM, geradores de testes, etc.
Ferramentas de Engenharia de Software
Análise Construção de modelos: DFD, DER, diagramas UML, etc.
Projeto Planejamento de projeto, estimativa de tempo, estimativa de
custos, etc.
9
Estudo de caso
A Consultoria XYZ foi contratada para desenvolver um sistema para que o Diretor financeiro possa averiguar e controlar as finanças de uma rede de academias, que possui 35 filiais espalhadas em todo o território nacional. As informações que foram solicitadas são:
- Totais dos faturamentos diário e mensal por serviço prestado aos clientes;- Totais das contas pagas por período; - Totais das dividas a serem quitadas;- Previsão de faturamento mensal;
O dados serão atualizados somente pelo Gerente da academia, que é o responsável pelas finanças.
Ferramentas de Engenharia de Software
10
Exercício em grupo:
O sistema deve ser seguro, ou seja, permitir o acesso somente por funcionários autorizados. Também deve ser construído de forma que possibilite facilidades para manutenção.
Pergunta-se:
• Qual é o contexto do sistema?• Quais devem ser os módulos do sistema?• Em que ambiente/Plataforma deve operar?• Em qual(is) linguagem(ns) de programação deve ser escrito?• Qual deve ser o Banco de dados a ser utilizado?
Ferramentas de Engenharia de Software
11
Diagrama de contexto - SFIN
SFIN
Diretor
Login/Senha
Faturamento por período
GerenteDados para fechamento diário da academia
Contas a receber
Contas a pagar
Login/Senha
Dividas
Previsão de faturamento
Contas recebidas
Administrador
Dados do usuário
12
Módulos do Sistema - SFIN
SFINGestão financeira
da Academia
Gestão financeira da rede de academias
Segurança
13
Ambiente/Plataforma - SFIN
Relembrando:
A Consultoria XYZ foi contratada para desenvolver um sistema para que o Diretor financeiro possa averiguar e controlar as finanças de uma rede de academias, que possui 35 filiais espalhadas em todo o território nacional. As informações que foram solicitadas são:
- Totais dos faturamentos diário e mensal por serviço prestado aos clientes;- Totais das contas pagas por período; - Totais das dividas a serem quitadas;- Previsão de faturamento mensal;
O dados serão atualizados somente pelo Gerente da academia, que é o responsável pelas finanças.
14
Ambiente/Plataforma - SFIN
• Servidor de Rede Linux Windows Unix FreeBSD
• Servidor Web Apache Tomcat IIS-Internet Information Server Jboss Web Jetty
15
Ambiente/Plataforma - SFIN
• Banco de dados Remoto Distribuído
• Resultado: Servidor Web Apache Servidores de rede operando com Linux Banco de dados remoto
Quais são as Ferramentas adequadas para
desenvolver o SFINAN para operar neste
ambiente?
16
Linguagem de programação/Banco de dados
• Linguagem de programação Java PHP, Pyton
• IDE Eclipse Netbeans JDeveloper
17
Linguagem de programação/Banco de dados
• Banco de dados PostgreSQL Firebird, Apache Derby MySql, Hypersonic SQL
• Outras ferramentas para desenvolvimento: Hibernate Ajax LDAP Ireport
18
Metodologia de desenvolvimento
• Análise orientada a objetos
Diagramas UML Use Case Classes Seqüência
19
Gestão do projeto
Ferramentas necessárias para:
• Documentação.
• Planejamento e controle das atividades das equipes.
• Controle de Mudanças/Versões dos fontes.
20
Atividade
Faça uma pesquisa para selecionar uma ferramenta que possibilite ao analista de sistemas modelar e especificar as funcionalidades do sistema SFINAN.