Escola Politécnica da USP
Design Lab
PMR 5237
Modelagem e Design de Sistemas Discretos Aula 10
Prof. Dr. José Reinaldo Silva [email protected]
Escola Politécnica da USP
Indeed (?)
Kurt Jensen
Escola Politécnica da USP
CPN Analysis
Escola Politécnica da USP
CPN Analysis
As we have seen last class CPN Analysis follow the same procedures than the classical analysis and face the same problems, even if has new formal resources to include.
Again, we have a state/transiGon approach, in a discrete flavor, with the possibility of explosion of the number of combinaGons of states, that is, in the composiGon of processes.
Escola Politécnica da USP 5
As redes possuem propriedades Jpicas dos esquemas que as tornam
Uma excelente representação formal para sistemas (dinâmicos) discretos, Entre os quais figuram :
o princípio da dualidade o princípio da localidade o princípio da concorrência
o principio da representação gráfica o princípio da representação algébrica
Modelando em RdP
Aula 1
Escola Politécnica da USP
Specific ConfiguraGons
As in the classic net systems, we detached specific net configuraGons that consGtute a challenge in the analysis process (or situaGons to be avoided, in order to have the desirable system). Some of this situaGons are
• Conflict
• Branching and synchronizaGon
• Deadlocks
Escola Politécnica da USP
DistribuGon and Concurrency
As before, everything is based on the concept of locality.
According to that, individual states could be classified as independent, and, in such a case, they could be grouped in macro states called cases. Conversely, independent
transiGons could be also grouped in steps.
Thus, cases and steps could be arranged in a dual way, generaGng a more abstract net.
Escola Politécnica da USP
Modeling in Classic and in CPN
Concluding, the modeling in Classic P/T nets (taken as the abstract archetype of the classic nets) is very similar to the modeling in CPN (or in any high level net).
On the other hand, the inclusion of type theory, or even a simple disGncGon in the tokens should not be
underesGmated as good resources to analyze complex
systems more comfortably. Such advances is what open new applicaGons to PN and what could make the modeling,
analysis (and more recently the verificaGon process) reliable.
Escola Politécnica da USP
Extensions
Even extension elements are used in a similar way. So far we have seen two very important extension elements:
• Gates
• Hierarchy
Escola Politécnica da USP
Hierarchical CPNs
Escola Politécnica da USP
SubsGtuGon TransiGons
Escola Politécnica da USP
Abstract connecGons
Escola Politécnica da USP
AbstracGon and modeling
Escola Politécnica da USP
Back to the example
Port assignment
Escola Politécnica da USP
Page hierarchy
Escola Politécnica da USP
Complementariness RelaGon
Hierarchical
CPN Classical P/T
Net
Escola Politécnica da USP
Modeling with HCPNs
Escola Politécnica da USP
Hierarchy in PN
Hierarchy is not anything new and is actually connected with any kind of net, including the classical ones.
In design, hierarchy means to abstract the elements which properties are not relevant in an analysis
phases.
Escola Politécnica da USP
The challenge
Hierarchy is a good abstraction feature. However, the real challenge is to associate that with the
property analysis, so that the abstract net preserve the same properties than the expanded one.
The proper requirement is a key issue for that.
Escola Politécnica da USP 20
Criada nos anos 80 para subsidiar o projeto de criação da primeira máquina de comando numérico, especialmente a criação do código G.
Marca, D., SADT: Structured Analysis and Design Technique, McGraw Hill, 1988.
Direcionado para programação
Baseado no conceito de blocos funcionais Blocos são disjuntos e includentes
SADT
Escola Politécnica da USP
History
SADT has been developed and field-‐tested during the period of 1969 to 1973 by Douglas T. Ross and SofTech, Inc. The methodology was used in the MIT
AutomaGc Programming Tool (APT) project. It received extensive use starGng in 1973 by the US Air Force Integrated Computer Aided Manufacturing program.
Escola Politécnica da USP
Top down refinement
Escola Politécnica da USP 23
Um bloco é um conjunto genérico de instruções de programa, onde uma dada instrução é idenGficada como a entrada do bloco e outra (diferente da primeira) é idenGficada como a saída.
Se A e B são blocos de um mesmo programa, então A e B são ditos independentes se e somente se A ∩ B = ∅.
Se A e B são tais que A ∩ B ≠ ∅ então (A ⊆ B) OU (A ⊆ B)
SADT
Escola Politécnica da USP 24
Elementos próprios
Base de elementos consGtuintes (componentes)
Elementos próprios indivisíveis são chamados primos. Um conjunto LI de
elementos primos pode consGtuir uma base e portanto pode descrever qualquer programa.
Elementos básicos
Escola Politécnica da USP 25
Decomposição por refinamentos: o método estruturado
Top-‐down BoRom-‐up
Escola Politécnica da USP
The Structure
The Main system Refinement 1
Refinement 1
Escola Politécnica da USP
The accumulaGve process
The great advantage in the structured method is its accumulaGve nature in the forward (top down) development. Conversely, it adds composiGonality in the bopom up construcGve development. Such a combinaGon is the key issue that makes the structured approach a good feature in modeling and design.
Petri Nets has been criGcized by its lack of composiGonality. The inclusion of hierarchy (in both classic and high level nets) is the best answer to that criGc.
Escola Politécnica da USP
Uma nova perspecGva
Redes
Hierárquicas e de alto Nível
Redes Orientadas a Objetos
Escola Politécnica da USP 29
Vantagens de uma abordagem por objetos
• um modelo simples de concorrência e sincronização.
• semântica operacional que suporte simulação e execução.
• técnicas de análises.
• abstração
• refinamento
• encapsulamento
• reutilização e compartilhamento.
PMC5214
Escola Politécnica da USP 30
Propostas correntes
• Tratamento por objetos do processo de geração da rede
• Exploração da dualidade e da hierarquia (e
eventualmente de estruturação) herança simples
• Manutenção ou redefinição das propriedades das redes
PMC5214
Escola Politécnica da USP 31
Dilema objetos X PN
Petri Nets inside object X
Objects inside Petri Nets
PMC5214
Escola Politécnica da USP 32
Problemas para a fusão Petri Net & objetos
• Estamos na época da discussão sobre a fusão de
métodos e não de superposição de um método sobre os demais
• Não há um formalismo consensual de objetos
• As propostas de formalismo de objetos apontam para teoria de Gpos (redes coloridas)
PMC5214
Objects PN
Escola Politécnica da USP 33
Problemas para a fusão Petri Net & objetos
• A classe mãe não pode exisGr sem sacrificar a dualidade das redes, que gera a maioria das propriedades usadas em análise
• É di^cil achar um significado para o polimorfismo nas redes
• Não é possível (ou pelo menos é di^cil) achar um uso para a herança múlGpla
Objects PN
Escola Politécnica da USP 34
Problemas para a fusão Petri Net & objetos
• A caracterísGca de sistema distribuído fica patente na representação matricial, mas não no encapsulamento imposto pelos objetos
• Para ter uma modelagem realmente hierárquica deveria haver mulGplicidade de subclasses
• Não existe claramente um tratamento formal para
relacionamento entre objetos e nem entre objeto e classes
• A nova representação deveria admiGr a coexistência de
subclasses e objetos em um mesmo nível de representação
PMC5214
PN Objects
Escola Politécnica da USP 35
Redes hierárquicas
s1
s2
s4
s3 t1
t3 t2
2 2
2 s1
s2
s8
s3 t1
t3 t2
2 2
2
t4 t5
t6
s5
s6 s7
PMC5214
Escola Politécnica da USP 36
Refinamento e composição
PMC5214Seja N=(P,T;F) uma rede. Seja X=P∪T, and Y⊆X um conjunto de elementos. Então, δ(Y)={y ∈ Y | ∃x ∉ Y. x ∈ loc(y)} é
chamada uma fronteira de Y. δ(Y) é dita uma fronteira-‐lugar, ou uma fronteira aberta, se δ(Y) ⊆ P. Similarmente, δ(Y) é dita uma fronteira-‐transição, se δ(Y) ⊆ T, ou fronteira fechada.
Escola Politécnica da USP 37
Refinamento e composição
PMC5214Um refinamento (composição) é dito bem-‐formado (well formed) se e somente se uma fronteira é subsGtuída por apenas um
elemento. Neste caso, a fronteira é ou aberta ou fechada.
Note-‐se que o número de arcos entre uma fronteira e o restante da rede não está necessariamente limitado a um.
Escola Politécnica da USP 38
O refinamento estruturado
Um sistema é dito estruturado quando:
• toda a sua representação pode ser reduzida a apenas um elemento macro.
• cada elemento macro “subsumes” as propriedades dos seus descendentes
• um dado nível não depende do nível superior e nem dos
descendentes exceto pela transferência de dados, informações e sinais de controle.
PMC5214
Escola Politécnica da USP 39
Elementos de um sistema estruturado
PMC5214
Um elemento é dito próprio se tem apenas uma entrada e uma saída e caminhos que levam de uma a outra.
Cada elemento consGtuinte pertence a pelo menos um destes caminhos.
Um elemento é primo se é próprio e, além disso não é possível construir este elemento à parGr de outros
elementos próprios.
Escola Politécnica da USP