Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: THEend8_
6003CEM Web API Development CW1 Report – API Feasibility Study
Task and Mark Distribution
Task
You must produce an API feasibility study report for the client described in the next section. The report should contain the following sections.
Section Description
1 A brief introduction to the document.
2 A definition and comparison of at least two HTTP-based API architectural styles, with a critical evaluation of each one in the context of the client’s requirements.
3 A solution recommendation for the client with a clear justification based on your research and analysis.
4 A software architecture design diagram for the proposed solution and a suggested tech stack for its implementation, including details of language(s), libraries/frameworks, and external API providers the client could use.
5 A conclusion and a list of all references used.
You should emphasise the costs/risks, as well as the benefits of any API architecture and software development choices recommended in the report. You should also clearly justify any claims and recommendations made, using appropriate evidence.
Tables and graphics should be used to more effectively compare the API styles you consider.
Mark Distribution
Scenario
Client
A national retail business The Piano and Keyboard Emporium has outlet locations around the UK. Currently the business sells musical instruments through several high street shops, and online through a Shopify integration in its WordPress-hosted website.
This document is for Coventry University students for their own use in completing their assessed work for this module and should not be passed to third parties or posted on any website. Any infringements of this rule should be reported to
Existing Tech Stack
The client has a centralised stock management system for its stores and points of sale,based on a Microsoft C# desktop application connecting to a PostgreSQL database.
This is used to store all stock information and sales transaction details. In addition,transactions from the Shopify online store are added to this system in an automatic batch operation each night, using the Shopify API.
Existing Expertise
The IT department at the client company currently develops and manages the existing software and the database in a small dedicated internal team, so they are experts in Microsoft C# and PostgreSQL. They are also familiar with PHP to manage their website including how to consume external APIs such as the Shopify one. However,no one on the team has developed an API or a full stack web application before.
Objective
Over the next five years, the client wishes to expand its business from musical instruments to also sell sheet music online, on a subscription-based model. They wish this part of the business to have a separate web and mobile presence from the existing
WordPress site. As they have not yet operated on a subscription model, their requirements are flexible, and the feature set of their desired application should be able to be changed quickly in the early versions of their new sales product.
They recognise that they will need to choose and implement a full stack web application architecture, based around some form of HTTP-based API for the change to happen. However, they have limited knowledge of the API options available, how they work, how these options would integrate with their existing systems (their customer and sales transaction databases, in particular), or how the company might benefit from each of the available choices moving forward.
Therefore, the client would like an API feasibility report written, to help them decide on the approach they should take to develop their online sheet music subscription business.
Your task is to produce this report.
Further Guidance
Content
Use the report to demonstrate your understanding of the module content, and wider research, and how APIs can be applied in a commercial context by exploring:
In terms of code implementation, the Web API Development module focuses on full stack JavaScript using a NodeJS RESTful API server. However, wider research,understanding and evaluation of other HTTP-based APIs such as gRPC, XML-RPC,JSON-RPC, SOAP, GraphQL, and other API libraries/frameworks/stacks including Django REST Framework, Go RESTful, Java Spring Boot, .Net, etc. will help you to make appropriate selections of what to include in the report.
Report Type
Feasibility studies can be of many types including technical, operational, economic,legal, or schedule/timeline. The report you write for this assessment task should be primarily a technical feasibility study: this takes account of resources in terms of existing hardware, software, maintenance capability, and the technical skills of the existing team, considering the technologies being evaluated as a possible solution.
Resources
You must conduct your own independent research to write this report and base it on appropriately cited resources that you find yourself, through the Coventry University Library, and via the Resources section in the module materials (web links and reading list).
Other good starting points for the current state-of-the-art in HTTP-based API development are the following, which contain curated links to technical articles,business analysis, and expert opinion:
o Click “View Archives” at the top to browse
o Subscribe to the weekly email newsletter for regular updates
o Includes articles and a regular podcast on API development Submission Process
Please save your final report as a single PDF/DOCX file and upload it to Turnitin via Aula before the deadline above.