2.5.3 Two Applications Communicate via a Shared File

Context of Use: When two Applications, one using NFS Access Protocols and the other using SMB Access Protocols, communicate via a shared file.

Use case diagram for Two applications communicate via a shared file

Figure 7: Use case diagram for Two applications communicate via a shared file

Goal: This use case demonstrates how two applications can use a shared file to communicate and synchronize workflows in a request/reply fashion, while using different network file access protocols.

Actors

  • Application1

Application1 is the primary actor that triggers this use case. Application1 is a program that is used to create, open, read, write and/or delete files on the file server. It interacts with the File Access Services System through the File Client, using the SMB network access protocol.

  • Application2

Application2 is the primary actor that triggers this use case. Application2 is a program that is used to create, open, read, write and/or delete files on the file server. It interacts with the File Access Services System through the file client, using the NFS network access protocol

  • SMB File Service

The SMB File Service is a supporting actor that is internal to the File Access Services System. It implements server-side protocol components and the file services that are consumed by the File Client.

  • NFS File Service

The NFS File Service is a supporting actor that provides and maintains a secure and consistent file service.

  • File Client

The File Client is a supporting actor that is internal to the File Access Services System and implements client-side protocol components. It consumes the file services that are offered by the file server. The File Client can be an instance of an SMB File Client or an NFS File Client.

  • Active Directory Service

The Active Directory Service is a supporting actor. The File Access Services System stores DFS namespace information in an Active Directory-based system. Additionally, the File Access Services System locates its DFS Service component with Directory Services on the domain controller and discovers the DFS Service by first locating the domain controller and then attempting to connect with the DFS Service on the same computer.

  • Authentication Services

Authentication Services is a supporting actor that is used for authentication purposes.

Stakeholders

  • Users

The User is the person who requires remote file access in order to read, create or modify files on another computer. The User is external to the File Access Services System and interacts with the File Access Services System through the Application. There are two Users, one using the SMB access protocol and the other using the NFS access protocol.

Precondition

  • The client and server computers are configured in a domain.

  • Two file shares, one NFS and one SMB, have been created on the file server, both backed by the same directory in the object store.

  • Both Users have identities for use with both NFS and SMB shares.

  • Both Users have located the desired file shares and have navigated to the desired directory in each share.

  • Application2 has data ready to place in a file.

Main Success Scenario

Trigger: Users open Application1 and Application2 to communicate through the shared file.

  1. Application1 prepares to receive a request message file by registering for a directory change notification on a specific directory using Open a File in an SMB File Share (section 2.5.5.4) to obtain a file handle to the directory, and then using Perform a File Operation Using SMB (section 2.5.5.5) to request directory change notification and wait on notification.

  2. Application2 requests that a new file be created in the directory, using Open a File in an NFS File Share (section 2.5.5.6) and obtains a file handle. Application2 then uses Perform File Operation Using NFS (section 2.5.5.7) to write data into the file, and finally uses Perform File Operation using NFS to close the file.

  3. A directory change notification is triggered to Application1 via the file client using Directory Change Notification Using SMB (section 2.5.5.8).

  4. Application1 opens the new file and obtains a file handle using Open a File in an SMB File Share, reads the contents of file using Perform a File Operation Using SMB, processes the message, appends its reply data to the end of the file using Perform a File Operation Using SMB, and closes the file using Perform a File Operation Using SMB.

  5. Application2 re-opens the file and obtains a file handle using Open a File in an NFS File Share. Application2 reads the contents of the file using Perform File Operation using NFS, completes its processing of the reply message, and closes the file using Perform File Operation using NFS.

Post Condition

The SMB and NFS applications communicate and synchronize workflows, using a shared file.

Extensions

None.