[Prévia] [Próxima] [Prévia por assunto] [Próxima por assunto]
[Índice cronológico] [Índice de assunto]

Re: Uma crítica ao enunciado do trabalho



Pelo que eu sei, essa metodologia é tradicional nessa disciplina,
desde que eu fiz há uns 4 anos com o Alan. Também não entendo porque
priorizar tanto a "corrigibilidade" do projeto, em detrimento da
modelagem. Uma sugestão melhor ainda é o próprio autor do código
prover os scripts de teste, estes devem seguir um padrão permitindo
que seja avaliado. Mas como quase todo mundo deixa tudo pra fazer na
última hora, iam reclamar do overhead de escrever testes...

Mario

On 4/6/06, Tiago Motta Jorge <tiagoj*ime:usp:br> wrote:
> Caros professor e monitor,
>
>   Estou chocado com o engessamento que o enunciado do trabalho nos propõe.
> Implementar várias classes pré-definidas e com interfaces pré-definidas é uma
> afronta à nossa capacidade intelectual. Sinceramente, isto não passa de um
> trabalho braçal que poderia ser feito por qualquer programador com um mínimo de
> conhecimento de Orientação a Objetos.
>
>   Não compreendi qual foi a lógica seguida. Depois de uma aula sobre cartões
> CRC, que é o primeiro passo para aprendermos a modelar sistemas, é como se
> tivéssemos que esquecer tudo sobre modelagem e implementar um modelo feito por
> outra pessoa.
>
>   A parte mais interessante de Orientação a Objetos é justamente modelar um
> sistema. É justamente modelarmos "errado" várias vezes, até chegarmos à uma
> "banda de jazz" perfeita.
>
>   Por exemplo, não gostei da classe WMGerente. No meu grupo, na aula de cartões
> CRC, nós conseguimos modelar um sistema sem nenhum gerente. Os gerentes recaem
> justamente no que foi dito na início da aula: "A tendência das pessoas
> iniciantes na modelagem de sistemas é fazer classes que orquestram todo o
> sistema...". E também foi dito que isso é uma má prática de programação OO.
>
>   Sei que ter interfaces e clases pré-definidas facilitam a vida do monitor na
> hora de corrigir os trabalhos. No entanto, se a idéia do curso é ver se
> conseguimos implementar um modelo feito por outra pessoa, este curso deveria ser
> dado em uma universidade sem o renome do IME-USP. O que deveria ser avaliado é
> justamente a qualidade da modelagem do sistema. E isto dá trabalho, com certeza.
> Definitivamente.
>
>   Na ementa da disciplina diz: "Este curso visa prover os fundamentos da
> programação neste paradigma [OO], tão importante para o desenvolvimento de
> sistemas complexos.". A meu ver, fundamentos de programação OO é aprender a
> modelar sistemas, e não a implementar sistemas pré-modelados.
>
>   Minha sugestão de enunciado para a primeira fase do projeto é a seguinte:
>
> "O trabalho deste semestre será um pequeno cliente Web para gerenciamento de
> e-mails. O cliente será multi-usuário e deve prover funcionalidades básicas para
> o envio e recebimento de mensagens que contenham formas restritas de
> attachments. Nesta primeira fase do projeto, vocês devem modelar o núcleo do
> sistema. Neste primeiro momento, não se preocupem com a interface. O núcleo do
> sistema deve ser capaz de manipular contas, usuários e mensagens de uma maneira
> conveniente e elegante. [Mais alguns detalhes sobre o Maildir e cabeçalho de
> e-mails]."
>
>   Espero ter iniciado um debate construtivo e que cause algum impacto, tanto no
> professor, como no monitor e, principalmente, no restante da turma. Gostaria de
> saber se sou o único a pensar desta maneira.
>
>
> Atenciosamente,
> Tiago Motta Jorge <tiagoj arroba ime ponto usp ponto br>
>