The Government of South Korea Creates an Open PaaS with Cloud Foundry

Utilizing the eGovFrame development framework, the platform standardizes the efforts of the Korean software companies delivering nation-wide IT services.
Why read this?
Use Case for Cloud Foundry:

E-government: Building an open PaaS to ensure compatibility of multiple solutions delivered by local IT vendors to South Korean public sector.

Business or Technical Result:

With eGovFrame and PaaS-TA, South Korea has managed to standardize delivery of e-government services, while optimizing development productivity and IT costs.

Lessons learned:

All stakeholders must be engaged, even if it takes time. Development and operational activities should run concurrently, in a dynamic environment with no margin for error. Providers of government services do not have the luxury of delivering flawed products or serving different segments of the population unequally.

What else is in the stack?

Java, Spring, Eclipse

Company Description:

The National Information Society Agency (NIA) was created in 1987, when South Korea's government adopted its “Framework Act on Informatization Promotion.” In 1994, NIA launched the Korea Information Infrastructure Initiative (KII) to construct a nationwide optical fiber network. Currently, NIA is implementing a project aimed at creating information access centers (IACs) to assists different countries in promoting public access to broadband and digital literacy. By 2015, NIA has successfully created 41 IACs around the world.

Cool fact about the company:

South Korea has a population of 50 million people and is the 13th largest economy in the world (as of year 2016). Seven projects by South Korea’s government agencies have received UN public service awards. The most important of them are the Information Network Village (INVIL), designed to foster participation of the general public in policy-making, and the Minwon24 e-services.

Cloud Foundry as part of a digital government

South Korea has one of the world’s most advanced IT infrastructures. Its focus on technology has, no doubt, been an important factor in the nation’s socio-economic growth over the past few decades, as it transformed itself from a struggling, developing nation to one of the world’s more vibrant places. Thus, it is gratifying—and not surprising—to see the South Korean government embrace Cloud Foundry as part of its digital transformation.

Starting from March 2014, South Korea’s Ministry of Interior has collaborated with local software companies to deliver an open platform-as-a-service, known as PaaS-TA.The initiative was aimed at standardizing cloud software development efforts in the public sector.

The project team began with analyzing available open-source technologies and designing the platform’s architecture. In 2015, the collaboration partners proceeded with implementing the platform’s functionality, as well as delivering demos and gathering feedback. It was back then that the government—in the form of its Information Society Agency—decided to join the Cloud Foundry Foundation as a Silver Member.

In April 2016, the Ministry of Science, ICT, and Future Planning—together with the National Information Society Agency (NIA)—presented version 1.0 of the platform, with v2.0 released in February 2017.

South Korea-PaaS-TA-Cloud Foundry

Delivering services with PaaS-TA (Source)

According to NIA, the platform’s name is a combination of two expressions: “Platform-as-a-Service” and “TA”—a colloquial expression meaning “Thank you.”

“As the introduction of a PaaS in the public sector is expected to become more active, the open platform will contribute to the development and operation of a next-generation e-business environment.” —Byung-jo Seo (서병조), Director of NIA

 

The eGovFrame development framework

Prior to launching PaaS-TA, the Korean government had provided local vendors with the eGovFrame software development framework. The project had been launched in 2008, under the direction of South Korea’s National Information Society Agency (NIA) and the Ministry of Public Administration and Security (MOPAS).

A detailed paper on the topic defines a standardized framework for software development “as comprising a particular set of rules, design patterns, interfaces, libraries of modules and tools that facilitate software development, maintenance and reuse.” (The document involves Sojung Lucia Kim from NIA).

South Korea-eGovFrame-Past vs. Present

eGovFrame transforming delivery of e-government services (Source)

At the beginning of the development, smaller vendors were concerned about vendor lock-in from larger vendors participating in developing the framework, and larger vendors were concerned that the scope of the job—envisioned as comprising more than 3 billion lines of code—would overwhelm smaller vendors. Other concerns were expressed about the government meeting its payment obligations for the project.

After several rounds of debate, it was suggested that most of the concerns could be mitigated “if all source code and the architecture were opened to all vendors,” the paper notes. However, the benefits of standardized collaboration outweighed the concerns.

“Specifically, a development framework enables software developers to develop quality software efficiently,” the authors write. In addition, standardization of source code and interfaces via eGovFrame has made it possible to achieve increased interoperability.

“Moreover, software developers can easily maintain software developed by others because it is easy to understand the role, function or position of a specific module in the developed software.”

As of March 2017, the following results were achieved:

  • eGovFrame was applied in total 702 public and private IT projects, including the National Representative Portal and the Enterprise Competitiveness Support.
  • 6,519 developers were trained to use eGovFrame.
  • 579,000 downloads were recorded since the standard framework was released.

 

eGovFrame moving to cloud

While private IT companies offered multiple poorly compatible solutions for the Korean government, this caused service providers to do a lot of redundant work. In addition, for an entity like a government, relying on applications from individual vendors using their private non-standard frameworks is an issue with serious implications—both in terms of reliability, scalability, and security of services. So, the lack of a standardized approach and a common software development platform was obvious and demanded attention.

With cloud technologies rapidly spreading around the globe and more national governments adopting them for delivery of public services, South Korea has taken a major step in the direction, too. Here’s where Cloud Foundry stepped in. NIA decided to integrate its existing eGovFrame framework (together with other development tools) into an Open Platform-as-a-Service (Paas-TA)—based on Cloud Foundry—to enable standardized cloud-native development.

The integration of eGovFrame and Cloud Foundry featured:

  • an Eclipse plugin
  • a GUI environment (a portal) that enables PaaS users to manage development and deployment of PaaS-TA apps
  • an environment for deploying Eclipse projects to the PaaS-TA runtime
  • application management capabilities, such as resource setting, service pack building, routing, etc.

South-Korea-eGovFrame-Open-PaaS

eGovFrame and other software within an open PaaS installation (Source)

 

Lessons learned

Working on the eGovFrame project, its developers have identified six “actionable practices” as listed below. Although the practices were born prior to appearance of PaaS-TA, they seem to work well for any other open platform-as-a-service.

  1. Development framework ecosystems must involve key stakeholders as well as emphasize the benefits of working together and sharing information throughout the ecosystem.
  2. Open innovation (or management by consensus) is essential for building a development framework ecosystem.
  3. Development framework ecosystems need to expand to facilitate vibrant operation.
  4. The development framework and applications should be implemented concurrently.
  5. Building a knowledge-sharing culture is essential for the success of a development framework ecosystem.
  6. Once a development framework ecosystem has become established, participants should plan to evolve the framework by diversifying its services and achieving substantial economics of scope.

South Korea-PaaS-TA-User-Portal

PaaS-TA GUI environment: monitoring tools, buildpacks, etc. (Source)

The framework continues to progress through a program of continuous improvement, according to the paper’s authors.

For documentation on the PaaS-TA project, visit its official GitHub repository.

 

Related stories


The post is written by Alesia Bulanok and Alex Khizhnyak with the assistance of Roger Strukhoff.