Pergunta

Existe uma boa ferramenta por aí que pode modelar um esquema de simultaneidade/bloqueio de aplicativo de maneira gráfica e que possa simular alguns dos aspectos?

Sei que as redes de Petri podem ser usadas para isso mais ou menos, mas não conheço uma boa ferramenta de GUI que possa projetar e simular.

A UML de alguma forma é utilizável para tais propósitos?

Quaisquer bons links são muito apreciados.

Foi útil?

Solução

Os diagramas de atividade UML podem ser expressos como redes de Petri (por exemplo Veja este artigo). Infelizmente, não conheço boas ferramentas industriais para simulação de redes de Petri ou diagrama de atividades (mas existem muitos projetos acadêmicos que você pode encontrar facilmente).

Tem certeza de que deseja simular seu modelo (por simulação, quero dizer que você realmente quer sentar e ver como sua rede perti está sendo executada)? Geralmente, esse tipo de análise é aplicável a algoritmos pequenos e simples. Na situação do mundo real, você provavelmente gostaria de fazer Verificação de modelo do seu algoritmo em vez de simulação. Eu recomendaria que você verifique a spin (usada por muitas empresas, por exemplo, Siemens). Também tenho uma experiência positiva com Liga e Prisma. Mas se o seu foco estiver em verificar algoritmos paralelos, sugiro que você considere o SPIN.

EDIT: Eu verifiquei algumas ferramentas para simulação e posso aconselhar olhar

1) http://sourceforge.net/projects/visual-petri/

2) http://www.renew.de/

3) http://www.winpesim.de/index.html

Outras dicas

RODAR é uma ferramenta popular para verificação de sistemas distribuídos, mas é apenas a linha de comando, eu acho. Mas na página da web spin, há um link para uma ferramenta GUI intimamente relacionada chamada META

Duvido, é isso que você está procurando, mas vou jogar meus dois centavos:

Na minha universidade, em nossa classe em sistemas de software simultâneos, usamos uma ferramenta chamada Analisador de sistema de transição rotulado (LTSA). Na verdade, é um idioma que você pode usar para modelar o comportamento de um sistema.

O "código" é transformado em um diagrama de estado e uma tabela de transição.

Aqui está um applet de java interativo que pode projetar e executar uma rede de Petri.

Já faz muito tempo que eu olhei para ele, mas parece Ptolomeu Seria um bom ajuste.

Você pode checar PETRI NET SIM, Para simular petróleo comum/cronometrado/colorido, ele vem com uma boa GUI que exibe a execução da rede de Petri em tempo real.

Tente usar a ferramenta de simultaneidade, LTSA. Programa Java. (Analisador de sistema de transição rotulado), para simular programas. Você pode baixá -lo de:

http://www.doc.ic.ac.uk/ltsa/

Mas você precisa ser paciente enquanto o usa, pode levar algumas horas para aprender a usá -lo. Provavelmente funciona melhor enquanto modela os programas Java.

E é sempre bom usar os modelos UML, é claro :)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top