Final API 1
Final API 1
Internal Verifier
Date
signature
Programme Leader
Date
signature (if required)
LO1 Examine what an API is, the need for APIs and types of APIs
Pass, Merit & Distinction P1 M1 D1
Descripts
LO2 Apply the knowledge of API research to design an application that incorporates relevant APIs for
a given scenario or a substantial student chosen application
Pass, Merit & Distinction P2 M2 D2
Descripts
LO4 Document the testing of the application, review and reflect on the APIs used
Resubmission Feedback:
* Please note that grade decisions are provisional. They are only confirmed once internal and external moderation has taken place and grades
decisions have been agreed at the assessment board.
Action Plan
Summative feedback
1. A Cover page or title page – You should always attach a title page to your assignment. Use previous
page as your cover sheet and make sure all the details are accurately filled.
2. Attach this brief as the first section of your assignment.
3. All the assignments should be prepared using a word processing software.
4. All the assignments should be printed on A4 sized papers. Use single side printing.
5. Allow 1” for top, bottom , right margins and 1.25” for the left margin of each page.
1. The font size should be 12 point, and should be in the style of Times New Roman.
2. Use 1.5 line spacing. Left justify all paragraphs.
3. Ensure that all the headings are consistent in terms of the font size and font style.
4. Use footer function in the word processor to insert Your Name, Subject, Assignment No, and Page
Number on each page. This is useful if individual sheets become detached for any reason.
5. Use word processing application spell check and grammar check function to help editing your
assignment.
Important Points:
1. It is strictly prohibited to use textboxes to add texts in the assignments, except for the compulsory
information. eg: Figures, tables of comparison etc. Adding text boxes in the body except for the before
mentioned compulsory information will result in rejection of your work.
2. Carefully check the hand in date and the instructions given in the assignment. Late submissions will
not be accepted.
3. Ensure that you give yourself enough time to complete the assignment by the due date.
4. Excuses of any nature will not be accepted for failure to hand in the work on time.
5. You must take responsibility for managing your own time effectively.
6. If you are unable to hand in your assignment on time and have valid reasons such as illness, you may
apply (in writing) for an extension.
7. Failure to achieve at least PASS criteria will result in a REFERRAL grade .
8. Non-submission of work without valid reasons will lead to an automatic RE FERRAL. You will then be
asked to complete an alternative assignment.
9. If you use other people’s work or ideas in your assignment, reference them properly using HARVARD
referencing system to avoid plagiarism. You have to provide both in-text citation and a reference list.
10. If you are proven to be guilty of plagiarism or any academic misconduct, your grade could be
reduced to A REFERRAL or at worst you could be expelled from the course
I hereby, declare that I know what plagiarism entails, namely to use another’s work and to present it as my
own without attributing the sources in the correct form. I further understand what it means to copy another’s
work.
Assignment Brief
Assignment Title
Issue Date
Submission Date
Submission format
Part 1 – Report: The submission should be in the form of an individual written report. This should
be written in a concise, formal business style using single spacing and font size 12. You are required
to make use of headings, paragraphs and subsections as appropriate, and all work must be
supported with research. You must provide in-text citations and the reference list using Harvard
referencing system.
The recommended word count for the report is 4,000–4,500 words excluding annexures. Note
that word counts are indicative only and you would not be penalised for exceeding the word.
Minimum word count – 4,000
Maximum word count – 5,500
Registration – Customers can view the store but only the members can buy items. To
become a member of the website, the customer need to register for the membership.
Login page - The Login page is peripheral of the secure area of the system and allows the
user to log onto the web application. The user can view the store and add their order to
the shopping cart.
Shopping cart – Member can add their searched items to the cart.
User Profile - The User Profile page is an area that allows the users to maintain their own
information. The user can browse and search the items and add to the shopping cart.
Item Search and Select - Each customer must be able to view the status of the placed
order.
Feedbacks – user can provide opinions/ feedback to the site.
Activity 1 - Examine what an API is, the need for APIs and types of APIs.
Examin What is an API (Application Program Interface) ,types and the benefits of APIs and
evaluate the potential security issues surrounding APIs with reference .
1.1 Examin the differences between API and SDK and Assess a range of APIs that covers a
range of users of the proposed solution.
Activity 4 - Document the testing of the application, review and reflect on the APIs used
4.1 Design and complete a ‘black box’ and ‘white box’ testing methods for the developed
system and update the system according to the results. Critically evaluate the APIs used
within your application and results of your Test Plan. Include a review of the overall
success of your multipage website and provide a data security report of the application
you developed for the above sceanrio.
Comments:
LO1 Examine what an API is, the need for APIs and types
of APIs
Activity 1 .............................................................................................................................................. 19
Benefits of API.............................................................................................................................. 20
Difference between API and SDK .................................................................................................... 20
Range of APIs for a particular platform that covers a range of uses. ............................................... 21
Research and Evaluate alternative API similar to the proposed system and enhance the system
design. ............................................................................................................................................... 23
EBay .............................................................................................................................................. 23
Amazon ......................................................................................................................................... 25
Activity 3 - Implement an application in a suitable development environment ................................... 27
Provide the android and web-site wireframes for the proposed system design. ............................... 27
Android Wireframes...................................................................................................................... 27
Website Wireframes ...................................................................................................................... 29
Application that utilizes an API for the proposed system and provide all the interfaces and the
appropriate codes of it. ..................................................................................................................... 32
Activity 4 .............................................................................................................................................. 34
Document the testing of the application, review and reflect on the APIs used. ................................... 34
The developed system should test by using black box and white box testing methods. .................. 34
Authentication ............................................................................................................................... 37
Authorization ................................................................................................................................ 37
Secure the Individual Accounts .................................................................................................... 37
CSRF (Cross Site Request Forgery) attacks ................................................................................. 38
Security Architecture .................................................................................................................... 38
Conclusion ............................................................................................................................................ 39
References ............................................................................................................................................ 46
A web service is a system or software that uses an address, i.e., URL on the World Wide Web, to
provide access to its services. SOAP, XML-RPC, JSON-RPC, REST are the types of API’s available.
Benefits of API
The content generated can be published automatically and available for every channel when access ID
provide to an API. Efficiency is a benefit of API. Any user or company can customize the content and
services that they use the most. Also, it can add advance features which means API’s are flexible which
another benefit is. Automation is another benefit of API. API’s allows machines to handle the
workload. Also, can agencies can update workflow to make them quick and more productive. Wider
reach; API will help to connect with software to software. So, it will reach a wider area.
Visual Studio
Visual Studio is an Integrated Development Environment (IDE Hereafter) based on the .Net
framework. Visual basic, C#, C++, ASP.NET are some Programming languages which are provided
by Visual Studio.
Rapid API
This lets you manage all your API integrations from one place and gives you real-time performance
metrics (Rapid API, 2019). This allow developers to search, find, test and use all available public API’s
within minutes. Also, it allows the user to track and manage their connected API’s. Rapid API is also
best for testing and overriding API’s.
DreamFactory
DreamFactory is best for creating REST API’S and converting SOAP into REST. It makes easy to
Create, Read, Update or Delete objects and related objects with a single API call. This is a free Apache
to open source projects that runs on Linux, Windows and Mac OS. It makes it easy to publish your
API for others to use. (DreamFactory, 2019)
According to the scenario OZQ-cart is an online e-commerce system. To build this e-commerce system
the ASP.NET Web API is the API that is suitable to build up this system.
EBay
Home Page of EBay
EBay is selling all kind of products. In this home page it shows the recently viewed items of the user
and popular categories. Also user can search of what they are looking for to buy. In the search bar also
there is an option to search by choosing categories. It will make users work much easier. Also, it has
categories as a navigation bar so the user can get items by selecting it. EBay has mentioned My eBay
as the user profile. So the user can visit to their profile by selecting it. The cart is showed with a symbol
of a cart. Also it has notified that how many products have added to the cart.
Log in
EBay has provide the facility to the user to log in with Facebook, Google Account or by providing
email or username and the password. This happens according to that how you create your account. But
the safest way to create an account is by email or username and password.
There are more other options such as Help and Contact, Sell, Security Center etc. According to all
these features of eBay it is user friendly and secure also, these features will be helpful when developing
OZQ-Cart system.
Amazon
Amazon is a multinational technology company focusing on e-commerce, cloud computing and AI
(Artificial Intelligence).
Home page of Amazon
Amazon e-commerce system’s interface is very attractive and colorful. The user can search by typing
as we as by selecting category. In this home page it also has categorized the products which they are
selling. The user can buy goods by signing up to the system or she can buy goods as a guest user. So,
it’s not necessary to be a member in amazon to buy goods which.
Document the testing of the application, review and reflect on the APIs
used.
The developed system should test by using black box and white box testing
methods.
Software Testing
Software testing is characterized as an operation that ensures that the actual results match the expecte
d results and that the software system is free of defects. There are two types of testing methods which
are ‘White Box Testing’ and ‘Black Box Testing’.
The APIs used within your application. Provide a data security report of your
application
Authentication, Authorization, Secure the individual accounts, CSRF (Cross Site Request Forgery)
attacks and Security Architecture are the security issues that can be happen with this system.
Authentication
When the host authenticates the user, it creates the principles to represent the security context under
which code is running. The principal contains an associated identity object that contains information
about the user. If the user is authenticated, the Identity is Authenticated property returns true. For
anonymous requests Identity Authenticated returns false. (Microsoft, 2019)
Authorization
This is deciding whether a user is allowed to perform an action. For an example user have permission
to get recourses but not to create resources. This filters run before the controller action. If the request
is not authorized, the filter returns an error response, and the action is not invoked. (Microsoft, 2019)
Security Architecture
Security architecture is a unified security design that addresses the necessities and potential risks
involved in a certain scenario or environment. It also specifies when and where to apply security
controls. The design process is generally reproducible. In security architecture, the design principles
are reported clearly, and in-depth security control specifications are generally documented in
independent documents. System architecture can be considered a design that includes a structure and
addresses the connection between the components of that structure. (Techopedia, 2019)
Architecture Risk Assessment: Evaluates the business influence of vital business assets, and the
odds and effects of vulnerabilities and security threats.
Security Architecture and Design: The design and architecture of security services, which facilitate
business risk exposure objectives. (Techopedia, 2019)
Implementation: Security services and processes are implemented, operated and controlled.
Assurance services are designed to ensure that the security policy and standards, security
architecture decisions, and risk management are mirrored in the real runtime implementation.
These are the security issues that can be happen within an API. Providing the required solutions for
these issues, the system will prevent from those attacks.
Test Cases
Test case ID: 01
Test name: The product
User controller