IN1020 - Engenharia de Requisitos
IF716 - Especificação de Requisitos e Validação de Sistemas
Projeto - Modelagem de Comportamento de Sistemas
1) Motivação
A documentação dos aspectos comportamentais de um sistema permite adicionar
mais detalhes semânticos para um sistema, em particular detalhando suas características
relacionadas a tempo, eventos, e ordem de execução. Além disso, a especificação do
comportamento aumenta a confiança, já no começo do processo de desenvolvimento,
que o sistema funcionará de acordo com o que se espera dele.
Uma das linguagens mais utilizada para especificação de comportamento de
sistemas é a Statechart. Essa linguagem permite a modelagem de sistemas reativos de
forma clara e organizada, através de mecanismos como composição de estados,
independência entre estados, ações, e transições condicionais.
2) Objetivo
Esse projeto tem como objetivo exercitar a modelagem de comportamento de
sistemas utilizando a linguagem Statechart. O sistema a ser modelado é um sistema web
para apresentação e gerenciamento de notícias e anúncios patrocinados, cujos requisitos
são apresentados na seção 3.
A modelagem desse sistema deverá utilizar a ferramenta YAKINDU, que fornece
um ambiente integrado de modelagem para a especificação e o desenvolvimento de
sistemas reativos baseados em statecharts.
O projeto deverá ser feito de forma individual e entregue em versão impressa e
digital. A versão impressa consiste em um relatório contendo uma descrição textual do
statechart criado, assim como o statechart propriamente dito (figura). A versão digital
deverá ser composta por uma versão digital do relatório (doc ou pdf), além do statechart
no formato da ferramenta YAKINDU (extensão sct).
3) Descrição dos requisitos do sistema
O sistema é um serviço de notícias que fornece conteúdo a seus clientes através de
um website. As notícias podem ser formadas por hipertexto e imagens, ou apenas
hipertexto. Para que os administradores do site realizem o planejamento da sua
capacidade, eles desejam saber o número de acessos ao site. Portanto, cada acesso deve
ser contabilizado e seu valor armazenado.
Além desse conteúdo, cada página de notícia também apresenta um anúncio
patrocinado. Visando diminuir o tempo necessário para que o cliente possa ler as
notícias, os anúncios não devem ser carregados antes que o conteúdo da notícia em si
tenha sido devidamente carregado. Por outro lado, visando aumentar o lucro, a cada vez
que um usuário visualize 4 notícias, ocorrerá o seguinte: ao tentar abrir uma outra
notícia, será exibido um anúncio com duração de 10 segundos, antes que a notícia
propriamente dita seja apresentada.
O site possui a funcionalidade de assinatura de atualizações, para isso, usuários
devem informar seu email. Dessa forma, ao mesmo tempo em que fornece as notícias, o
site deve enviar e-mails diários com as atualizações daquele dia para usuários
previamente cadastrados.
Além da visualização de notícias e envio de atualizações, que é aberto para todos os
usuários, o sistema possui uma área de gerenciamento. Nessa área é possível gerenciar
as notícias do sistema, de forma que os usuários autorizados terão permissão para
realizar as seguintes ações: inserir, modificar, excluir, consultar, pré-visualizar e
publicar notícias. Adicionalmente, administradores do site poderão efetuar o cadastro de
novos usuários. Caso o usuário esqueça sua senha, haverá um link onde o usuário
poderá recuperar sua senha – nesse caso, o usuário receberá um e-mail com um link
para o recadastramento de sua senha.







4) Apresentação do relatório
O aluno deverá elaborar um relatório contendo um modelo statechart que descreva o
comportamento do sistema, assim como uma descrição detalhada do modelo em
formato textual.
o Coloque página de capa com: nome, curso, data, nome do professor.
o Páginas deverão ser no formato A4 (210mm x 270mm).
o Tamanho da fonte da letra deverá ser de no máximo 12pt.
O modelo não deverá conter estados que representem o comportamento de
elementos da interface gráfica do sistema (ex., estados on/off para botões, ou
estados vazio/preenchido para campos de texto).
O modelo deverá representar o comportamento do sistema como um todo, em vez
de apresentar apenas o comportamento de uma entidade do sistema.
O modelo deve ser impresso de forma legível. Para isso, é recomendável imprimir o
modelo separado em diversas páginas.
Escreva o relatório de forma clara e concisa.
O relatório deverá ser entregue em duas versões:
o impressa
o virtual – relatório (doc ou pdf) + arquivo modelado na ferramenta Yakindu
(extensão sct).
O projeto deverá ser executado individualmente.
5) Avaliação
O quadro abaixo relaciona os critérios a serem avaliados. Cada critério possui um determinado
peso na avaliação total.
Categoria
Escrita (10%)
Adequação ao
problema
proposto
(20%)
Sub-categoria
Linguagem (5%)
Nível de
detalhamento
(5%)
Relação entre
requisitos e
statechart (20%)
Critério
Redução de 0.5% (até 5%) para cada erro
ortográfico, erro gramatical, ou ponto de confusão.
A descrição do modelo está em um nível
apropriado de detalhamento?
Pontuação
5
A descrição explica o relacionamento entre o
statechart e a descrição dos requisitos funcionais do
sistema?
20
5
Modelo (40%)
Corretude
sintática (5%)
Elementos
utilizados (20%)
Coerência (15%)
Apresentação
individual
(30%)
Total (100%)
Arguição oral
(15%)
Modificações
(15%)
O modelo apresenta algum erro sintático?
5
Super-estado
Eventos
Condições
Estados ortogonais
Variáveis
Ações
Estados default
A descrição do modelo é coerente com sua
representação visual?
O aluno deverá responder a perguntas sobre seu
modelo, em apresentação individual.
O aluno deverá ser capaz de realizar modificações
no seu modelo, durante apresentação individual.
3
3
3
3
3
3
2
15
15
15
100
Download

IN1020 - Engenharia de Requisitos IF716