01.egovframe training book_overview.pdf

45
eGovFrame Training Book eGovFrame Center 2013 Overview

Upload: banana567

Post on 20-Oct-2015

66 views

Category:

Documents


5 download

TRANSCRIPT

eGovFrame Training Book

eGovFrame Center

2013

Overview

Table of contents

Background

What is a Framework

eGovFrame Overview

Composition of eGovFrame

Open Source Policy

eGovFrame adoption guide

Achievement and Further work

Page l 2

I

II

II

IV

V

VI

VII

Page l 3

Background

HW Centric Procedure language OOP Component Framework

Framework (Collection of API))

Service

Component

(Reusable)

Service

Component

Improve scalability Improve productivity Easy management Ensure performance

Paradigm shift in software development

1960rsquos 2000rsquos

Progressing continuously to overcome SW industryrsquos critical situations

Service

Component

Service

Component

API) Application Program Interface

Increasing development costs as SW scale is getting larger and more complex

Inconsistent development approach make maintainability worse

Lack of education and training for new technologies

Page l 4

What is a Framework

Conceptual Framework

ldquoSkeleton or infrastructure to build somethingrdquo

GoF pattern by Professor Ralph Johnson

ldquoA framework is a set of cooperating classes that make up a

reusable design for a specific class of softwarerdquo

Framework

Narrow meaning As a kind of a solution which implements

Design pattern a reusable set of libraries or classes for a

software system

Wide meaning (narrow meaning) + various development

guide and supporting tools

Page l 5

Hardware

Operating system

Middleware

Service application

Development area

(100 done by developers)

Hardware

Operating system

Middleware

Service application

Development area

(approx 70~80)

SW framework used

(approx 20 ~ 30)

IS Information System

lt IS without SW framework gt lt IS with SW framework gt

SW Frameworks are a special case of software libraries in that they are

reusable abstraction s of code wrapped in a well-defined API [wikipedia]

SW Framework What is a Framework

Page l 6

Enhances IT service quality because developers focus only on their

business logic while all the technical issues are handled by SW framework

Architecture policy

Common technical service

Common biz service

SW Framework

(IS development with SW framework) (IS development without SW framework)

SW Framework benefits What is a Framework

Page l 7

Improving productivity with code reusability

Improving maintainability with consistent development approach

As providing proven solutions based on best practice reducing

the technical variation between developers

Framework based development What is a Framework

If a framework tightly restricts the coding style it may inhibit

creative development

In case of excessive configuration management it may make

additional works

In case of abusing framework patterns it rather increases lines of

code

Benefits

Cautions

Page l 8

Status of a Framework(현황)

In case of Korea since the year 2000 large 3 SI companies have

developed and used a framework to improve development

productivity

In global environment various open source frameworks(mainly

Spring) are used

In recent years the framework use trend is the combination with

each other which specialized in certain areas

Spring Log4J iBatis JUnit other FWs

What is a Framework

Page l 9

Challenges and Issues eGovFrame Overview

Some barriers were identified in e-Government system

SW framework became a basic tool for e-Government

(71 of e-Government system from 2004 to 2007)

Samsung(SYSTEMiER) LG (DevOn) SK (Jgarnet)

HP(InstantOn enterprise) IBM(Application Framework) MS(NET)

71

29

Page l 10

eGovFrame Overview

Vendo

r A

Vendo

r B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Framework 1 Framework 2 Framework 3

Customer

RFP )

Request for

HW SW

architecture

and application

development

Vendor

A

Vendor

B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Standard Framework

Customer

RFP )

Request for

application

development

lt Development with vendorrsquos frameworksgt lt Development with standard frameworksgt

RFP ) Request for proposal

Challenges and Issues

Page l 11

Development Requirement

Draw optimized functions through a process of ISP)

Take advantage of open sources which are globally used

rarr Exclude certain companiesrsquo technology dependency

Try to exclude functions if a commercial solution provides

Ensure compatibility with public information service sector

infrastructure which is generally applied

Open source code analysis and design documentation for wide

dissemination

In order to be a standard which satisfies most relative parts on

the way of development listen and reflect various opinion which

comes from experts groups

eGovFrame Overview

ISP ) Information Strategy Plan

Page l 12

[Major open sources]

bullBiz transaction Spring amp 22

bullData iBatis Hibernate amp 1

bullDevelopment tool Eclipse amp

3

bullTest tool Junit amp 5

bullDistribution tool Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobile amp 4

Define Open Source Selection Policy

Open Source Evaluation Process

License with no restriction on distribution

and use

Evaluate candidate open sources(175)

Functionalnon-functional requirements

Constraints for integration and interfaces

Physically test candidate open sources(85)

Basic functions

Non-functional requirements(SW Quality)

Best O

pen

So

urce

Sele

ction

Final Result

45 open sources selected

Policy Setting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and

e-Gov projects from 2004 to 2007

54 functions and 229 common

components

Function Design

Extracting OSS for eGovFrame Open Source Policy

Page l 13

Open

Source A

Open

Source B

Open

Source D

- remove duplication

- Adjustment of configuration Open

Source C

Complicated

configuration

Co

mp

licate

d

con

figu

ratio

n

Complicated

configuration

Conflict of functions

ltCombination of open source frameworksgt lteGovFramegt

eGovFrame

Because a open source framework is specific to a particular domain requires a

lot of effort to interface each other to use

Difference - between OSS Framework and eGovFrame

OSS) Open Source Software

eGovFrame Overview

eGovFrame distributes pre-configured development environment

including runtime various configuration files template code development

tools and a comprehensive guide

Page l 14

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2 Biz 4

Design

(Architecture or Pattern Based Source Code

As core biz functions

develop using design

and source code (API)

which provided by

eGovFrame

Reusable asset

defining design and

base source code

which is repeatedly

used in information

system project as

based structure to

make a particular

technology or

application

+

Generally used

reusable

components (ex calendar

notice board etc)

eGovFrame Concept eGovFrame Overview

삭제 고려

Page l 15

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Table of contents

Background

What is a Framework

eGovFrame Overview

Composition of eGovFrame

Open Source Policy

eGovFrame adoption guide

Achievement and Further work

Page l 2

I

II

II

IV

V

VI

VII

Page l 3

Background

HW Centric Procedure language OOP Component Framework

Framework (Collection of API))

Service

Component

(Reusable)

Service

Component

Improve scalability Improve productivity Easy management Ensure performance

Paradigm shift in software development

1960rsquos 2000rsquos

Progressing continuously to overcome SW industryrsquos critical situations

Service

Component

Service

Component

API) Application Program Interface

Increasing development costs as SW scale is getting larger and more complex

Inconsistent development approach make maintainability worse

Lack of education and training for new technologies

Page l 4

What is a Framework

Conceptual Framework

ldquoSkeleton or infrastructure to build somethingrdquo

GoF pattern by Professor Ralph Johnson

ldquoA framework is a set of cooperating classes that make up a

reusable design for a specific class of softwarerdquo

Framework

Narrow meaning As a kind of a solution which implements

Design pattern a reusable set of libraries or classes for a

software system

Wide meaning (narrow meaning) + various development

guide and supporting tools

Page l 5

Hardware

Operating system

Middleware

Service application

Development area

(100 done by developers)

Hardware

Operating system

Middleware

Service application

Development area

(approx 70~80)

SW framework used

(approx 20 ~ 30)

IS Information System

lt IS without SW framework gt lt IS with SW framework gt

SW Frameworks are a special case of software libraries in that they are

reusable abstraction s of code wrapped in a well-defined API [wikipedia]

SW Framework What is a Framework

Page l 6

Enhances IT service quality because developers focus only on their

business logic while all the technical issues are handled by SW framework

Architecture policy

Common technical service

Common biz service

SW Framework

(IS development with SW framework) (IS development without SW framework)

SW Framework benefits What is a Framework

Page l 7

Improving productivity with code reusability

Improving maintainability with consistent development approach

As providing proven solutions based on best practice reducing

the technical variation between developers

Framework based development What is a Framework

If a framework tightly restricts the coding style it may inhibit

creative development

In case of excessive configuration management it may make

additional works

In case of abusing framework patterns it rather increases lines of

code

Benefits

Cautions

Page l 8

Status of a Framework(현황)

In case of Korea since the year 2000 large 3 SI companies have

developed and used a framework to improve development

productivity

In global environment various open source frameworks(mainly

Spring) are used

In recent years the framework use trend is the combination with

each other which specialized in certain areas

Spring Log4J iBatis JUnit other FWs

What is a Framework

Page l 9

Challenges and Issues eGovFrame Overview

Some barriers were identified in e-Government system

SW framework became a basic tool for e-Government

(71 of e-Government system from 2004 to 2007)

Samsung(SYSTEMiER) LG (DevOn) SK (Jgarnet)

HP(InstantOn enterprise) IBM(Application Framework) MS(NET)

71

29

Page l 10

eGovFrame Overview

Vendo

r A

Vendo

r B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Framework 1 Framework 2 Framework 3

Customer

RFP )

Request for

HW SW

architecture

and application

development

Vendor

A

Vendor

B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Standard Framework

Customer

RFP )

Request for

application

development

lt Development with vendorrsquos frameworksgt lt Development with standard frameworksgt

RFP ) Request for proposal

Challenges and Issues

Page l 11

Development Requirement

Draw optimized functions through a process of ISP)

Take advantage of open sources which are globally used

rarr Exclude certain companiesrsquo technology dependency

Try to exclude functions if a commercial solution provides

Ensure compatibility with public information service sector

infrastructure which is generally applied

Open source code analysis and design documentation for wide

dissemination

In order to be a standard which satisfies most relative parts on

the way of development listen and reflect various opinion which

comes from experts groups

eGovFrame Overview

ISP ) Information Strategy Plan

Page l 12

[Major open sources]

bullBiz transaction Spring amp 22

bullData iBatis Hibernate amp 1

bullDevelopment tool Eclipse amp

3

bullTest tool Junit amp 5

bullDistribution tool Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobile amp 4

Define Open Source Selection Policy

Open Source Evaluation Process

License with no restriction on distribution

and use

Evaluate candidate open sources(175)

Functionalnon-functional requirements

Constraints for integration and interfaces

Physically test candidate open sources(85)

Basic functions

Non-functional requirements(SW Quality)

Best O

pen

So

urce

Sele

ction

Final Result

45 open sources selected

Policy Setting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and

e-Gov projects from 2004 to 2007

54 functions and 229 common

components

Function Design

Extracting OSS for eGovFrame Open Source Policy

Page l 13

Open

Source A

Open

Source B

Open

Source D

- remove duplication

- Adjustment of configuration Open

Source C

Complicated

configuration

Co

mp

licate

d

con

figu

ratio

n

Complicated

configuration

Conflict of functions

ltCombination of open source frameworksgt lteGovFramegt

eGovFrame

Because a open source framework is specific to a particular domain requires a

lot of effort to interface each other to use

Difference - between OSS Framework and eGovFrame

OSS) Open Source Software

eGovFrame Overview

eGovFrame distributes pre-configured development environment

including runtime various configuration files template code development

tools and a comprehensive guide

Page l 14

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2 Biz 4

Design

(Architecture or Pattern Based Source Code

As core biz functions

develop using design

and source code (API)

which provided by

eGovFrame

Reusable asset

defining design and

base source code

which is repeatedly

used in information

system project as

based structure to

make a particular

technology or

application

+

Generally used

reusable

components (ex calendar

notice board etc)

eGovFrame Concept eGovFrame Overview

삭제 고려

Page l 15

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 3

Background

HW Centric Procedure language OOP Component Framework

Framework (Collection of API))

Service

Component

(Reusable)

Service

Component

Improve scalability Improve productivity Easy management Ensure performance

Paradigm shift in software development

1960rsquos 2000rsquos

Progressing continuously to overcome SW industryrsquos critical situations

Service

Component

Service

Component

API) Application Program Interface

Increasing development costs as SW scale is getting larger and more complex

Inconsistent development approach make maintainability worse

Lack of education and training for new technologies

Page l 4

What is a Framework

Conceptual Framework

ldquoSkeleton or infrastructure to build somethingrdquo

GoF pattern by Professor Ralph Johnson

ldquoA framework is a set of cooperating classes that make up a

reusable design for a specific class of softwarerdquo

Framework

Narrow meaning As a kind of a solution which implements

Design pattern a reusable set of libraries or classes for a

software system

Wide meaning (narrow meaning) + various development

guide and supporting tools

Page l 5

Hardware

Operating system

Middleware

Service application

Development area

(100 done by developers)

Hardware

Operating system

Middleware

Service application

Development area

(approx 70~80)

SW framework used

(approx 20 ~ 30)

IS Information System

lt IS without SW framework gt lt IS with SW framework gt

SW Frameworks are a special case of software libraries in that they are

reusable abstraction s of code wrapped in a well-defined API [wikipedia]

SW Framework What is a Framework

Page l 6

Enhances IT service quality because developers focus only on their

business logic while all the technical issues are handled by SW framework

Architecture policy

Common technical service

Common biz service

SW Framework

(IS development with SW framework) (IS development without SW framework)

SW Framework benefits What is a Framework

Page l 7

Improving productivity with code reusability

Improving maintainability with consistent development approach

As providing proven solutions based on best practice reducing

the technical variation between developers

Framework based development What is a Framework

If a framework tightly restricts the coding style it may inhibit

creative development

In case of excessive configuration management it may make

additional works

In case of abusing framework patterns it rather increases lines of

code

Benefits

Cautions

Page l 8

Status of a Framework(현황)

In case of Korea since the year 2000 large 3 SI companies have

developed and used a framework to improve development

productivity

In global environment various open source frameworks(mainly

Spring) are used

In recent years the framework use trend is the combination with

each other which specialized in certain areas

Spring Log4J iBatis JUnit other FWs

What is a Framework

Page l 9

Challenges and Issues eGovFrame Overview

Some barriers were identified in e-Government system

SW framework became a basic tool for e-Government

(71 of e-Government system from 2004 to 2007)

Samsung(SYSTEMiER) LG (DevOn) SK (Jgarnet)

HP(InstantOn enterprise) IBM(Application Framework) MS(NET)

71

29

Page l 10

eGovFrame Overview

Vendo

r A

Vendo

r B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Framework 1 Framework 2 Framework 3

Customer

RFP )

Request for

HW SW

architecture

and application

development

Vendor

A

Vendor

B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Standard Framework

Customer

RFP )

Request for

application

development

lt Development with vendorrsquos frameworksgt lt Development with standard frameworksgt

RFP ) Request for proposal

Challenges and Issues

Page l 11

Development Requirement

Draw optimized functions through a process of ISP)

Take advantage of open sources which are globally used

rarr Exclude certain companiesrsquo technology dependency

Try to exclude functions if a commercial solution provides

Ensure compatibility with public information service sector

infrastructure which is generally applied

Open source code analysis and design documentation for wide

dissemination

In order to be a standard which satisfies most relative parts on

the way of development listen and reflect various opinion which

comes from experts groups

eGovFrame Overview

ISP ) Information Strategy Plan

Page l 12

[Major open sources]

bullBiz transaction Spring amp 22

bullData iBatis Hibernate amp 1

bullDevelopment tool Eclipse amp

3

bullTest tool Junit amp 5

bullDistribution tool Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobile amp 4

Define Open Source Selection Policy

Open Source Evaluation Process

License with no restriction on distribution

and use

Evaluate candidate open sources(175)

Functionalnon-functional requirements

Constraints for integration and interfaces

Physically test candidate open sources(85)

Basic functions

Non-functional requirements(SW Quality)

Best O

pen

So

urce

Sele

ction

Final Result

45 open sources selected

Policy Setting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and

e-Gov projects from 2004 to 2007

54 functions and 229 common

components

Function Design

Extracting OSS for eGovFrame Open Source Policy

Page l 13

Open

Source A

Open

Source B

Open

Source D

- remove duplication

- Adjustment of configuration Open

Source C

Complicated

configuration

Co

mp

licate

d

con

figu

ratio

n

Complicated

configuration

Conflict of functions

ltCombination of open source frameworksgt lteGovFramegt

eGovFrame

Because a open source framework is specific to a particular domain requires a

lot of effort to interface each other to use

Difference - between OSS Framework and eGovFrame

OSS) Open Source Software

eGovFrame Overview

eGovFrame distributes pre-configured development environment

including runtime various configuration files template code development

tools and a comprehensive guide

Page l 14

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2 Biz 4

Design

(Architecture or Pattern Based Source Code

As core biz functions

develop using design

and source code (API)

which provided by

eGovFrame

Reusable asset

defining design and

base source code

which is repeatedly

used in information

system project as

based structure to

make a particular

technology or

application

+

Generally used

reusable

components (ex calendar

notice board etc)

eGovFrame Concept eGovFrame Overview

삭제 고려

Page l 15

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 4

What is a Framework

Conceptual Framework

ldquoSkeleton or infrastructure to build somethingrdquo

GoF pattern by Professor Ralph Johnson

ldquoA framework is a set of cooperating classes that make up a

reusable design for a specific class of softwarerdquo

Framework

Narrow meaning As a kind of a solution which implements

Design pattern a reusable set of libraries or classes for a

software system

Wide meaning (narrow meaning) + various development

guide and supporting tools

Page l 5

Hardware

Operating system

Middleware

Service application

Development area

(100 done by developers)

Hardware

Operating system

Middleware

Service application

Development area

(approx 70~80)

SW framework used

(approx 20 ~ 30)

IS Information System

lt IS without SW framework gt lt IS with SW framework gt

SW Frameworks are a special case of software libraries in that they are

reusable abstraction s of code wrapped in a well-defined API [wikipedia]

SW Framework What is a Framework

Page l 6

Enhances IT service quality because developers focus only on their

business logic while all the technical issues are handled by SW framework

Architecture policy

Common technical service

Common biz service

SW Framework

(IS development with SW framework) (IS development without SW framework)

SW Framework benefits What is a Framework

Page l 7

Improving productivity with code reusability

Improving maintainability with consistent development approach

As providing proven solutions based on best practice reducing

the technical variation between developers

Framework based development What is a Framework

If a framework tightly restricts the coding style it may inhibit

creative development

In case of excessive configuration management it may make

additional works

In case of abusing framework patterns it rather increases lines of

code

Benefits

Cautions

Page l 8

Status of a Framework(현황)

In case of Korea since the year 2000 large 3 SI companies have

developed and used a framework to improve development

productivity

In global environment various open source frameworks(mainly

Spring) are used

In recent years the framework use trend is the combination with

each other which specialized in certain areas

Spring Log4J iBatis JUnit other FWs

What is a Framework

Page l 9

Challenges and Issues eGovFrame Overview

Some barriers were identified in e-Government system

SW framework became a basic tool for e-Government

(71 of e-Government system from 2004 to 2007)

Samsung(SYSTEMiER) LG (DevOn) SK (Jgarnet)

HP(InstantOn enterprise) IBM(Application Framework) MS(NET)

71

29

Page l 10

eGovFrame Overview

Vendo

r A

Vendo

r B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Framework 1 Framework 2 Framework 3

Customer

RFP )

Request for

HW SW

architecture

and application

development

Vendor

A

Vendor

B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Standard Framework

Customer

RFP )

Request for

application

development

lt Development with vendorrsquos frameworksgt lt Development with standard frameworksgt

RFP ) Request for proposal

Challenges and Issues

Page l 11

Development Requirement

Draw optimized functions through a process of ISP)

Take advantage of open sources which are globally used

rarr Exclude certain companiesrsquo technology dependency

Try to exclude functions if a commercial solution provides

Ensure compatibility with public information service sector

infrastructure which is generally applied

Open source code analysis and design documentation for wide

dissemination

In order to be a standard which satisfies most relative parts on

the way of development listen and reflect various opinion which

comes from experts groups

eGovFrame Overview

ISP ) Information Strategy Plan

Page l 12

[Major open sources]

bullBiz transaction Spring amp 22

bullData iBatis Hibernate amp 1

bullDevelopment tool Eclipse amp

3

bullTest tool Junit amp 5

bullDistribution tool Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobile amp 4

Define Open Source Selection Policy

Open Source Evaluation Process

License with no restriction on distribution

and use

Evaluate candidate open sources(175)

Functionalnon-functional requirements

Constraints for integration and interfaces

Physically test candidate open sources(85)

Basic functions

Non-functional requirements(SW Quality)

Best O

pen

So

urce

Sele

ction

Final Result

45 open sources selected

Policy Setting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and

e-Gov projects from 2004 to 2007

54 functions and 229 common

components

Function Design

Extracting OSS for eGovFrame Open Source Policy

Page l 13

Open

Source A

Open

Source B

Open

Source D

- remove duplication

- Adjustment of configuration Open

Source C

Complicated

configuration

Co

mp

licate

d

con

figu

ratio

n

Complicated

configuration

Conflict of functions

ltCombination of open source frameworksgt lteGovFramegt

eGovFrame

Because a open source framework is specific to a particular domain requires a

lot of effort to interface each other to use

Difference - between OSS Framework and eGovFrame

OSS) Open Source Software

eGovFrame Overview

eGovFrame distributes pre-configured development environment

including runtime various configuration files template code development

tools and a comprehensive guide

Page l 14

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2 Biz 4

Design

(Architecture or Pattern Based Source Code

As core biz functions

develop using design

and source code (API)

which provided by

eGovFrame

Reusable asset

defining design and

base source code

which is repeatedly

used in information

system project as

based structure to

make a particular

technology or

application

+

Generally used

reusable

components (ex calendar

notice board etc)

eGovFrame Concept eGovFrame Overview

삭제 고려

Page l 15

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 5

Hardware

Operating system

Middleware

Service application

Development area

(100 done by developers)

Hardware

Operating system

Middleware

Service application

Development area

(approx 70~80)

SW framework used

(approx 20 ~ 30)

IS Information System

lt IS without SW framework gt lt IS with SW framework gt

SW Frameworks are a special case of software libraries in that they are

reusable abstraction s of code wrapped in a well-defined API [wikipedia]

SW Framework What is a Framework

Page l 6

Enhances IT service quality because developers focus only on their

business logic while all the technical issues are handled by SW framework

Architecture policy

Common technical service

Common biz service

SW Framework

(IS development with SW framework) (IS development without SW framework)

SW Framework benefits What is a Framework

Page l 7

Improving productivity with code reusability

Improving maintainability with consistent development approach

As providing proven solutions based on best practice reducing

the technical variation between developers

Framework based development What is a Framework

If a framework tightly restricts the coding style it may inhibit

creative development

In case of excessive configuration management it may make

additional works

In case of abusing framework patterns it rather increases lines of

code

Benefits

Cautions

Page l 8

Status of a Framework(현황)

In case of Korea since the year 2000 large 3 SI companies have

developed and used a framework to improve development

productivity

In global environment various open source frameworks(mainly

Spring) are used

In recent years the framework use trend is the combination with

each other which specialized in certain areas

Spring Log4J iBatis JUnit other FWs

What is a Framework

Page l 9

Challenges and Issues eGovFrame Overview

Some barriers were identified in e-Government system

SW framework became a basic tool for e-Government

(71 of e-Government system from 2004 to 2007)

Samsung(SYSTEMiER) LG (DevOn) SK (Jgarnet)

HP(InstantOn enterprise) IBM(Application Framework) MS(NET)

71

29

Page l 10

eGovFrame Overview

Vendo

r A

Vendo

r B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Framework 1 Framework 2 Framework 3

Customer

RFP )

Request for

HW SW

architecture

and application

development

Vendor

A

Vendor

B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Standard Framework

Customer

RFP )

Request for

application

development

lt Development with vendorrsquos frameworksgt lt Development with standard frameworksgt

RFP ) Request for proposal

Challenges and Issues

Page l 11

Development Requirement

Draw optimized functions through a process of ISP)

Take advantage of open sources which are globally used

rarr Exclude certain companiesrsquo technology dependency

Try to exclude functions if a commercial solution provides

Ensure compatibility with public information service sector

infrastructure which is generally applied

Open source code analysis and design documentation for wide

dissemination

In order to be a standard which satisfies most relative parts on

the way of development listen and reflect various opinion which

comes from experts groups

eGovFrame Overview

ISP ) Information Strategy Plan

Page l 12

[Major open sources]

bullBiz transaction Spring amp 22

bullData iBatis Hibernate amp 1

bullDevelopment tool Eclipse amp

3

bullTest tool Junit amp 5

bullDistribution tool Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobile amp 4

Define Open Source Selection Policy

Open Source Evaluation Process

License with no restriction on distribution

and use

Evaluate candidate open sources(175)

Functionalnon-functional requirements

Constraints for integration and interfaces

Physically test candidate open sources(85)

Basic functions

Non-functional requirements(SW Quality)

Best O

pen

So

urce

Sele

ction

Final Result

45 open sources selected

Policy Setting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and

e-Gov projects from 2004 to 2007

54 functions and 229 common

components

Function Design

Extracting OSS for eGovFrame Open Source Policy

Page l 13

Open

Source A

Open

Source B

Open

Source D

- remove duplication

- Adjustment of configuration Open

Source C

Complicated

configuration

Co

mp

licate

d

con

figu

ratio

n

Complicated

configuration

Conflict of functions

ltCombination of open source frameworksgt lteGovFramegt

eGovFrame

Because a open source framework is specific to a particular domain requires a

lot of effort to interface each other to use

Difference - between OSS Framework and eGovFrame

OSS) Open Source Software

eGovFrame Overview

eGovFrame distributes pre-configured development environment

including runtime various configuration files template code development

tools and a comprehensive guide

Page l 14

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2 Biz 4

Design

(Architecture or Pattern Based Source Code

As core biz functions

develop using design

and source code (API)

which provided by

eGovFrame

Reusable asset

defining design and

base source code

which is repeatedly

used in information

system project as

based structure to

make a particular

technology or

application

+

Generally used

reusable

components (ex calendar

notice board etc)

eGovFrame Concept eGovFrame Overview

삭제 고려

Page l 15

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 6

Enhances IT service quality because developers focus only on their

business logic while all the technical issues are handled by SW framework

Architecture policy

Common technical service

Common biz service

SW Framework

(IS development with SW framework) (IS development without SW framework)

SW Framework benefits What is a Framework

Page l 7

Improving productivity with code reusability

Improving maintainability with consistent development approach

As providing proven solutions based on best practice reducing

the technical variation between developers

Framework based development What is a Framework

If a framework tightly restricts the coding style it may inhibit

creative development

In case of excessive configuration management it may make

additional works

In case of abusing framework patterns it rather increases lines of

code

Benefits

Cautions

Page l 8

Status of a Framework(현황)

In case of Korea since the year 2000 large 3 SI companies have

developed and used a framework to improve development

productivity

In global environment various open source frameworks(mainly

Spring) are used

In recent years the framework use trend is the combination with

each other which specialized in certain areas

Spring Log4J iBatis JUnit other FWs

What is a Framework

Page l 9

Challenges and Issues eGovFrame Overview

Some barriers were identified in e-Government system

SW framework became a basic tool for e-Government

(71 of e-Government system from 2004 to 2007)

Samsung(SYSTEMiER) LG (DevOn) SK (Jgarnet)

HP(InstantOn enterprise) IBM(Application Framework) MS(NET)

71

29

Page l 10

eGovFrame Overview

Vendo

r A

Vendo

r B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Framework 1 Framework 2 Framework 3

Customer

RFP )

Request for

HW SW

architecture

and application

development

Vendor

A

Vendor

B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Standard Framework

Customer

RFP )

Request for

application

development

lt Development with vendorrsquos frameworksgt lt Development with standard frameworksgt

RFP ) Request for proposal

Challenges and Issues

Page l 11

Development Requirement

Draw optimized functions through a process of ISP)

Take advantage of open sources which are globally used

rarr Exclude certain companiesrsquo technology dependency

Try to exclude functions if a commercial solution provides

Ensure compatibility with public information service sector

infrastructure which is generally applied

Open source code analysis and design documentation for wide

dissemination

In order to be a standard which satisfies most relative parts on

the way of development listen and reflect various opinion which

comes from experts groups

eGovFrame Overview

ISP ) Information Strategy Plan

Page l 12

[Major open sources]

bullBiz transaction Spring amp 22

bullData iBatis Hibernate amp 1

bullDevelopment tool Eclipse amp

3

bullTest tool Junit amp 5

bullDistribution tool Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobile amp 4

Define Open Source Selection Policy

Open Source Evaluation Process

License with no restriction on distribution

and use

Evaluate candidate open sources(175)

Functionalnon-functional requirements

Constraints for integration and interfaces

Physically test candidate open sources(85)

Basic functions

Non-functional requirements(SW Quality)

Best O

pen

So

urce

Sele

ction

Final Result

45 open sources selected

Policy Setting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and

e-Gov projects from 2004 to 2007

54 functions and 229 common

components

Function Design

Extracting OSS for eGovFrame Open Source Policy

Page l 13

Open

Source A

Open

Source B

Open

Source D

- remove duplication

- Adjustment of configuration Open

Source C

Complicated

configuration

Co

mp

licate

d

con

figu

ratio

n

Complicated

configuration

Conflict of functions

ltCombination of open source frameworksgt lteGovFramegt

eGovFrame

Because a open source framework is specific to a particular domain requires a

lot of effort to interface each other to use

Difference - between OSS Framework and eGovFrame

OSS) Open Source Software

eGovFrame Overview

eGovFrame distributes pre-configured development environment

including runtime various configuration files template code development

tools and a comprehensive guide

Page l 14

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2 Biz 4

Design

(Architecture or Pattern Based Source Code

As core biz functions

develop using design

and source code (API)

which provided by

eGovFrame

Reusable asset

defining design and

base source code

which is repeatedly

used in information

system project as

based structure to

make a particular

technology or

application

+

Generally used

reusable

components (ex calendar

notice board etc)

eGovFrame Concept eGovFrame Overview

삭제 고려

Page l 15

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 7

Improving productivity with code reusability

Improving maintainability with consistent development approach

As providing proven solutions based on best practice reducing

the technical variation between developers

Framework based development What is a Framework

If a framework tightly restricts the coding style it may inhibit

creative development

In case of excessive configuration management it may make

additional works

In case of abusing framework patterns it rather increases lines of

code

Benefits

Cautions

Page l 8

Status of a Framework(현황)

In case of Korea since the year 2000 large 3 SI companies have

developed and used a framework to improve development

productivity

In global environment various open source frameworks(mainly

Spring) are used

In recent years the framework use trend is the combination with

each other which specialized in certain areas

Spring Log4J iBatis JUnit other FWs

What is a Framework

Page l 9

Challenges and Issues eGovFrame Overview

Some barriers were identified in e-Government system

SW framework became a basic tool for e-Government

(71 of e-Government system from 2004 to 2007)

Samsung(SYSTEMiER) LG (DevOn) SK (Jgarnet)

HP(InstantOn enterprise) IBM(Application Framework) MS(NET)

71

29

Page l 10

eGovFrame Overview

Vendo

r A

Vendo

r B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Framework 1 Framework 2 Framework 3

Customer

RFP )

Request for

HW SW

architecture

and application

development

Vendor

A

Vendor

B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Standard Framework

Customer

RFP )

Request for

application

development

lt Development with vendorrsquos frameworksgt lt Development with standard frameworksgt

RFP ) Request for proposal

Challenges and Issues

Page l 11

Development Requirement

Draw optimized functions through a process of ISP)

Take advantage of open sources which are globally used

rarr Exclude certain companiesrsquo technology dependency

Try to exclude functions if a commercial solution provides

Ensure compatibility with public information service sector

infrastructure which is generally applied

Open source code analysis and design documentation for wide

dissemination

In order to be a standard which satisfies most relative parts on

the way of development listen and reflect various opinion which

comes from experts groups

eGovFrame Overview

ISP ) Information Strategy Plan

Page l 12

[Major open sources]

bullBiz transaction Spring amp 22

bullData iBatis Hibernate amp 1

bullDevelopment tool Eclipse amp

3

bullTest tool Junit amp 5

bullDistribution tool Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobile amp 4

Define Open Source Selection Policy

Open Source Evaluation Process

License with no restriction on distribution

and use

Evaluate candidate open sources(175)

Functionalnon-functional requirements

Constraints for integration and interfaces

Physically test candidate open sources(85)

Basic functions

Non-functional requirements(SW Quality)

Best O

pen

So

urce

Sele

ction

Final Result

45 open sources selected

Policy Setting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and

e-Gov projects from 2004 to 2007

54 functions and 229 common

components

Function Design

Extracting OSS for eGovFrame Open Source Policy

Page l 13

Open

Source A

Open

Source B

Open

Source D

- remove duplication

- Adjustment of configuration Open

Source C

Complicated

configuration

Co

mp

licate

d

con

figu

ratio

n

Complicated

configuration

Conflict of functions

ltCombination of open source frameworksgt lteGovFramegt

eGovFrame

Because a open source framework is specific to a particular domain requires a

lot of effort to interface each other to use

Difference - between OSS Framework and eGovFrame

OSS) Open Source Software

eGovFrame Overview

eGovFrame distributes pre-configured development environment

including runtime various configuration files template code development

tools and a comprehensive guide

Page l 14

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2 Biz 4

Design

(Architecture or Pattern Based Source Code

As core biz functions

develop using design

and source code (API)

which provided by

eGovFrame

Reusable asset

defining design and

base source code

which is repeatedly

used in information

system project as

based structure to

make a particular

technology or

application

+

Generally used

reusable

components (ex calendar

notice board etc)

eGovFrame Concept eGovFrame Overview

삭제 고려

Page l 15

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 8

Status of a Framework(현황)

In case of Korea since the year 2000 large 3 SI companies have

developed and used a framework to improve development

productivity

In global environment various open source frameworks(mainly

Spring) are used

In recent years the framework use trend is the combination with

each other which specialized in certain areas

Spring Log4J iBatis JUnit other FWs

What is a Framework

Page l 9

Challenges and Issues eGovFrame Overview

Some barriers were identified in e-Government system

SW framework became a basic tool for e-Government

(71 of e-Government system from 2004 to 2007)

Samsung(SYSTEMiER) LG (DevOn) SK (Jgarnet)

HP(InstantOn enterprise) IBM(Application Framework) MS(NET)

71

29

Page l 10

eGovFrame Overview

Vendo

r A

Vendo

r B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Framework 1 Framework 2 Framework 3

Customer

RFP )

Request for

HW SW

architecture

and application

development

Vendor

A

Vendor

B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Standard Framework

Customer

RFP )

Request for

application

development

lt Development with vendorrsquos frameworksgt lt Development with standard frameworksgt

RFP ) Request for proposal

Challenges and Issues

Page l 11

Development Requirement

Draw optimized functions through a process of ISP)

Take advantage of open sources which are globally used

rarr Exclude certain companiesrsquo technology dependency

Try to exclude functions if a commercial solution provides

Ensure compatibility with public information service sector

infrastructure which is generally applied

Open source code analysis and design documentation for wide

dissemination

In order to be a standard which satisfies most relative parts on

the way of development listen and reflect various opinion which

comes from experts groups

eGovFrame Overview

ISP ) Information Strategy Plan

Page l 12

[Major open sources]

bullBiz transaction Spring amp 22

bullData iBatis Hibernate amp 1

bullDevelopment tool Eclipse amp

3

bullTest tool Junit amp 5

bullDistribution tool Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobile amp 4

Define Open Source Selection Policy

Open Source Evaluation Process

License with no restriction on distribution

and use

Evaluate candidate open sources(175)

Functionalnon-functional requirements

Constraints for integration and interfaces

Physically test candidate open sources(85)

Basic functions

Non-functional requirements(SW Quality)

Best O

pen

So

urce

Sele

ction

Final Result

45 open sources selected

Policy Setting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and

e-Gov projects from 2004 to 2007

54 functions and 229 common

components

Function Design

Extracting OSS for eGovFrame Open Source Policy

Page l 13

Open

Source A

Open

Source B

Open

Source D

- remove duplication

- Adjustment of configuration Open

Source C

Complicated

configuration

Co

mp

licate

d

con

figu

ratio

n

Complicated

configuration

Conflict of functions

ltCombination of open source frameworksgt lteGovFramegt

eGovFrame

Because a open source framework is specific to a particular domain requires a

lot of effort to interface each other to use

Difference - between OSS Framework and eGovFrame

OSS) Open Source Software

eGovFrame Overview

eGovFrame distributes pre-configured development environment

including runtime various configuration files template code development

tools and a comprehensive guide

Page l 14

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2 Biz 4

Design

(Architecture or Pattern Based Source Code

As core biz functions

develop using design

and source code (API)

which provided by

eGovFrame

Reusable asset

defining design and

base source code

which is repeatedly

used in information

system project as

based structure to

make a particular

technology or

application

+

Generally used

reusable

components (ex calendar

notice board etc)

eGovFrame Concept eGovFrame Overview

삭제 고려

Page l 15

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 9

Challenges and Issues eGovFrame Overview

Some barriers were identified in e-Government system

SW framework became a basic tool for e-Government

(71 of e-Government system from 2004 to 2007)

Samsung(SYSTEMiER) LG (DevOn) SK (Jgarnet)

HP(InstantOn enterprise) IBM(Application Framework) MS(NET)

71

29

Page l 10

eGovFrame Overview

Vendo

r A

Vendo

r B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Framework 1 Framework 2 Framework 3

Customer

RFP )

Request for

HW SW

architecture

and application

development

Vendor

A

Vendor

B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Standard Framework

Customer

RFP )

Request for

application

development

lt Development with vendorrsquos frameworksgt lt Development with standard frameworksgt

RFP ) Request for proposal

Challenges and Issues

Page l 11

Development Requirement

Draw optimized functions through a process of ISP)

Take advantage of open sources which are globally used

rarr Exclude certain companiesrsquo technology dependency

Try to exclude functions if a commercial solution provides

Ensure compatibility with public information service sector

infrastructure which is generally applied

Open source code analysis and design documentation for wide

dissemination

In order to be a standard which satisfies most relative parts on

the way of development listen and reflect various opinion which

comes from experts groups

eGovFrame Overview

ISP ) Information Strategy Plan

Page l 12

[Major open sources]

bullBiz transaction Spring amp 22

bullData iBatis Hibernate amp 1

bullDevelopment tool Eclipse amp

3

bullTest tool Junit amp 5

bullDistribution tool Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobile amp 4

Define Open Source Selection Policy

Open Source Evaluation Process

License with no restriction on distribution

and use

Evaluate candidate open sources(175)

Functionalnon-functional requirements

Constraints for integration and interfaces

Physically test candidate open sources(85)

Basic functions

Non-functional requirements(SW Quality)

Best O

pen

So

urce

Sele

ction

Final Result

45 open sources selected

Policy Setting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and

e-Gov projects from 2004 to 2007

54 functions and 229 common

components

Function Design

Extracting OSS for eGovFrame Open Source Policy

Page l 13

Open

Source A

Open

Source B

Open

Source D

- remove duplication

- Adjustment of configuration Open

Source C

Complicated

configuration

Co

mp

licate

d

con

figu

ratio

n

Complicated

configuration

Conflict of functions

ltCombination of open source frameworksgt lteGovFramegt

eGovFrame

Because a open source framework is specific to a particular domain requires a

lot of effort to interface each other to use

Difference - between OSS Framework and eGovFrame

OSS) Open Source Software

eGovFrame Overview

eGovFrame distributes pre-configured development environment

including runtime various configuration files template code development

tools and a comprehensive guide

Page l 14

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2 Biz 4

Design

(Architecture or Pattern Based Source Code

As core biz functions

develop using design

and source code (API)

which provided by

eGovFrame

Reusable asset

defining design and

base source code

which is repeatedly

used in information

system project as

based structure to

make a particular

technology or

application

+

Generally used

reusable

components (ex calendar

notice board etc)

eGovFrame Concept eGovFrame Overview

삭제 고려

Page l 15

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 10

eGovFrame Overview

Vendo

r A

Vendo

r B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Framework 1 Framework 2 Framework 3

Customer

RFP )

Request for

HW SW

architecture

and application

development

Vendor

A

Vendor

B

Vendor

C

Vendor

D

Application 1 Application 2 Application 1

Standard Framework

Customer

RFP )

Request for

application

development

lt Development with vendorrsquos frameworksgt lt Development with standard frameworksgt

RFP ) Request for proposal

Challenges and Issues

Page l 11

Development Requirement

Draw optimized functions through a process of ISP)

Take advantage of open sources which are globally used

rarr Exclude certain companiesrsquo technology dependency

Try to exclude functions if a commercial solution provides

Ensure compatibility with public information service sector

infrastructure which is generally applied

Open source code analysis and design documentation for wide

dissemination

In order to be a standard which satisfies most relative parts on

the way of development listen and reflect various opinion which

comes from experts groups

eGovFrame Overview

ISP ) Information Strategy Plan

Page l 12

[Major open sources]

bullBiz transaction Spring amp 22

bullData iBatis Hibernate amp 1

bullDevelopment tool Eclipse amp

3

bullTest tool Junit amp 5

bullDistribution tool Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobile amp 4

Define Open Source Selection Policy

Open Source Evaluation Process

License with no restriction on distribution

and use

Evaluate candidate open sources(175)

Functionalnon-functional requirements

Constraints for integration and interfaces

Physically test candidate open sources(85)

Basic functions

Non-functional requirements(SW Quality)

Best O

pen

So

urce

Sele

ction

Final Result

45 open sources selected

Policy Setting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and

e-Gov projects from 2004 to 2007

54 functions and 229 common

components

Function Design

Extracting OSS for eGovFrame Open Source Policy

Page l 13

Open

Source A

Open

Source B

Open

Source D

- remove duplication

- Adjustment of configuration Open

Source C

Complicated

configuration

Co

mp

licate

d

con

figu

ratio

n

Complicated

configuration

Conflict of functions

ltCombination of open source frameworksgt lteGovFramegt

eGovFrame

Because a open source framework is specific to a particular domain requires a

lot of effort to interface each other to use

Difference - between OSS Framework and eGovFrame

OSS) Open Source Software

eGovFrame Overview

eGovFrame distributes pre-configured development environment

including runtime various configuration files template code development

tools and a comprehensive guide

Page l 14

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2 Biz 4

Design

(Architecture or Pattern Based Source Code

As core biz functions

develop using design

and source code (API)

which provided by

eGovFrame

Reusable asset

defining design and

base source code

which is repeatedly

used in information

system project as

based structure to

make a particular

technology or

application

+

Generally used

reusable

components (ex calendar

notice board etc)

eGovFrame Concept eGovFrame Overview

삭제 고려

Page l 15

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 11

Development Requirement

Draw optimized functions through a process of ISP)

Take advantage of open sources which are globally used

rarr Exclude certain companiesrsquo technology dependency

Try to exclude functions if a commercial solution provides

Ensure compatibility with public information service sector

infrastructure which is generally applied

Open source code analysis and design documentation for wide

dissemination

In order to be a standard which satisfies most relative parts on

the way of development listen and reflect various opinion which

comes from experts groups

eGovFrame Overview

ISP ) Information Strategy Plan

Page l 12

[Major open sources]

bullBiz transaction Spring amp 22

bullData iBatis Hibernate amp 1

bullDevelopment tool Eclipse amp

3

bullTest tool Junit amp 5

bullDistribution tool Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobile amp 4

Define Open Source Selection Policy

Open Source Evaluation Process

License with no restriction on distribution

and use

Evaluate candidate open sources(175)

Functionalnon-functional requirements

Constraints for integration and interfaces

Physically test candidate open sources(85)

Basic functions

Non-functional requirements(SW Quality)

Best O

pen

So

urce

Sele

ction

Final Result

45 open sources selected

Policy Setting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and

e-Gov projects from 2004 to 2007

54 functions and 229 common

components

Function Design

Extracting OSS for eGovFrame Open Source Policy

Page l 13

Open

Source A

Open

Source B

Open

Source D

- remove duplication

- Adjustment of configuration Open

Source C

Complicated

configuration

Co

mp

licate

d

con

figu

ratio

n

Complicated

configuration

Conflict of functions

ltCombination of open source frameworksgt lteGovFramegt

eGovFrame

Because a open source framework is specific to a particular domain requires a

lot of effort to interface each other to use

Difference - between OSS Framework and eGovFrame

OSS) Open Source Software

eGovFrame Overview

eGovFrame distributes pre-configured development environment

including runtime various configuration files template code development

tools and a comprehensive guide

Page l 14

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2 Biz 4

Design

(Architecture or Pattern Based Source Code

As core biz functions

develop using design

and source code (API)

which provided by

eGovFrame

Reusable asset

defining design and

base source code

which is repeatedly

used in information

system project as

based structure to

make a particular

technology or

application

+

Generally used

reusable

components (ex calendar

notice board etc)

eGovFrame Concept eGovFrame Overview

삭제 고려

Page l 15

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 12

[Major open sources]

bullBiz transaction Spring amp 22

bullData iBatis Hibernate amp 1

bullDevelopment tool Eclipse amp

3

bullTest tool Junit amp 5

bullDistribution tool Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobile amp 4

Define Open Source Selection Policy

Open Source Evaluation Process

License with no restriction on distribution

and use

Evaluate candidate open sources(175)

Functionalnon-functional requirements

Constraints for integration and interfaces

Physically test candidate open sources(85)

Basic functions

Non-functional requirements(SW Quality)

Best O

pen

So

urce

Sele

ction

Final Result

45 open sources selected

Policy Setting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and

e-Gov projects from 2004 to 2007

54 functions and 229 common

components

Function Design

Extracting OSS for eGovFrame Open Source Policy

Page l 13

Open

Source A

Open

Source B

Open

Source D

- remove duplication

- Adjustment of configuration Open

Source C

Complicated

configuration

Co

mp

licate

d

con

figu

ratio

n

Complicated

configuration

Conflict of functions

ltCombination of open source frameworksgt lteGovFramegt

eGovFrame

Because a open source framework is specific to a particular domain requires a

lot of effort to interface each other to use

Difference - between OSS Framework and eGovFrame

OSS) Open Source Software

eGovFrame Overview

eGovFrame distributes pre-configured development environment

including runtime various configuration files template code development

tools and a comprehensive guide

Page l 14

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2 Biz 4

Design

(Architecture or Pattern Based Source Code

As core biz functions

develop using design

and source code (API)

which provided by

eGovFrame

Reusable asset

defining design and

base source code

which is repeatedly

used in information

system project as

based structure to

make a particular

technology or

application

+

Generally used

reusable

components (ex calendar

notice board etc)

eGovFrame Concept eGovFrame Overview

삭제 고려

Page l 15

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 13

Open

Source A

Open

Source B

Open

Source D

- remove duplication

- Adjustment of configuration Open

Source C

Complicated

configuration

Co

mp

licate

d

con

figu

ratio

n

Complicated

configuration

Conflict of functions

ltCombination of open source frameworksgt lteGovFramegt

eGovFrame

Because a open source framework is specific to a particular domain requires a

lot of effort to interface each other to use

Difference - between OSS Framework and eGovFrame

OSS) Open Source Software

eGovFrame Overview

eGovFrame distributes pre-configured development environment

including runtime various configuration files template code development

tools and a comprehensive guide

Page l 14

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2 Biz 4

Design

(Architecture or Pattern Based Source Code

As core biz functions

develop using design

and source code (API)

which provided by

eGovFrame

Reusable asset

defining design and

base source code

which is repeatedly

used in information

system project as

based structure to

make a particular

technology or

application

+

Generally used

reusable

components (ex calendar

notice board etc)

eGovFrame Concept eGovFrame Overview

삭제 고려

Page l 15

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 14

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2 Biz 4

Design

(Architecture or Pattern Based Source Code

As core biz functions

develop using design

and source code (API)

which provided by

eGovFrame

Reusable asset

defining design and

base source code

which is repeatedly

used in information

system project as

based structure to

make a particular

technology or

application

+

Generally used

reusable

components (ex calendar

notice board etc)

eGovFrame Concept eGovFrame Overview

삭제 고려

Page l 15

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 15

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 16

Vision

Objectives

Strategies

Improve service quality of e-Government

amp efficiency of ICT investment

Enhance SMEs

competitiveness

Resolve vendor

dependency

Reflect latest

ICT trends

Increase

Interoperability

Reuse common

features

Standardization

bull Establish SW framework

standards for e-Government

bull Provide reliable technology

infrastructure

Openness

bull Approve the general use of

eGovFrame

bull Open assets to the public amp

encourage participation

Community

bull Propagate eGovFrame

through the regular

training

bull Draw up a policy to vitalize

eGovFrame

Vision of eGovFrame eGovFrame Overview

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 17

Consists of 4 environments namely development runtime operation

management

Composition of eGovFrame eGovFrame Composition

Environment Description

Development

Environment

Provides the implementation(coding debugging) test distribution and

configuration management tools for the effective development of applications

based on the eGovFrame Runtime Environment

Runtime

Environment Provides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based

on eGovFrame

Management

Environment

Provides management tools for maintaining and improving efficiently

eGovFrame

Development

Environment

Operation

Environment

SW Developers

Management

Environment

Framework

Managers

Application

Operators

Runtime

Environment

SW Applications

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 18

Composition of eGovFrame eGovFrame Composition Functionalities

Runtime Environment

Foundation Layer

Development Environment Operation Environment

Implementation

Tool

Test Tool Deployment Tool Conf amp Change Mgt

Tool

Code Generation

Code Inspection

Debug

Editor

Template

Monitoring Tool Administration

Tool

Test Reporting

Unit Test

Build

Deployment

Configuration Mgt

Change Management

Monitoring

Reporting

Server Security

Management

Logging

Management

Resource

Management

Administration

AOP

FTP

Object Pooling XML Manipulation

Cache

Server Security Marshalling

Unmarshalling

Compress

Decompress

ID Generation

Property

Encryption

Decryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration Layer Persistent Layer Biz Logic Layer Presentation Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Batch Test

Batch Operation

Tool

Process

Management

Execution

Management

Scheduling

Management

Result Management

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 19

General programming process

Coding Build

bull Compile

bull Packaging

Build

Deploy WAS restart

Succes

s

Y

N

bull Compile

bull Packaging

Developer PC Development Server

TestOperation Server

Configuratio

n

management bull Code editing

bull Testing

bull Debugging

bull Inspection

Commit Checkout

Adopt eclipse IDE) and it consists of programming support tools from

coding to deployment which is the entire programming process

Composition of eGovFrame

IDE) Integrated Development Environment

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 20

Eclipse IDE Overview

Provide various editors such as DBIO UML ERD etc

Integrated Menu for quick access consisted of eGovFrame support

plug-ins

Composition of eGovFrame

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 21

eGovFrame IDE ndash eGovFrame integrated menu

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Start

- New Batch Template Project

create eGovFrame Batch Project

- New Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

- New DeviceAPI Template Project

create eGovFrame Mobile DeviceAPI Project

- New Mobile Project

create eGovFrame Mobile Web Project

- New Mobile Template Project

create eGovFrame Mobile Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 22

eGovFrame IDE ndash eGovFrame integrated menu (con)

Only activate in eGovFrame Perspective

Integrated menu for quick access to eGovFrame related plug-ins

Composition of eGovFrame

Implementation

- New Batch Job create Batch Job

- New Batch Job Launcher

create Batch Job Launcher

- XMI Based CodeGen

generate code from model (UML XMI)

- Add eGovFrame Common Component create Common Component

- New SQL Map Config create SQL Map Config file

- New SQL Map create SQL Map file

- Show DBIO Search View display DBIO Search View

- Add DeviceAPI Template create Mobile DeviceAPI Template

- Add Mobile Common Component create Common Component for Mobile

- Mobile Web Verification check Mobile Web Standard Veritification

Test

- Batch Job Test run Batch Job for Test

Configuration

- Customize Development Tool optionally install the required functionality

- Server Connection Management

middot Show SVN Repositories View display SVN Repositories View

middot Nexus manage Nexus repository information

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 23

Composition of the runtime environment

7 service groups 38 services compose the runtime Support

MVC DI AOP etc based on Spring framework

Composition of eGovFrame

Runtime Environment

Foundation Layer

AOP

FTP

Object Pooling

XML Manipulation

Cache

Server security Marshalling

Unmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

Layer Persistent Layer Business Logic

Layer

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

i18n

Security

File UploadDownload

UX Layer

UXUI Component

Batch Layer

Batch Core

Batch Execution

Batch Support

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 24

Common Components are a collection of reusable common modules in

developing application for e-Government projects

Current eGov Application Past eGov Application

Application

SW

HW

Application

SW

HW

Application

SW

HW

A System B System C System

Common

functions

Application

SW

Application

SW

Application

SW

Arsquo System Brsquo System Crsquo System

HW HW HW

FW FW FW

C

B

B

C C

B

C

B B

C

B B

FW FW

Reuse

Common

Components

bull Duplicate development of

the same feature in each

project

bull Business dependency in

subsequent projects

bull Limited opportunities for

small business bid

eGovFrame

Define

Common

Components

Framework

Define

Standard

Framework bull Development based on the

standard framework

bull Productivity and quality

improvement by reusing

common components

Apply

Standard

Framework

Management system for

eGovFrame

eGovFrame Center

Management

Common

functions Common

functions

Common components Composition of eGovFrame

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 25

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2007

Refine through expert review user interviews etc

Main principles for the selection of common components

Is it overlapping functions in different sites

Can it be structured to be reusable

Is it possible to standardize features

Select 229 common components such as login notice board

etc

Common Components

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 26

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nica

l Co

mm

on

Co

mp

on

en

ts

(139 C

om

po

nen

ts)

Security 8 Services including real name authentication and authority

management

User authenticationdirectory

service 3 Services including general login and certificate login

User support 51 Services including User Management Counsel

Management Survey Management FAQ and QampA

Collaboration 33 Services including Board Club Management and

Community Management mobile real-time notice etc

System management 25 Services including Common Code Management Menu

Management and Log Management

Integration 6 Services including system access mobile open API etc

StatisticsReporting 5 Services including Article and Connection Statistics

Digital asset management 8 services including knowledge management mobile photo

album etc

Utility Common Components

(90 Components) 90 Services including Calendar and Format Conversion

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 27

Procedure for applying common components

Developer

1) Download eGovFrame

(RuntimeDevelopment etc)

2) Install eGovFrame

(Unzip files and configure properties)

3) Download Common Component

6) Run and test

Common Components

5) Modify compile and build

(Properties or Source code can

be modified)

4) Import them into Development Env

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 28

What is Mobile eGovFrame Mobile eGovFrame

Mobile eGovFrame is based on eGovFrame that adds functionalities of User

eXperience(UX) and mobile components in order to provide mobile web

service

User eXperience(UX) Template-based

code generation

Mobile

Env

Ru

nti

me

En

v

Runtime Env Development Env

eG

ovFra

me

Co

mm

on

Co

mp

on

en

t

Presentation Biz Logic

Persistence Integration

Foundation Dev

En

v Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobil

e

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 29

It needs to build an application subordinated to the specific mobile devices

bullDuplicate development for each devices and OS (Use dependent SDK)

How to develop a mobile service Mobile eGovFrame

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 30

Template-based mobile service Mobile eGovFrame

Template-based mobile services can be implemented by leveraging eGovFramersquos

mobile UX functions(runtime environment) and mobile common components

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 31

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 32

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 33

Open source evaluation process

First evaluation

the license with no restriction on distribution and usage

features that meet the requirements

Second evaluation

satisfy with the quality requirements such as functionality

reliability portability etc

Use the ISO 14598 and SEIPECA to define the OS evaluation

process

Selected 45 open sources such as Spring etc

Open Source Policy

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 34

Criteria GPL LGPL MPL BSD

License

Apache

License

Free access to the source code

Free redistribution

Obtaining the source code

Modifying the source code

Open derived works times times

Combining with the exclusive SW times

Distribution of reciprocity When deploy OSS to a third party derived works can only be distributed under the same license terms as the original

ex) LGPL EPL CPL etc

eGovFrame License Open Source Policy

The eGovernment Standard Framework adopts Apache License Version 20

But other open source SWs used in the Standard Framework retain each

pertinent licensing policy

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 35

Runtime environment OSS (13)

Service group Service name OSS License

Presentation

layer

Ajax Support Ajax Tags 15 Apache License 20

Internationalization Spring 305 Apache License 20

MVC Spring 305 radic Apache License 20

Security Apache Commons Validator

131 Apache License 20

UI Adaptor -

Business Logic

layer

Process Control Web Flow 20 Apache License 20

Exception Handling Spring 305 radic Apache License 20

Persistent

layer

Data Access iBatis SQL Maps 23 radic Apache License 20

DataSource Spring 305 Apache License 20

ORM Hibernate 34 GNU Lesser General Public

License

Transaction Spring 305 Apache License 20

Integration

layer

Naming Service

Support Spring 305 Apache License 20

Integration Service -

Web Service Interface Apache CXF 233 radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 36

Runtime environment OSS(23)

Service

group Service name OSS License

Foundation

Layer

AOP Spring 305 Apache License 20

Cache EHCache 241 Apache License 20

CompressDecompress Apache Commons Compress 11 Apache License 20

EncryptionDecryption Java simplified encryption ( jasypt) 17 radic Apache License 20

Excel Apache POI 32 jXLS 099 radic Apache License 20

File Handling Jakarta Commons VFS 10 radic Apache License 20

File UploadDownload Apache Commons FileUpload 122 Apache License 20

FTP Apache Commons Net 301 Apache License 20

ID Generation -

IoC Container Spring 305 Apache License 20

Logging Log4j 13 Apache License 20

Mail Apache Commons Email 11 Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 37

Runtime environment OSS(33)

Service

group Service name OSS License

Foundation

Layer

Object Pooling Apache Commons Pool 156 Apache License 20

Property Spring 305 radic Apache License 20

Resource Spring 305 Apache License 20

Scheduling Quartz 185 Apache License 20

Server Security Spring Security 204 radic Apache License 20

String Util Jakarta Regexp 15 radic Apache License 20

XML Manipulation Apache Xerces 229 radic

JDOM 11 radic Similar to Apache License

Batch Layer

Batch Core Spring Batch 218 radic Apache License 20

Batch Execution Spring Batch 218 radic Apache License 20

Batch Support Spring Batch 218 radic Apache License 20

UX Layer UIUX Component jQuery Mobile 111 radic MIT License

Open Source Policy

radic Extend functions - Self-Development

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 38

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 326 BSD-style

Debug Eclipse 42 EPL amp EDL

Editor Eclipse 42 EPL amp EDL

Methodology amp

Template

AmaterasUML 132 radic

AmaterasERD 108 radic

EPL 10

Test Tool Test Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment Tool Build

Maven 303

Hudson 1398

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt Tool Configuration Mgt SubVersion 1616 Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 39

System requirements for eGovFrame

Following all three conditions must be met

eGovFrame Adoption Guide

① Java-based web application system(In case of existing WAS)

② JavaEE(J2EE) 5 or JDK15+

③ As a new development system if there is any separation

with legacy system physically or logically

It is possible to apply to the system

improvementadvancement even not based on

eGovFrame but it is not applicable in principle because

it accompanies existing source code change

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 40

Considerations for using eGovFrame

Modification Descriptions

Runtime

Environment

- Not allow any

changes

- Not allow any changes for interoperability

- If there is any enquiry of changes or

improvements it is possible after eGovFrame

Board review for the enquiry

Development

Environment

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

Common

Components

- Allow changes

- Possible new

development

- There is no restrictions on the changes and

additions

- New development must follow eGovFrame

architecture compliance

eGovFrame Adoption Guide

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 41

Technical Support

wwwegovframegokr

Through the eGovFrame Portal (httpengegovframegokr) receives

SR(Service Request) and performs onoffline technical support

Technical Support Process (Management Env)

Project

Manager

Project

Registration

Check

Supported

eGovFrame

Center(NIA)

Support

approval

Service

Request

Project

Manager

Tech Support

Request

Online

Support

On-site

Support

If nessacery

eGovFrame

Center(NIA)

eGovFrame Adoption Guide

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 300 information system

development projects such as national representative portal Yeosu

Expo etc

Through free eGovFrame training courses for SME engineers

propagate eGovFrame technology

At the end of May 2013 more than 3900 engineers completed the

training course

eGovFrame swept three awards in the FutureGov Award 2010 in

Singapore

bull The Government Organization of the Year

bull The Technology Leadership Award

bull The award for Government Transformation of the Year

Establish eGovFrame Open Community(httpopenegovframegokr)

(Aug 2010)

Achievement and Further work Achievement

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 43

Through the open community operation and vitalization

enhance the eGovFrame ecosystem for Self-Motivated

development

Currently more than 6000 domestic developers registered and

participated

Promote the globalization of the eGovFrame

When exports Korean e-government systems use as a standard

development environment etc

Achievement and Further work Further Work

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 44

eGovFrame Center

egovframeniaorkr

Thank you

Page l 45

Open Innovation eGovFrame Overview

삭제 고려

Page l 45

Open Innovation eGovFrame Overview

삭제 고려