Skip to content
rumineykova edited this page Apr 27, 2015 · 59 revisions

Welcome to the session-types-use-cases wiki! Use-cases for Sessions

#Objective: Compile a set of use-cases for sessions

#Coordinating Commitee: Dimitrios Kouzapas Rumyana Neykova Sam Lindley

#Repository Link: https://github.com/epsrc-abcd/session-types-use-cases

#Repository: will be structured as a set of folders with each folder corresponding to a use-case.

	Each sub-folder of each use-case will include one
	use-case requirement.

e.g.folder SMTP/Mungo contains the implementation of the SMTP usecase in Mungo folder Buyer-Seller/Scribble contains the Scribble protocol for Buyer-Seller

#Repository Requirements:

  1. Physical Language Description
  2. Session Type
  3. Scribble
  4. Pabble
  5. Typestate
  6. Global Graphs
  7. State Machine
  8. Any other visual representation
  9. Implementation
  • LINKS
  • SILL
  • Haskell
  • Mungo
  • Session Java
  • Python
  • MPI
  • Erlang
  • se-pi

Requirement 1 is obligatory At least one of the requirements from 2, 3, 4, 5 is obligatory Requirements 6, 7, 8 are optional Requirement 9 is obligatory for at least one implementation tool

#Application Domains:

  •           Business Protocols
    
  •   Network Applications
    
  •   Systems
    
  •   Operating Systems
    
  •   Data Structures and Algorithms
    
  •   Hardware
    
  •   Programming paradigms
    
  •   Security
    

#Usecases:

  •   ATM
    
  • Travel Agency
  • Bookstore
  • Simple Mail Transfer Protocol
  • Domain Name System
  • Network Topologies
  • Redis
  • SILL usecases
  • File Access Protocol
  • Python Benchmark
  • Cache Coherency Protocol

#Responsibilities:

Use Case Description
Usecase Simple Mail Transfer Protocol
Domain Network Protocols
Requirements Physical Language Description (rfc reference)
            Scribble  

Implementation: Session Java: Ray
Mungo:Ornela
LINKS: Sam

Usecase: Redis Domain: Data Structures and Algorithms Responsibility: Roly Requirements: Physical Language Description Scribble State Machine Implementation: Mungo

Usecase: Domain Name System Domain: Network Protocols Responsibility: Simon Fowler Requirements: Physical Language Description Scribble State Machine Implementation: Erlang

Clone this wiki locally