O documento discute conceitos fundamentais de engenharia de software, incluindo: (1) o que é engenharia de software e seus métodos e ferramentas, (2) o que é software e seus tipos, (3) atributos de um bom software, (4) o que é um processo de software e suas atividades genéricas, e (5) modelagem de software, paradigma de orientação a objetos e seus principais conceitos.
O documento discute conceitos fundamentais de engenharia de software, incluindo: (1) o que é engenharia de software e seus métodos e ferramentas, (2) o que é software e seus tipos, (3) atributos de um bom software, (4) o que é um processo de software e suas atividades genéricas, e (5) modelagem de software, paradigma de orientação a objetos e seus principais conceitos.
O documento discute conceitos fundamentais de engenharia de software, incluindo: (1) o que é engenharia de software e seus métodos e ferramentas, (2) o que é software e seus tipos, (3) atributos de um bom software, (4) o que é um processo de software e suas atividades genéricas, e (5) modelagem de software, paradigma de orientação a objetos e seus principais conceitos.
um conjunto integrado de mtodos e ferramentas utilizadas para especificar,
projetar, implementar e manter um sistema.
2. Software.
um programa de computador desenvolvido e projetado pela engenharia, e com sua respectiva documentao associada.
Os produtos de software podem ser desenvolvidos para um determinado cliente ou podem ser desenvolvidos para um mercado geral.
Os produtos de software podem ser: Genrico - desenvolvido para ser vendidos a um leque de diferentes clientes ou Personalizados - desenvolvido para um nico cliente, de acordo com as suas especificaes.
3. Quais os atributos de um bom software.
Os atributos de um bom software, fornecer a funcionalidade e o desempenho exigido pelo o usurio. Facilidade de manuteno: onde o software deve evoluir/adaptar para atender as necessidade e ambientes de negcio. Confiana: O software deve ser confivel atravs de uma srie de caractersticas como confiabilidade, proteo e segurana. Eficincia: o software no deve fazer desperdcio dos recursos do sistema(tempo de resposta tempo de processamento). Usabilidade: O software deve ser utilizvel pelos utilizadores para o qual foi concebido (interface e documentao).
4. O que um processo de software. um conjunto de atividades, padronizadas, cujo o objetivo o desenvolvimento e evoluo de software.
5. Cite e explique as atividades genricas de um processo de software. As atividades genricas em todos os processos de software so: Especificao o que o sistema dever fazer o seu desenvolvimento e restries. Desenvolvimento produo do sistema de software. Validao verificar se o software o que o cliente deseja. Evoluo alterando o software em resposta s novas exigncias.
6. O que um modelo de software. A modelagem de sistemas de software consiste na utilizao denotao grfica e textuais com o objetivo de construir modelos que representam as partes essenciais de um sistema, considerando-se diversas perspectivas diferentes e complementares.
7.explique o paradigma da orientao a objetos.
O paradigma da orientao a objetos visualiza um sistema de software como uma coleo de agentes interconectados chamados objetos. Cada objeto responsvel por realizar tarefas especficas. atravs da interao entre objetos que tarefa complexa realizada.
8. Defina mensagem e classe no contexto do paradigma da orientao a objetos. Classe - A descrio de um grupo de objetos denominada classe de objeto, ou simplesmente de classe. Uma classe um molde para objetos. Diz se que um objeto uma instncia de uma classe. Uma classe uma abstrao das caractersticas relevantes de um grupo representante de coisas do mundo real. Mensagem para que um objeto realize alguma tarefa, deve haver um estmulo. Independentemente da origem do estmulo, quando ele ocorre, diz-se que o objeto em questo est recebendo uma mensagem. Uma mensagem uma requisio enviada de um objeto a outro para este ltimo realize alguma operao.
9. Defina generalizao no contexto da OO. Generalizao (ou herana) o mecanismo pelo qual uma classe(sub- classe) pode entender outra classe (superclasse),aproveitando seus comportamentos(mtodos) e variveis possveis(atributos). A herana pode ser como um nvel de abstrao acima da encontrada entre classes e objetos. Na herana, classes semelhantes so agrupadas em hierarquias. Cada nvel de uma hierarquia pode ser visto como um nvel de abstrao. Cada classe em um nvel da hierarquia herda as caractersticas das classes nos nveis acima.
10. O que polimorfismo no contexto da OO.
a habilidade de objetos de classes diferentes responderem a mesma mensagem de diferentes maneiras. Diretamente associado com herana. Trabalha com a redeclarao de mtodos previamente herdados por uma classe,onde estes mtodos so implementados de forma diferente par cada classe de acordo com a sua necessidade. Classes derivadas de uma mesma superclasse podem invocar mtodos que tm a mesma identificao mas comportamentos distintos, usando para tanto uma referncia a um objeto do tipo da super classe.
11. Na construo de Sistemas de software o projetista se depara com uma gradao da complexidade o que leva a necessidade de um planejamento inicial, onde este pode ter inicio com um modelo que seria a representao do sistema a ser construdo, neste contexto explique a razo da utilizao destes modelos no processo de construo de um software.
Estabelecer um conjunto de atividades organizadas e padronizadas que possibilitam o desenvolvimento e a evoluo do software de maneira a atender as exigncias feitas sobre este.
12.O que UML. A UML a linguagem padro para visualizar, especificar, construir e documentar os artefatos de software de um sistema.
A UML uma linguagem visual, independente de linguagem de programao e de processo de desenvolvimento.
13. Qual o papel da UML no desenvolvimento de sistemas?
Funcionar como uma linguagem padro para visualizar, especificar, construir e documentar os artefatos de software (documentos grficos e textuais) de um sistema.
14. Explique por que a UML no uma metodologia de desenvolvimento de sistemas.
Por que se trata de uma linguagem independente de processo de desenvolvimento, que to somente possibilita a criao de diagramas que permitem a descrio das relaes entre diferentes nveis de abstrao. No um estudo dos mtodos disponveis para criao das tcnicas a serem empregadas no desenvolvimento do software.
15. Explique por que a UML pode auxiliar na reusabilidade em projetos de software.
Por que ele fornece um conjunto de informaes acerca das relaes entre diversos componentes de um sistema, atravs de seus diagramas, propiciando assim uma maior facilidade para deteco de casos de reutilizao de componentes.
16. Na orientao a objetos, o conceito que garante que nenhum acesso direto concedido aos dados atribudo por meio do(a):
R: e) encapsulamento.
17. Ao determinar os requisitos de um projeto, necessrio levantar os requisitos funcionais e os no funcionais.
Os requisitos no funcionais:
R: d) representam restries aos servios oferecidos pelo sistema.
18. As ferramentas CASE auxiliam nas atividades de engenharia de software, desde a anlise de requisitos e modelagem at a programao e os testes. Entre as vantagens do uso de ferramentas CASE, NO se aplica a
R: (C) compatibilidade das ferramentas CASE no mercado.
19. O modelo de casos de uso um dos artefatos mais importantes previstos Processo Unificado, alm de outros modelos de processo. Sobre o modelo de casos de uso, so feitas as afirmativas a seguir.
I - Atores humanos so identificados com base no papel que desempenham do ponto de vista do sistema, e no necessariamente no cargo que ocupam na instituio em que o sistema rodar.
II - A evoluo dos casos de uso ao longo do ciclo de vida do projeto prev que os mesmos ganhem em seu texto os detalhes especficos de implementao necessrios construo do software na tecnologia adotada.
III - As combinaes possveis do fluxo principal com os fluxos alternativos de um caso de uso fornecem todos os cenrios possveis para o mesmo, os quais, por sua vez, podem ser utilizados como unidades de planejamento, implementao e testes.
IV - recomendvel que cada caso de uso seja decomposto funcionalmente e passe a incluir casos de uso menores, sucessivamente, at a menor unidade implementvel possvel, atendendo ao princpio da decomposio funcional.