Network Program Design

Due: 5:00am, Friday, November 22, 2024

Network Application Design – File Server

You must complete the program design for a specified network application (application specifications will be provided in a separate document). This will be an assignment that will be completed as a team.

Your team must select a project manager for this project. The project manager will coordinate the team efforts for project design and development.

Do NOT begin to implement the application at this time. Application specifications will be discussed in more detail and may change. You are encouraged to begin implementation early, but after your design is complete.

Requirements

Each of the following items are to be included in your design. Many of these items are dynamic, meaning they will most likely change as you begin the implementation of the application. What you are developing now and submitting is the application design as you understand it at this point. Be sure to ask any clarification questions that may help your understanding of the application!

  1. Project members – a list of your team members with the main responsibility for each member. The main responsibilities are:

    • Client implementation
    • Server implementation
    • Library/utility code and Readme documentation
  2. Communication plan

    1. Determine and state the method(s) your team will use to communicate.

    2. Determine and state the method your team will use to conduct team meetings, when necessary.

  1. Programming language(s) – Determine and state the programming language(s) to be used for each aspect of the project (client, server, library). It is possible to use multiple programming languages but remember that you will be required to utilize the library/utility functions in both client and server code. If you utilize multiple programming languages, make sure both languages can call functions written in the language used for the library code.
  1. List of functionalities that will be common to both client and server. These functionalities will be implemented in a library and utilized by both the client and server. This list may be general functionalities at this point, such as read a message, and may change when you begin implementation.

  2. Application protocol - This is the protocol the team developed for communicating between client and server for this specific application.

  1. Test plan – how you plan on testing your program (input data you will enter and expected output). You must include values for at least seven test runs. You should consider some invalid values (based on your constraints). There is no need to show the layout of the output; just include the output values. Include a variety of test cases; don’t just include seven test cases for the same scenario/input.

Submission

One team member must submit the assignment via D2L. Be sure to include all team members’ names on the title page. The text responses should be included in one document, which should include a title page and table of contents. The diagrams and any spreadsheets developed may be submitted as separate documents. Any separate documents submitted should be mentioned in the report document indicating what additional files are submitted, their filename, and their role (such as use case diagram, test plan, etc.). This can be done as part of the report content or as an appendix in the report.