Login do usuário

To prevent automated spam submissions leave this field empty.

[STJ_2015] Recursos e aulão - Desenvolvimento de Sistemas

PessoALL,

Disponibilizei para download os slides da aula de hoje contendo a correção dos itens da prova de desenvolvimento de sistemas, possíveis recursos e embasamento teórico para as respostas. Ademais, acrescentei ao final do material algumas sugestões de bibliografia, atendendo ao pedido de um aluno.

No tocante ao padrão de resposta da prova discursiva, seguem abaixo algumas considerações para aqueles que desejam submeter um recurso:

2.1 - Quantidade de lógica agnóstica na solução orientada a serviços e serviços agnósticos

O padrão de resposta apresentado conceitua serviços agnósticos como elementos que "fornecem um intervalo de funcionalidades genéricas". A mesma obra mencionada no padrão de resposta (SOA: princípios de design e serviços), detalha na seção 9.4 uma definição abrangente acerca de serviços agnósticos, a saber:

Um serviço é agnóstico quando sua lógica é independente de processos de negócio, aplicativos ou tecnologias proprietárias. Quanto mais agnóstico for um serviço, mais genéricas são suas capacidades. Portanto, serviços agnósticos têm maior potencial de reúso.

Diante do exposto, sugere-se à banca a complementação da definição de serviços agnósticos conforme apresentado acima.

2.5 - Maior federação

De acordo com padrão de resposta, "SOA visa aumentar a perspectiva federada de serviços. Quando a SOA é construída pela plataforma WS o nível de federação é mais alto porque os serviços podem tirar proveito da natureza não-proprietária das próprias tecnologias".
A mesma referência mencionada (E. R. L. Thomas. Op. cit., p. 36.), esclarece dois pontos de grande relevância no que se refere ao objetivo estratégico de se aumentar a federação, a saber:

  • Um ambiente de TI federado é aquele no qual os recursos e os aplicativos são unidos, entretanto, cada um mantém sua autonomia e autogovernança”. (SOA Principios de Design de serviços. Página 52)
  • Maior federação é alcançada por meio do uso de serviços padronizados e com capacidade de composição, de modo que cada serviço encapsula um segmento da organização e o expressa de maneira consistente. Uma analogia com o padrão de projeto Facade é adequada para esclarecer este mecanismo.

Desde modo, solicita-se à banca que padrão de resposta deste item seja atualizado com as informações supramencionadas.

[]´s a todos e bons estudos.

Marcelo Pacote

Comentários

77) As principais atividades de engenharia de software são especificação, desenvolvimento, validação e evolução.

O gabarito preliminar = CERTO.

[segue rascunho para elaboração do recurso]

De acordo com Ian Sommerville (Engenharia de Software, 9ª Ed., 2011, p. 18): "Existem muitos processos de software diferentes, mas todos devem incluir quatro atividades fundamentais para a engenharia de software:
1. Especificação de software;
2. Projeto e implementação de software;
3. Validação de software;
4. Evolução de software".

A questão parece adotar a abordagem de quatro atividades principais proposta por Sommerville, trocando "projeto e implementação" por "desenvolvimento".

Cabe ressaltar que, de acordo com a norma ABNT NBR ISO/IEC 12207:2009 Engenharia de sistemas e software - Processos de ciclo de vida de software, o conceito de "desenvolvimento" não se restringe a projeto e implementação.

De acordo com Roger S. Pressman (Engenharia de Software, 7ª Ed., 2011, p. 40): "Uma metodologia de processo genérica para engenharia de software compreende cinco atividades:
1. Comunicação;
2. Planejamento;
3. Modelagem;
4. Construção;
5. Emprego.
Essas cinco atividades metodológicas genéricas podem ser utilizadas para o desenvolvimento de programas pequenos e simples, para a criação de grandes aplicações para a Internet e para a engenharia de grandes e complexos sistemas baseados em computador. Os detalhes do processo de software serão bem diferentes em cada um dos casos, mas as atividades metodológicas permanecerão as mesmas".

Há diferenças relevantes entre as abordagens de Sommerville Pressman:

1) Sommerville define 4 atividades principais; Pressman define 5.

2) Sommerville inclui Evolução como sendo a 4a atividade principal; Pressman trata Evolução como atividade à parte (Capítulo 29) e não a inclui entre as 5 que diz serem as principais.

3) Sommerville não cita desenvolvimento (mas sim projeto e implementação); Pressman diz que as cinco atividades podem ser utilizadas para o desenvolvimento; já a Norma ISO/IEC 12207 define desenvolvimento como algo mais amplo do que as 4 ou 5 atividades que os autores citam ser as principais.

O comando da questão não informou qual a referência bibliográfica ou normativa estava considerando. Além disto, ao citar 4 atividades trocando uma delas por outro termo, não ficou em perfeita consonância com um autor e ainda ignorou outro autor, sendo que ambos são igualmente relevantes na engenharia de software. Há que se considerar também que os autores divergem em alguns aspectos de suas abordagens.

Ao privilegiar um autor em detrimento de outro, sendo ambos igualmente importantes, a questão prejudica o correto entendimento por parte dos candidatos que conhecem ambas referências bibliográficas, além das referências normativas também aplicáveis.

Solicito respeitosamente à banca examinadora que anule a questão por não ser possível fazer um julgamento objetivo da mesma.

O recurso é válido. No entanto, essa questão é tirada do Sommerville e já caiu algumas vezes. Vamos ver no que dá.
Att.

Marcio Victorino