You are on page 1of 3

ICT 273 Information Technology Management

Information Systems Review of Literatures


Lucman M. Abdulrachman*
1
Conding St, Lomidong, MSU Main Campus, Marawi City, Lanao del Sur, Philippines
a
lucman.abdulrachman@g.msuiit.edu.ph

Abstract—Understanding applied architecture on an


Information System at glance are difficult for some with minimal
knowledge on the field of software architecture. There were 5 II. SYSTEM ARCHITECTURE
(five) Information Systems articles presented for review and
analysis. This paper is aims to discuss and describe the One of the most important principle in Software
Architectural Patterns or Styles, and Technologies used in the Architecture is Separation of Concerns (SoC) which can be applied
Information Systems presented. Architectural Design patterns or vertically and/or horizontally aspect of architectural structure of the
Styles refers to a general repeatable solution to a commonly system. Some of common Architectural Design Patterns used in the
occurring problem in software design. Technologies refers to the presented articles are N-tiered Pattern (Layered Architecture),
system dependencies used in developing the systems such as Model-View-Controller (MVC), and RESTful Service Style. The
databases, tools, and data format for communications. presented systems mostly use standardized JSON as DTO (Data
Transfer Object) as lightweight data message format between client
To describe the architectural design patterns and and server application.
technologies used in the presented information systems, the author
will enumerate and define the definitions of each and sight the Arch my. my. My. Mobile Mobile
advantage and disadvantages of using such design pattern or Artifact eskwela eskwela Aral Energy Water
technology. s Cloud Temp
N-Tier Yes Yes Yes Yes Yes
Keywords—information system, architecture, design Pattern
patterns, software technologies MVC DB DB UI No? No?
Pattern
I. INTRODUCTION Server Native / Native / Native REST REST
Style Text / Text / /? API / API/
JSON JSON JSON JSON
Every solution that an information system that provide
for a particular organizational problem requires an architectural DB Postgre Postgre ? Postgre Postgre
design approach that fits the with organizational constraints and SQL SQL SQL SQL
business needs. Architectural design approach in its technical form Table 2: Architectural Design, Style, Technology Comparison
can be represented in an architectural design patterns or styles
which are reusable solutions to a commonly occurring problem in For UI technologies, PhoneGap a mobile cross-platform
system design. There are various techniques and technologies for development technologies was used on both cloud my.eskwela and
system development that may fit will for a particular architectural on-premise my.eskwela. jQuery Mobile with MVC pattern where
design pattern. used in My.aral. The monitoring system uses native or plain
This paper is aims to discuss the Architectural Patterns, JS/HTML/CSS.
Styles, and Technologies used in the Information Systems
presented. There are 5 (five) Information Systems articles Other relevant technologies such as SMS were used in
presented which are described in Table 1. both cloud and on-premise my.eskwela, my.aral and Water
Temperature Monitoring systems. DFRduino where used in
System / Article Description Energy Monitoring system to communicate with the sensor. And
Raspberry Pi were used in Water Temperature Monitoring System
my.eskwela School Information System (SIS)
to communicate with the temperature sensor.
Cloudification of Cloud-base SIS
“my.eskwela”
My.Aral Mobile Learning Platform A. N-Tiered Pattern / Layered Architecture
Mobile Web Energy Monitoring System
Monitoring System N-tiered pattern is design pattern which can be used in
Mobile-based Water Monitoring System high level structure of the system applying SoC in vertical aspect.
Temperature Monitoring my.skwela uses N-tiered pattern by having presentation
System layer, Business or Application Layer, and Data Layer as shown in
Table 1: Presented Articles of Information Systems Fig 1.

To help readers understand the architecture and


technologies used in the presented information system articles, this
paper itemizes the architectural design patterns and technologies
used in the presented systems and identifies the advantages and
disadvantages of using such architecture or technologies.
ICT 273 Information Technology Management

DISADVANTAGES:

Presentation This architecture also has disadvantages if not


Mobile/Desktop Browser Social Networking Sites SMS Mobile
implemented properly. Some developers/programmers will be
tempted to implement business logics on presentation layer or data
layers which violates Dependency Rule mentioned in Clean
Web Server
Business
SMS Server (2.0) Push server
Architecture by Robert C Martin [6].

With this architecture, some organizations basing on


Data
creating different teams for each layers, UI Team, Server Team,
PostgreSQL Database SMS Database
(1.0) existing SIS Data
Source
(2.0) Picture Server and Database Team which introduces dependency of work which is
Fig 1. my.skwela layered architecture a bottleneck to the development team if no established proper unit-
testing with mocking and stubbing.
Mobile Web Energy Monitoring System uses N-tiered
pattern by having presentation layer, Business or Application In addition, the current high-level architecture of the
Layer, and Data [2] as shown in Fig 2. systems presented specially SIS and LMS, Microservice
architecture [7] could improve the structure of the system by
applying SoC in horizontal aspects which can high lessen the
Presentation complexity of application servers.
Mobile/Desktop Browser Sensor/Raspberry Pi

B. Model-View-Controller (MVC)
Business
Restful Server Web Server MVC is a design pattern which can be used in the
implementation of system components whether in UI/presentation,
Business, or Data layer that applies SoC in vertical aspect.
Data
PostgreSQL Database MVC design pattern was used in my.eskwela on
Fig 2. Mobile Web Energy Monitoring System layered architecture Database Layer using Stored Procedure controller. Its also used
my.aral on UI layer with jQuery Mobile.
Mobile Water Temperature Monitoring System uses N-
tiered pattern by having presentation layer, Business or Application ADVANTAGES:
Layer, and Data [3] as shown in Fig 3.
One clear advantage of MVC is readability of codes by
separating domain models from logics in controllers and
Presentation presentation views. It allows new developers of the system to
Mobile/Desktop Browser SMS Mobile understand easily the context of script at glance thus improve
maintainability.
Business
Restful Server Web Server SMS Server Push server DISADVANTAGES:

MVC constitutes dependency from models to controllers


Data
to views. Modifying a property or attribute in models would
PostgreSQL introduce change(s) as well on controllers and views. But with the
Fig 3. Mobile Water Temperature Monitoring System layered advance IDE right now, refactoring of model properties and made
architecture easy. But still full developer understanding of the linkages between
Model, View, and Controller is necessary to determine causes of
my.aral uses N-tiered pattern by having presentation mis-behaviors of the system.
layer, Business or Application Layer, and Data Layer as already
presented in the article[1]. C. JSON as DTO
ADVANTAGES: JSON is a standardized data format that can be use as
Data Transfer Object over messaging across network or piping and
N-tiered architecture allows cross-platform allowing cross-platform.
business layers to support various presentation platforms whether
its mobile, desktop, SMS, or any IoT device. It also allows JSON was used in my.skwela as DTO between client
business layer to support various data sources if implemented with browsers and server. JSON was used as well in Mobile Energy
persistence APIs such as JPA/Spring in Java, Entity Framework Monitoring System and Mobile Water Temperature Monitoring
in .NET, and ORM in other platforms. System as DTO between sensor/SMS Server to RESTFul Service.
This architecture also allows ease of split of tasks by
having separate technical tasks for presentation, business, and data ADVANTAGES:
layer which can improve to visualize complexity of stories being
worked on in terms of complexity. One of the good advantages of JSON over other
notations such as XML is its position as native object
representation in JavaScript which is dominant platform in
presentation layer that can work across different platforms and
operating systems.
ICT 273 Information Technology Management

DISADVANTAGES: REFERENCES
For some platforms such as JAVA or .NET which uses
[1] Orven E. Llantos, Joy A. Magsayo, Michael Nico Suarez, Dan
XML as the native DTO, need of serialization is necessary which
Patrick P. Garcia
can affect the performance of the system. But optimized libraries
The My.Aral Project: Towards Developing A Mobile
and frameworks were made available to make serialization from
Learning Platform
JSON to Object easy.
[2] Kristine Mae E. Galera, Orven E. Llantos*
Mobile Web Energy Monitoring System Using DFRduino
Alternative of JSON which is lighter is YML which
Uno
combines quality attributes of JSON and XML.
[3] Paul B. Bokingkito Jr.*, Orven E. Llantos
Design and Implementation of Real-Time Mobile-based
D. PostgreSQL Database Water Temperature Monitoring System
[4] Orven E. Llantos
PostgreSQL is relational database which are used in most my.eskwela: A Mobile Approach to Visual and Social Student
of the systems presented in the articles. Information System
[5] Orven E. Llantos
ADVANTAGES: Cloudification of my.eskwela for e-Governance in Philippine
Education
PostgreSQL as relational database has advantage [6] Robert C. Martin
maintainability keep consistency of information by linking related The Clean Architecture
information from entity table to other entity tables. In some https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-
scenarios PostgreSQL have advantages on performance as well. architecture.html
[7] Anton Kharenko
Relational Databases such as PostgreSQL were fit with Monolithic vs. Microservices Architecture
operational Information Systems such as SIS and LMS which https://articles.microservices.com/monolithic-vs-
handles various relationships between different entities. microservices-architecture-5c4848858f59

DISADVANTAGES:

On disadvantages of relational database in general is


scalability. Like for example with water temperature and energy
monitoring system, implementing the system across geographical
regions will require several clusters of servers. Using relational
database will lead to centralized database which has disadvantages
on performance and availability due to networking constraints
since relational database were not designed to scale.

Alternatively, NoSQL database such as MongoDB, Riak,


etc. which can scale across cluster of networks and can be a good
choice of database in transaction information systems such as
monitoring systems or big-data analysis.

IV. CONCLUSION
I find the presented projects very valuable to the
community addressing important constraints such as access to
internet/network by providing SMS gateways.

The systems presented in the articles are all using


monolithic architecture approach. Separation of Concerns are
mostly applied vertically. A good improvement that can be applied
the systems introducing microservice architecture which can
improve scalability and flexibility [7]. Microservice architecture
could allow to combine my.eskwla and my.aral over one gateway,
as well as Water Temperature and Energy Monitoring Systems in
one API gateway that allows more systems and different data-
sources to be integrated system.

You might also like