Saturday, December 26, 2015

IKONOMIKAL PROGRAMMING LANGUAGE AND ENVIRONMENT DIAGRAM

Ikonomikal Programming Language

Microsoft .Net Framework 4.6 in Microsoft Azure
with the following FrontEnd And BackEnd

FrontEnd:
VB.NET
Asp.net MVC5 and WEBAPI
HTML/CSS
Javascript

BackEnd:
SQL Azure V12 (primary storage)
Azure Blob Storage
Azure Table Storage


Ikonomikal Environment

Narrative Sequence Connection Flow guided by letters and numbers

A1. Business Process Knowledge
A1. BOTSYS ERP / ERPC Knowledge
A1. Business Tools / Spread Sheet

All A's from 1 to 4 connects in number sequence using Red Lines
Note: Red lines - Speed Equivalent to Memory (or Thought)

A2. Current Work Scenario
A3. User / Subscriber
A4. Internet Browser

A4 & A5 Connects to and from using Green Lines
Note: Green lines - At least 4Mbps Network Speed

A5. Internet Line 1.2,3.... N

A5 & A6 Connects to and from using Black Lines
Note: Black lines - Network Speed 1Gbps Upload/Download (Wan)

A6. MS Azure Firewall
A7. MS Azure Load Balancing Servers

B1. BCSS Internal  Company Operations
B2. MS Azure Load Balancing Servers

A7 & B2 Connects to and from C using Blue Lines
All succeeding connections are using Blue Lines
Note: Blue lines - Network Speed 100Mbps to 1Gbps (LAN)

C1 MS Azure DNS/Router/Switch Devices

C1 Connects to and from D using Blue Lines
All succeeding connections are using Blue Lines
Note: Blue lines - Network Speed 100Mbps to 1Gbps (LAN)

Application Servers Hosted by MS Azure Cloud Service
Note: Connections are in random and not following number sequence
D1. Core Web Servers
D2. Add-Ins Web Servers
D3. Analysis Servers
D4. Crystal Reports Web Servers
D5. Business Intelligence Process Servers
D6. Subscribers & User Web Server
D7. 3rd Party BCSS Internal Mgt Tools
D8. Template & Offline BLOB Web Servers
D9. Developer Web Server (Future)
D10. Subscriber Data Backup Servers
D11. Internet Browser Framework
        D11.1 Javascript
        D11.2 HTML & CSS
        D11.3 Big.js
        D11.4 JQuery.js & Ext
        D11.5 Linq.js
        D11.6 KnockoutJS.js
        D11.7 Developer Javascript Framework
        D11.8 BCSS Custom Javascript Framework
D12. Microsoft.Net Framework
        D12.1 MS Core.Net
        D12.2 MVC
        D12.3 Crystal Reports
        D12.4 Web API
        D12.5 BCSS Custom.Net Framework
        D12.6 Functional Architecture

D Connects to and from E using Blue Lines
All succeeding connections are using Blue Lines
Note: Blue lines - Network Speed 100Mbps to 1Gbps (LAN)

Azure SQL DB Servers And BLOB Servers
Note: Connections are in random and not following number sequence
E1. Subscriber DB Servers
E2. Company DB Servers
E3. Developer DB Servers (Future)
E4. User DB Servers
E5. Messaging DB Server
E6. Template BLOB Storage
E7. Offline BLOB Storage


See Attachment for

IKONOMIKAL ENVIRONMENT DIAGRAM

WHAT IS IKONOMIKAL SSL SECURITY LEVEL?

WHAT IS SSL?

Answer from WEBOPEDIA
http://www.webopedia.com/TERM/S/SSL.html

SSL - Secure Sockets Layer

SSL (pronounced as separate letters) is short for Secure Sockets Layer.

Secure Sockets Layer (SSL) is a protocol developed by Netscape for transmitting private documents via the Internet. SSL uses a cryptographic system that uses two keys to encrypt data − a public key known to everyone and a private or secret key known only to the recipient of the message.

SSL URLs
Most Web browsers support SSL, and many websites use the protocol to obtain confidential user information, including credit card numbers. By convention, URLs that require an SSL connection start with https: instead of http:.

How SSL Works
When a Web browser tries to connect to a website using SSL, the browser will first request the web server identify itself. This prompts the web server to send the browser a copy of the SSL Certificate. The browser checks to see if the SSL Certificate is trusted --  if the SSL Certificate is trusted, then the browser sends a message to the Web server. The server then responds to the browser with a digitally signed acknowledgement to start an SSL encrypted session. This allows encrypted data to be shared between the browser and the server. You may notice that your browsing session now starts with https (and not http).


WHAT IS IKONOMIKAL SSL SECURITY LEVEL?



Ikonomikal uses the same encryption technology implemented by most banks.


SSL (Secure Sockets Layer) is the standard security technology for establishing an encrypted link between a web server and a browser. This link ensures that all data passed between the web server and browsers remain private and integral. 





Ikonomikal SSL over all rating is
 equals to A

Check SSS details at QUALYS SSL LABS 

1. Browse this link: https://www.ssllabs.com/ssltest/index.html
2. Enter inside the box: https://ikonomikal.com 






Suggested modifications, customizations and developments with general industry use will be done and corresponding upgrades will be deployed accordingly for free.





IS 3RD PARTY INTERFACE POSSIBLE IN IKONOMIKAL?

YES, 3RD PARTY INTERFACE IS POSSIBLE IN IKONOMIKAL

Behind the possibility of 3rd Party Interface in Ikonomikal are the architecture and ways to make it work.

To start with are relevant topics such as

  1. 3 Tier Architecture
  2. Web API Layer

1. 3 Tier Architecture



The Ikonomikal program is divided into 3 major Layers:



  •      1.1. Presentation Layer – this is where users are able to interact with (ex. Websites).
  •      1.2. Business Logic Layer – this is where the program processes the users request (ex. Saving, Deleting, Posting, etc.)
  •      1.3. Data Access Layer – this is where the program manipulates the database as requested by the Business Logic Layer.

1.1 Presentation Layer




1.2 Business Logic Layer



1.3 Data Access Layer



This is great news because not all programs are written this way

Ikonomikal is a 3 Tiered Architecture



Some are developed as one host combining all the 3 layers without any end point to integrate with. 



Before we answer the question, let us talk about another layer that makes this all possible…




2. Web API Layer

These are end points or interfaces where you can contact or interact with the Business Logic Layer.

For example, when you call from a telephone with the correct number and the other end rings.




Webopedia definition of "API"

API - application program interface

API, an abbreviation of application program interface, is a set of routines, protocols, and tools for building software applications. The API specifies how software components should interact and APIs are used when programming graphical user interface (GUI) components.  A good API makes it easier to develop a program by providing all the building blocks. A programmer then puts the blocks together.

Types of APIs
Please click this link to know more: http://www.webopedia.com/TERM/A/API.html


Question: 

Is 3rd Party interface possible In Ikonomikal?

The answer is a big
YES



What are the main requirements?
  • Your program must support the JSON Format
  • You must have a valid Email ID and Password
  • You must be invited to a Company

</> 

Quick example on how to connect to API:
(Example: Create a new GL Account)

    1.  Get a save token:
         bcss_wbcl_wa_sc/api/O1_getSCPrgPrcCheckTkn

   2.  Execute the save command:
bcss_wbcl_wa_gl/api/gl_02_gl00001_sav






Our team uses the same set of APIs, which means that you can basically rewrite the entire Presentation Layer for us.




You may be interested to know (please click to browse):
  1. What are the Security Features of Ikonomikal?
  2. How Robust is Ikonomikal?
  3. What is Ikonomikal SSL Security Level?
  4. Company website of Ikonomikal
  5. Ikonomikal software site
  6. What is Ikonomikal?


Please click to send inquiry by email to: Teodoro Rolluqui


Monday, December 21, 2015

HOW ROBUST IS IKONOMIKAL?

WHAT IS ROBUST?



robust


(adj.) When used to describe software or computer systems, robust can describe one or more of several qualities : 
  • a system that does not break down easily or is not wholly affected by a single application failure
  • a system that either recovers quickly from or holds up well under exceptional circumstances
  • a system that is not wholly affected by a bug in one aspect of it
  • a system that comes with a wide range of capabilities. (It should be noted that this last sense of the term robust is not uniformly accepted in technical circles. The term is typically used in this sense in the marketing of software or computer systems to emphasize a selling point and does not refer to the first three meanings of the term.)

HOW ROBUST IS IKONOMIKAL?

Robustness of Ikonomikal can be best understood by explaining the following:


  1. Error Handling and Integrity Checking
  2. Scalability and Reliability




1. Error Handling and Integrity Checking



1.1. Error Handling

Ability to anticipate or detect wrong entries and inform meaningful messages back to the user


Error Handling

1.1.1. Data Entry errors are reported back via Dialog Boxes







Error Handling

1.1.2. Errors made by short running processes such as saving, deleting, uploading, queuing, and etc. are also reported back via Dialog Boxes





Error Handling

1.1.3. Errors made by long running processes such as Posting, Helper Programs, Import Ques, and etc. are reported back via Notifications and Emails.




Error Handling

1.1.4. Errors made by long running subscription processes such as DB Version, DB Tier Performance, DB Restoration, Storage Templates, And Add-Ins are also reported back via Notifications and Emails.



1.2. Integrity Checking

Ability to self check for data errors to correct if necessary and report status.


Integrity Checking

1.2.1. Real time correction of data entry mistakes



Integrity Checking

1.2.2. Correction of data entry mistakes while on the process of saving, deleting, closing, uploading, queuing, and etc.





Integrity Checking

1.2.3. Checking And Balancing with the use of 3 Tables on major ledgers such as AR/AP, HR, Inventory, Treasury, etc. 

  • 1st table is for Transaction Detail
  • 2nd table is for Application Detail
  • 3rd table is for Balance




Integrity Checking

1.2.4. Completely rolls back to a previous state when it was last integral following the rules of an A.C.I.D. database. 





2. Scalability And Reliability


Scalability (Scaling Out)

Ability to increase in performance or  in numbers to handle a growing amount of work. 

Ikonomikal is built to scale out.


Ikonomikal Reliability

Ability to perform as per specification and to recover back on failure. 

Ikonomikal together with Azure Services is reliable.



Scalability And Reliability

2.1 Web servers are handled by Azure Cloud Service and enables us to do the following:

  • Provision new web servers when needed
  • Automatically increase or decrease processors or memory capacities based on settings
  • Web request distribution across different web servers.
  • Ensures failed web request when retried are received by other web servers




Scalability And Reliability

2.2 Point-In-Time Database Restore handled by Azure SQL Database allowed us to build a simplified version for our subscribers to use. Subscribers are able to restore their database any point-in-time within 14 Days.





Scalability And Reliability

2.3 Geo Database Restore handled by Azure SQL Database allowed us to make backups of subscriber databases having 1 Hour difference. The backup is stored miles away from our data center and restorable only at the time of the last backup.








You may be interested to know (please click to browse):
  1. What are the Security Features of Ikonomikal?
  2. Is 3rd Party Integration Possible in Ikonomikal?
  3. What is Ikonomikal SSL Security Level?
  4. Company website of Ikonomikal
  5. Ikonomikal software site
  6. What is Ikonomikal?

Please click to send inquiry by email to: Teodoro Rolluqui