Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Aula 1.1 - Do que trata a modelagem de sistemas? mais barato mudar na planta, do que depois do prdio feito.
Sabedoria Popular
Figura 01
Objetivos:
Entender o que : Engenharia de Software; Engenharia de Sistemas; Modelagem de Software;
O que um software?
Desenvolvido ou projetado por engenharia, no manufaturado no sentido clssico No se desgasta mas se deteriora Se regras do mundo real mudam o software deve acompanhar essas mudanas sob pena de no ser mais usado. Assim, nesse contexto, pode se deteriorar
4
A maioria feita sob medida em vez de ser montada a partir de componentes existentes. Um bom software deve ser coeso de fcil uso e robusto Coeso: fazer aquilo a que se destina e nada mais; Facilidade de uso: alm de ser intuitivo, deve prover mecanismos de ajuda, bem como facilidades de manuteno;
5
Caractersticas de um software
Um bom software deve ser coeso de fcil uso e robusto Robustez: continuar funcionando mesmo em situaes inesperadas. Software um elemento lgico e no fsico, assim totalmente intangvel. O simples fato de olhar a tela de um software no nos d subsdios para mensurar o grau de complexidade desse software. O site de busca do Google tem apenas dois botes, mas sua lgica de construo e funcionamento muito difcil de ser mensurada.
Figura 02
Figura 03
Os engenheiros de software se ocupam de desenvolver produtos de software, isto , software que possa ser vendido a um cliente. H dois tipos de produtos de software: Produtos genricos - pacotes de software Produtos sob encomenda - personalizados
Produtos genricos So sistemas do tipo stand-alone, produzidos por uma organizao de desenvolvimento e vendidos no mercado a qualquer cliente capaz de adquiri-los. Algumas vezes, referimo-nos a eles como pacotes de software. Dentre os exemplos desse tipo de produto esto os bancos de dados, os processadores de texto, os pacotes de desenho e as ferramentas de gerenciamento de projetos.
9
Produtos sob encomenda (ou personalizados) So os sistemas encomendados por um cliente em particular. O software desenvolvido especialmente para aquele cliente por uma empresa de software. Dentre os exemplos desse tipo de software destacam-se os sistemas de controle para dispositivos eletrnicos, sistemas escritos para serem compatveis com um processo de negcios especifico e sistemas de controle de trfego areo. 10
Especificao de Software
Uma diferena importante entre esses diversos tipos de software que, nos produtos genricos, a organizao que desenvolve o software controla sua especificao. Para os produtos personalizados, a especificao usualmente desenvolvida e controlada pela organizao que est comprando o software. Os desenvolvedores de software devem trabalhar de acordo com essa especificao.
12
Especificao de Software
Note que a palavra especificao foi destacada 3 vezes no slide anterior. A especificao de software vai desde a simples descrio de requisitos at a construo de modelos que aproximam o desenvolvimento e manuteno de software do mundo real. O uso de modelos nas diversas reas da engenharia sempre foi fundamental para o desenvolvimento de bons produtos.
13
Especificao de Software
Os modelos permitem uma viso antecipada do produto a ser desenvolvido e permitem anlise e avaliao prvias, antes mesmo dos produtos serem construdos. A modelagem de software uma atividades fundamental para fazer do desenvolvimento de software uma atividade de engenharia. Durante o processo de modelagem deve-se primar pela boa documentao para evitar modelos inconsistentes.
14
Especificao de Software
15
Engenharia de Software
Vimos que modelagem um dos itens aplicados a engenharia, mas o que Engenharia de Software? Engenharia de software uma disciplina da engenharia que se ocupa de todos os spectos da produo de software. Desde os estgios iniciais de especificao do sistema at a manuteno desse sistema.
16
Engenharia de Software
Repare que a Engenharia de Software se preocupa com todos os aspectos da produo de software A engenharia de software no se dedica s aos processos tcnicos de desenvolvimento de software, mas tambm a atividades como o gerenciamento de projetos de software e o desenvolvimento de ferramentas, mtodos e teorias que dem apoio produo de software.
17
Engenharia de Sistemas
Qual a diferena entre engenharia de software e engenharia de sistemas? A engenharia de sistemas se ocupa de todos os aspectos relacionado ao desenvolvimento de sistemas com base em computadores e inclui hardware, software e engenharia de processos. A engennana de software parte desse processo.
18
Encerrando...
Esse curso trata da sistemas com foco na software. Dessa forma, ele uma das disciplinas da software. modelagem de modelagem de abrange apenas engenharia de
19
Refer
i r - tt :// . l et ri . fr s. r/ r itet . t l i r - tt :// . le. . r/ i r - tt s:// .s ri . . r/C st erI fo. s i r oft re de i osto de renda 2010 Fi ra 05 rodutos i rosoft Fi ura 06 tt ://engenhariasoft are. ordpress. om/ 2010/04/06/engenharia-de-requisitos/
i s
r fi
r s:
d.
20
Modelagem de Sistemas
Aula 1.2 O que os sistemas devem fazer? O sistema deve permitir que os alunos escolham as disciplinas para as quais desejam se matricular.
Requisito funcional
Objetivos:
Introduo aos conceitos de requisitos do usurio e do sistema Descrio de requisitos funcional e no-funcional Explicao de tcnicas para descrio dos requisitos do sistema
22
Objetivos:
Explicao de como os requisitos de software podem ser organizados em documento Introduo a tcnicas de elicitao (levantamento) e anlise de requisitos
23
O que so requisitos
Um requisito descreve uma condio ou capacidade que o sistema deve estar em conformidade (Unified Process); Um requisito descreve uma funcionalidade ou uma restrio de um sistema.
24
O que so requisitos
Pode ser derivado das necessidades dos usurios, ou estabelecido em um contrato, padro, especificao ou outro documento imposto formalmente Pode estar explcito ou implcito
25
Tipos de requisitos
Funcionais
Descrevem a funcionalidade ou servio do sistema
No Funcionais
Como o nome sugere, so aqueles que no dizem respeito diretamente as funes especficas do sistema. Esto ligados a propriedades dos sistemas: confiabilidade, desempenho, portabilidade, etc.
26
27
28
29
Requisitos funcionais
O QUE Funcionalidade
Requisitos no funcionais
CARACTERSTICAS Confiabilidade Usabilidade
30
34
Documento de requisitos
O documento de requisitos a documentao oficial do que requerido dos desenvolvedores do sistema Procura definir o padro de escrita para evitar ambiguidades refinado na medida que o desenvolvimento evolui:
Inicialmente: deve definir O QUE o sistema deve fazer e no COMO Posteriormente: pode trazer detalhes do COMO deve ser implementado
36
Documento de requisitos
usado em todo o processo de desenvolvimento de software para garantir a conformidade Consiste Basicamente de um conjunto de descrio de requisitos que obedea a um padro. No prximo slide apresentamos um padro de requisito que pode ser utilizado em projetos desenvolvimento de software
37
Elicitao de Requisitos
Usualmente o termo levantamento de requisitos utilizado, mas h uma palavra em portugus bem mais adequada: ELICITAO ELICITAR: siguinifca descobrir, tornar explcito, obter o mximo de informaes para o conhecimento do objeto em questo Entrevistas
41
Elicitao de Requisitos
Tcnicas usadas requisitos: na elicitao de
Questionrios
Quando se tem muitos usurios a serem entrevistados, questionrios podem ser aplicados para agilizar o processo de entrevista.
42
Elicitao de Requisitos
Cenrios Observaes e anlise sociais (etnografia) Reuso de requisitos
Outros sistemas desenvolvidos anterior mente podem conter requisitos que possam ser aproveitados em outras abordagens
Prototipagem
Sempre que possvel fazer prottipo tela do sistema ajuda ao futuro usurio melhorar a percepo do sistema futuro e fornecer informaes mais completas e confiveis.
43