You are on page 1of 10

POC Send

RESTful API
ARIF KHAIRIANSYAH
WED, JAN 18, 2017

Overview

What is REST
REST (REpresentational State Transfer) is an architectural style, and an
approach to communications that is often used in the development of Web
Services.
REST is decoupled architecture (autonomous and unaware of each other).
REST is ligher weight communication between Producer and Consumer.

REST Architectural Constraints


Typically runs over HTTP.
Decouples producer and consumer.
Stateless.
Cache enabled.
Layered system.
Uniform interface.

REST vs SOAP
RESTful Web Services easy to develop by most tools, including those that are free and
inexpensive.
RESTful Web Services is the way cloud providers externalize their cloud services (Amazon
AWS, Azure, CloudFoundry, etc.).
SOAP Services are much harder to scale than RESTful Web Services; often chosen as the
architecture for services that are exposed to the Internet (Twitter, Facebook, and most cloud
providers).
Learning curve seems to be reduced. Developers are able to make use of REST faster than
SOAP. Saves time, saves money.
REST uses a smaller message format (JSON plain text) than SOAP. SOAP uses XML format
which is much larger and inefficient. REST better performance, faster, and lower costs over
time.
Cloud-based platform Web Scale application.

SEND RESTful API Overview


Microsoft ASP.Net Core with .Net Core Framework Cross-platform capability
and cloud ready.
Entity Framework Core .Net ORM.
Auth0.
JSON Web Token (JWT).
SeriLog / Log4Net.
Swashbuckle Swagger (API Explorer).
any other tools that make sense to the development.

Send RESTful API

SEND RESTful API


Phase 1 (Jan-17)
Scrap out both User and SENDer SOAP Services.
Create new RESTful Web Service with layered architecture, cross-platform .Net framework that
can runs on Windows, Linux, and macOS / OS X, Entity Framework (EF) integration, SeriLog /
Log4Net integration, Auth0 with JWT enabled for authentication, and automated Help /
Documentation / Explorer.
Business Logic remains, consume existing Stored Procedures, Tables, and Functions.
Cross-platform integration (Web and Mobile).

Phase 2 (Feb-17)
Class Versioning.
Fully utilize EF for all new enhancement or bug fixes (no more new Stored Procedures and/or
Functions) methods.
Migrate non-complex Business Logic (Stored Procedures and Functions) to be fully EF enabled.
Cross-platform integration (Web and Mobile).

SEND RESTful API (contd)


Phase 3 (March-17)
Migrate semi-complex Business Logic (Stored Procedures and Functions) to be fully
EF enabled.
Cross-platform integration (Web and Mobile).

Phase 4 (Final TBC) (April-17)


Micro-Services architecture.
Migrate the remaining Business Logic (Stored Procedures and Functions) to be fully
EF enabled.
Cross-platform integration (Web and Mobile).

Demo & Discussion

You might also like