Boa tarde pessoal, gostaria da opinião de vocês para sanar uma duvida minha, em que aspecto os Padrões de Projeto se enquadram dentro de Engenharia de Software, é um subItem, é citado de alguma forma, ou o mesmo é apenas citado no mundo OO para resolver problemas comuns encontrados no dia a dia?
Olá, Rafael.
A Engenharia de Software é uma disciplina que engloba tudo o que é relacionado ao desenvolvimento de software e aos processos envolvidos.
Em alto nível, ela se preocupa com o levantamento de requisitos, com a análise, design, arquitetura, implementação e implantação.
Como existem diversos tipos padrões de projetos, eles podem ser aplicados em diversas áreas da engenharia de software.
Padrões relacionados a OO podem ser aplicados na implementação. Padrões arquiteturais na arquitetura. Existem padrões de design, testes e outros.
Assim, a Engenharia de Software inclui o estudo e aplicação de diversos tipos de padrões de projetos.
Vlw utluiz era isso mesmo que eu imaginava, levantei a questão pois estou a procura do meu tema para TCC e como quero seguir carreira academica, preciso desenvolver um bom tema, para que isso me auxilie em um possivel mestrado, então estou pensando em dar uma breve introdução em Engenharia de Software e basear meus estudos em Designer Patters, aceito mais opiniões, criticas etc.
Acho que este é um bom tema. Assim você evita fazer como 90% dos estudantes de computação, desenvolver algum sisteminha que nunca será usado.
O que eu posso dizer sobre um TCC é:
- Procure um bom orientador (mesmo que ele seja meio chato), pois alguém que tem uma visão mais profunda (mesmo que não especificamente na área) pode abrir os seus olhos para conhecimentos que dificilmente você alcançaria apenas lendo algum material;
- Sobre a bibliografia, peça ajuda ao orientador e procure estudar visões distintas sobre o tema, isso vai dar um grau de maturidade bem maior ao seu trabalho;
- No início, foque nos conceitos básicos. Por experiência própria, muitas vezes achamos que já sabemos algo e depois descobrimos que esse conhecimento era muito superficial.
Um exemplo que aconteceu comigo:
Na minha monografia de pós-graduação, citei os diversos processos de desenvolvimento, desde o cascata até os ágeis.
Meu orientador perguntou de que tipo de processo eu estava falando. Respondi que eram processos de desenvolvimento.
Então ele me explicou que o Scrum, por exemplo, é um processo de gerência, enquanto o XP é um processo de engenharia de software. O scrum não entra em detalhes de como fazer o software.
Eu estava tão acostumado em ver aquelas listas de processos ágeis e as pessoas dizendo “eu uso isso” e “eu uso aquilo”, que acabei colocando tudo num bolo só.
Vlw pelas dicas, ira me ajudar muito mesmo, no meu caso vou abordar especificamente só os Padrões de Projeto, e não Engenharia de Software de uma maneira geral, pois quero me aprofundar no tema (Engenharia de Software) somente quando tiver cursando mestrado em Engenharia de Software, mais uma vez obrigado abraços.