
A quick description of the service, what it used for, a list of user stories that will be needed based on game design document
DLC management allows game admin to freely manage the additional assets (DLC) and allows game client to get the download links.
How:
Read through the GDD and try to determine the following information:
Rules of thumb:

Data constraints:
Action constraints:
For each feature, we need to provide list of use stories
Then, draw 2 usecase diagrams, 1 for CMS and the other for Game.
Rules of thumb:
What should be discussed during Usecase review?
The assignee should be able to answer the following questions:



| # | Database | Collections | Description |
| 1 | dlc | dlc_item | • id: uuid • code: string • version: number • size_in_bytes: number • download_url: string • expiration_date: nu |
| 1 | internal/v1/items | Upload Item | POST | BODY: file: binary string group: string code: string version?: number isPublic: boolean | CODE: 200 BODY:{ "url": "string", "pathName": "string"} |
Each use case / user story can have its own diagram or grouped in one diagram


Does this service require any other service / internal call?
DLC is used for game setting, single page application, time-limited event and any other service that require to upload file to store in the backend
You need to outline all the test cases, unit test, performance test, integration test and their results
| TEST GROUP/NAME | REQUIREMENT | RELATED DIAGRAM/FLOW/API/CODE FUNCTION | TEST SAMPLE | EXPECTED RESULT | RESULT |
| E2E | |||||
| healthcheck-01 | The API healthcheck must return the version as text | GET /dlc/healthcheck | N/A | Response body is the content of file ./version | Success on Attached file / screenshots |
| Unit Test | |||||
| game-download-asset | Downloads item with a valid access token and gets the latest version | ItemApiController.downloadItems | • Input: {"code": "utest000000","version": 2} | • Response:Status Code: 302 Response Header:Location: url (the url to which the client is redirected) | Success on Attached file / screenshots |
| Downloads item with a valid access token and gets a specific version | • Input: {"code": "utest000000","version": 1} | • Response:Status Code: 302 Response Header:Location: url (the url to which the client is redirected) | Success on Attached file / screenshots | ||
| Download the item with the invalid access token | • Input: {"code": "utest000000"} | • Response: To throw AccessTokenUnauthorized | Success on Attached file / screenshots | ||
| Download Items that do not exist | • Input: {"code": "utest000001"} | • Response:To throw ItemNotFoundError | Success on Attached file / screenshots | ||
| Download item that expires | • Input: {"code": "utest000002", "expiredAt": now} | • Response:Status Code: 302 Response Header:Location: url (the url to which the client is redirected) | Success on Attached file / screenshots |
You need to answer these questions and outline here:
You need to answer these questions and outline here:
| Endpoint | Access | Authorization |
| /internal/* | service 2 service | api key |
| /cms/* | internet with whitelist IPs | cms user access token |
| /api/* | internet | user access token |
Provide the list of all global variables, API key of 3rd party provider, secrets for DevOps to setup in the pipeline

This piece is all about what's next for the IT world, especially for the coding gurus out there. Cool new tech stuff like AI, machine learning, VR, blockchain, and IoT are going to open up a whole bunch of job opportunities and make a difference in all sorts of areas. But here's the kicker - if you want to do well in this space, you've gotta keep on learning and stay up-to-date with the latest and greatest.
Beiryu
Contributor

In the modern technology world, reading open source code is becoming increasingly popular and important for developers. This not only helps them improve their programming skills, but also saves them time and enhances their careers. Below are some benefits of daily reading of open source code for developers.
Beiryu
Contributor