1 / 9

Modellazione dei processi con WFDL (WIDE-like)

Modellazione dei processi con WFDL (WIDE-like). WFDL. WFDL (WorkFlow Definition Language) è un linguaggio per descrivere processi WIDE (visto a lezione) è un esempio di sistema che usa WFDL In questa esercitazione si modellerà il processo di revisione di un articolo scientifico con WFDL.

erling
Download Presentation

Modellazione dei processi con WFDL (WIDE-like)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Modellazione dei processi con WFDL (WIDE-like)

  2. WFDL • WFDL (WorkFlow Definition Language) è un linguaggio per descrivere processi • WIDE (visto a lezione) è un esempio di sistema che usa WFDL • In questa esercitazione si modellerà il processo di revisione di un articolo scientifico con WFDL

  3. Il processo (1) Si consideri il processo di revisione di un articolo scientifico sottomesso per la pubblicazione ad una rivista. Ogni volta che l’editor riceve un lavoro lo invia ad un insieme di revisori che devono esprimere un giudizio (rifiuto od accettazione) entro 60 giorni. ....

  4. Il processo (2) Ottenuta risposta dalla maggioranza dei revisori, l’editor decide se pubblicare o meno il lavoro. Si modelli il processo con WFDL, progettando per ciascun task come dati temporanei e permanenti vengono manipolati

  5. Metodo di soluzione Metodo top-down per raffinamenti successivi • Nel primo schema di raffinamento si usano sole primitive elementari e non viene considerata l’interazione con i database • Nel secondo schema viene progettato uno skeleton del database e si dettagliano con precisione tutti i task

  6. J Dispatch J Reject Primo schema Paper receival J Collect Reports K approved() = yes otherwise Accept

  7. Exists (select * from IncomingPaper) Paper receival Editor receives the paper and decides the number of referee Get Paper; get NumberOfReferees; insert into Submission values (Paper.Author, Paper.Title, Paper.Number, “Evaluation”); delete from IncomingPaper where IncomingPaper.Author = Paper.Author IncomingPaper[Title,Author] Paper[Title,Author,Number] Submission[Title,Author,Number,Status] Referee[Name,Number] UnderRevision[PaperNumber,Reviewer,Evaluation] Secondo schema precondizioni nome e descrizione del task azioni eccezioni

  8. NumberOfReferees NumberOfReferees Dispatch Editor sends the manuscript to each referee CollectReports Each referee evaluates the paper he receives, and submits his vote; a secretary enters the vote get Referee; insert into UnderRevision values (Paper.Number,Referee.Number,NULL); get Vote, Referee.Number; update UnderRevision set Evaluation = Vote where Reviewer = Referee.Number and PaperNumber = Paper.Number; NumberOfReferees RefereeQuorum

  9. Accept Editor accepts the paper and notifies the author Reject Editor rejects the paper and notifies the author update Submission set Status = “Accepted” where Number = Paper.Number; delete from UnderRevision where PaperNumber = Paper.Number; update Submission set Status = “Rejected” where Number = Paper.Number; delete from UnderRevision where PaperNumber = Paper.Number; approved() = yes otherwise

More Related