Engenharia de Software - Parte I

Boa noite pessoal!

Vou começar a postar minhas anotações das aulas aqui no meu blog, to sem assunto pra postar e isso me parece interessante, também me obriga a dar uma organizada e revisada nas anotações e facilita meu estudo depois (este é raro). Este semestre estou fazendo Engenharia de Software, Inteligência Artificial e Programação Comercial III (Java), pra começar vamos pra Engenharia de Software que é só teoria, segue anotações da primeira aula.

Aula 1 -Engenharia de Software – Prof. Leila

Fábrica de Software:
Interessados: Clientes, Donos, Colaboradores, Sociedade, Governo, Fornecedor, Parceiros.
Unidade Organizacional: Parte definida de uma organização que implanta um ou mais processos.
Equipe: Conjunto de pessoas trabalhando conjuntamente para atingir um objetivo em comum.
Papéis: Conjunto de competências e responsabilidades desempenhadas. Cargos.
Maturidade das Organizações: Conjunto de competências: gestão, resultados.
Sintomas de organizações imaturas: projetos não definidos claramente; pessoas sem treinamento; não existe planos claros de recrutamento, avaliação de desempenho e remuneração; as ferramentas utilizadas não ajudam a resolver problemas;  procedimentos e padrões quando existem são definidos de forma burocrática;
Processo: Conjunto de atividades que transforma entradas em saídas.
PDCA (Plan->Do->Check->Action->Plan...)
Prejuízos da imaturidade: Produtos de baixa qualidade; hábito de assumir compromissos não realistas;...
Forças caóticas: Pressão e prazos não deixa tempo para reflexão;  as pessoas acreditam que a solução pode estar em uma pessoa ou uma ferramenta e pode bloquear o pensamento racional...
Riscos: Deficiência de pessoal; Prazos e orçamentos irrealistas; desenvolvimento dos requisitos errados; desenvolvimento de interfaces de usuário erradas; embelezamento inútil; fluxo contínuo de alteração nos requisitos; deficiências de componentes de origem externa; deficiências em tarefas realizadas por terceiros; deficiências de desempenho em tempo real; forçar os limites;
Erros
    -Clássicos: erros repetidos;
    - Relativos a produto: defeitos na sua definição, introduzindo características no decorrer do projeto interessantes mas dispensáveis;
Software de Qualidade
    - Atender as expectativas do cliente;
    - Robustez / Confiabilidade;
    - Usabilidade -> experiência do usuário;
    - Segurança;
    - Manutenção;
Mitos de Software
    - Crenças sobre o software e sobre o processo utilizado para construí-lo.

EXERCÍCIOS

Descreva algumas características de uma organização imatura.
Os projetos não são claramente definidos, o cliente não sabe a quem recorrer, os próprios colaboradores não sabem o que fazer, não possui processos bem definidos.  A empresa não trabalha RH da forma correta, não realiza treinamentos, não faz avaliações de desempenho e não possui banco de talentos ou procedimentos para recrutamento.

Explique com suas palavras quais são os principais prejuízos de uma organização imatura?
Os produtos ou serviços entregues são de baixa qualidade, clientes e demais partes interessadas ficam insatisfeitos, colaboradores desmotivados e estressados no trabalho, assumem compromissos que nem sempre podem cumprir e costumam repetir erros.

Explique resumidamente os problemas que culminaram na crise do software?
Resumidamente, as estimativas de prazos e custos eram frequentemente imprecisas, faltava dedicar tempo para coletar dados. O desenvolvimento era iniciado sem conhecer exatamente o que seria necessário para o sistema deixando o cliente insatisfeito com o resultado, a qualidade do software era muito baixa, havia muita dificuldade em manter o software após desenvolvido.

O que é a crise do software?
Surgiu nos anos de 70 pra expressar as dificuldades existentes na área de desenvolvimento de software. A evolução rápida do hardware e aumento da procura levou a ter muitos clientes e a complexidade dos softwares se tornou maior, assim, muitos problemas surgiram e o período acabou ficando conhecido como a crise do software.

Quais foram as principais causas da crise do software?
As próprias características do software, software não se desgasta, mas se deteriora. Falhas das pessoas responsáveis pelo desenvolvimento, programadores com pouca experiência, resistência à mudança, gerentes sem experiência, falta de capacitação.

O que podemos fazer hoje para conter a crise do software?
Estudar muito, dar treinamento adequado às equipes de desenvolvimento, desde os gerentes até analistas, suporte, equipe de testes (homologação) e treinamento. Ter os processos definidos claramente para toda equipe, atenção especial a treinamentos específicos em gestão de pessoas para gerentes, conhecimentos sobre nova geração, ambiente de trabalho, ADP, flexibilidade de horários entre outros pontos que são considerados importantes.

O que são mitos de software?
São crenças sobre o software, sobre os processos de desenvolvimento, normalmente contém algumas verdades e muitas pessoas acreditam mas na realidade acabam passando informações errôneas e gerando confusão.

Quantos e quais são os tipos de mitos de software?
Gerência, Administrativos e Clientes... acredito que eram esses :D

A crise de software existe até os dias atuais? Justifique (pessoal).
Acredito que muitas empresas de pequeno porte ainda sofrem com essa realidade, normalmente por dificuldade em aceitar mudanças por parte dos gerentes. Também ainda há muitos “sobrinhos” ou mesmo programadores free lancers que desenvolvem programas/sites sem ter conhecimento necessário e acabam passando por todos os problemas comuns existentes durante o período da crise de software, na realidade acredito que estes problemas sempre existirão enquanto a área de desenvolvimento não tiver alguma regulamentação mais forte que impeça este tipo de atividade e force as empresas a adotarem algum padrão, hoje é tudo liberado (que bom, ou não). Essa regulamentação não é feita porque a um consenso entre as pessoas da área que vários dos melhores profissionais não tem formação acadêmica/técnica e também vários não são adeptos de padrões, ao menos na parte de programação, mas é comprovado que a qualidade do software entregue aumenta muito nos projetos que utilizam ao menos alguma “boa prática” já criada e isso acaba sendo o diferencial nos produtos das empresas.

Comentários

Postagens mais visitadas deste blog

Solução para problemas com impressora de cheque Bematech DP-20

Como bloquear Facebook Youtube no Mikrotik

Iniciar sessão automaticamente no Xubuntu 13.04