01.egovframe training book i

44
eGovFrame Training Book eGovFrame Center 2012

Upload: chuong-nguyen

Post on 19-May-2015

1.069 views

Category:

Documents


2 download

DESCRIPTION

eGovFrame - Framework for e-government Session 01

TRANSCRIPT

Page 1: 01.egovFrame Training Book I

eGovFrame Training Book

eGovFrame Center

2012

Table of contents

Changes in the SW development environment

What is a Framework

eGovFrame overview

Open Source Policy

Common components

Mobile eGovFrame

eGovFrame adoption guide

Achievement and Further work

Page l 2

I

II

III

IV

V

VI

VII

VIII

Page l 3

Background

HW Centric Procedure language OOP Component Framework

Framework(Collection of API))

Service

Component

(Reusable)

Service

Component

Improve scalabilityImprove productivity Easy managementEnsure 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

Definition

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

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

Use status of a framework

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

developed and useed 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 JUnitother

frameworks

What is a Framework

Page l 9

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 10

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 11

A lot of challenges and issues (12) 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 (LAFJ) SK (Jgarnet)

71

29

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

Page l 12

eGovFrame Overview

Vendor

A

Vendor

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

A lot of challenges and issues (22)

Page l 13

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 14

Open Innovation eGovFrame Overview

Page l 15

Open

Source AOpen

Source B

Open

Source D

- remove duplication

- Adjustment of configurationOpen

Source C

Complicated

configuration

Co

mp

licated

con

figuratio

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 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 2: 01.egovFrame Training Book I

Table of contents

Changes in the SW development environment

What is a Framework

eGovFrame overview

Open Source Policy

Common components

Mobile eGovFrame

eGovFrame adoption guide

Achievement and Further work

Page l 2

I

II

III

IV

V

VI

VII

VIII

Page l 3

Background

HW Centric Procedure language OOP Component Framework

Framework(Collection of API))

Service

Component

(Reusable)

Service

Component

Improve scalabilityImprove productivity Easy managementEnsure 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

Definition

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

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

Use status of a framework

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

developed and useed 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 JUnitother

frameworks

What is a Framework

Page l 9

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 10

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 11

A lot of challenges and issues (12) 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 (LAFJ) SK (Jgarnet)

71

29

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

Page l 12

eGovFrame Overview

Vendor

A

Vendor

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

A lot of challenges and issues (22)

Page l 13

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 14

Open Innovation eGovFrame Overview

Page l 15

Open

Source AOpen

Source B

Open

Source D

- remove duplication

- Adjustment of configurationOpen

Source C

Complicated

configuration

Co

mp

licated

con

figuratio

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 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 3: 01.egovFrame Training Book I

Page l 3

Background

HW Centric Procedure language OOP Component Framework

Framework(Collection of API))

Service

Component

(Reusable)

Service

Component

Improve scalabilityImprove productivity Easy managementEnsure 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

Definition

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

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

Use status of a framework

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

developed and useed 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 JUnitother

frameworks

What is a Framework

Page l 9

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 10

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 11

A lot of challenges and issues (12) 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 (LAFJ) SK (Jgarnet)

71

29

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

Page l 12

eGovFrame Overview

Vendor

A

Vendor

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

A lot of challenges and issues (22)

Page l 13

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 14

Open Innovation eGovFrame Overview

Page l 15

Open

Source AOpen

Source B

Open

Source D

- remove duplication

- Adjustment of configurationOpen

Source C

Complicated

configuration

Co

mp

licated

con

figuratio

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 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 4: 01.egovFrame Training Book I

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

Definition

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

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

Use status of a framework

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

developed and useed 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 JUnitother

frameworks

What is a Framework

Page l 9

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 10

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 11

A lot of challenges and issues (12) 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 (LAFJ) SK (Jgarnet)

71

29

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

Page l 12

eGovFrame Overview

Vendor

A

Vendor

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

A lot of challenges and issues (22)

Page l 13

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 14

Open Innovation eGovFrame Overview

Page l 15

Open

Source AOpen

Source B

Open

Source D

- remove duplication

- Adjustment of configurationOpen

Source C

Complicated

configuration

Co

mp

licated

con

figuratio

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 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 5: 01.egovFrame Training Book I

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

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

Use status of a framework

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

developed and useed 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 JUnitother

frameworks

What is a Framework

Page l 9

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 10

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 11

A lot of challenges and issues (12) 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 (LAFJ) SK (Jgarnet)

71

29

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

Page l 12

eGovFrame Overview

Vendor

A

Vendor

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

A lot of challenges and issues (22)

Page l 13

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 14

Open Innovation eGovFrame Overview

Page l 15

Open

Source AOpen

Source B

Open

Source D

- remove duplication

- Adjustment of configurationOpen

Source C

Complicated

configuration

Co

mp

licated

con

figuratio

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 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 6: 01.egovFrame Training Book I

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

Use status of a framework

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

developed and useed 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 JUnitother

frameworks

What is a Framework

Page l 9

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 10

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 11

A lot of challenges and issues (12) 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 (LAFJ) SK (Jgarnet)

71

29

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

Page l 12

eGovFrame Overview

Vendor

A

Vendor

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

A lot of challenges and issues (22)

Page l 13

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 14

Open Innovation eGovFrame Overview

Page l 15

Open

Source AOpen

Source B

Open

Source D

- remove duplication

- Adjustment of configurationOpen

Source C

Complicated

configuration

Co

mp

licated

con

figuratio

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 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 7: 01.egovFrame Training Book I

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

Use status of a framework

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

developed and useed 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 JUnitother

frameworks

What is a Framework

Page l 9

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 10

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 11

A lot of challenges and issues (12) 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 (LAFJ) SK (Jgarnet)

71

29

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

Page l 12

eGovFrame Overview

Vendor

A

Vendor

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

A lot of challenges and issues (22)

Page l 13

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 14

Open Innovation eGovFrame Overview

Page l 15

Open

Source AOpen

Source B

Open

Source D

- remove duplication

- Adjustment of configurationOpen

Source C

Complicated

configuration

Co

mp

licated

con

figuratio

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 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 8: 01.egovFrame Training Book I

Page l 8

Use status of a framework

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

developed and useed 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 JUnitother

frameworks

What is a Framework

Page l 9

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 10

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 11

A lot of challenges and issues (12) 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 (LAFJ) SK (Jgarnet)

71

29

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

Page l 12

eGovFrame Overview

Vendor

A

Vendor

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

A lot of challenges and issues (22)

Page l 13

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 14

Open Innovation eGovFrame Overview

Page l 15

Open

Source AOpen

Source B

Open

Source D

- remove duplication

- Adjustment of configurationOpen

Source C

Complicated

configuration

Co

mp

licated

con

figuratio

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 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 9: 01.egovFrame Training Book I

Page l 9

eGovFrame

Pre-implemented basic functions standardized for e-Government system

development and operation

What is eGovFrame eGovFrame Overview

Page l 10

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 11

A lot of challenges and issues (12) 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 (LAFJ) SK (Jgarnet)

71

29

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

Page l 12

eGovFrame Overview

Vendor

A

Vendor

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

A lot of challenges and issues (22)

Page l 13

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 14

Open Innovation eGovFrame Overview

Page l 15

Open

Source AOpen

Source B

Open

Source D

- remove duplication

- Adjustment of configurationOpen

Source C

Complicated

configuration

Co

mp

licated

con

figuratio

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 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 10: 01.egovFrame Training Book I

Page l 10

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 11

A lot of challenges and issues (12) 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 (LAFJ) SK (Jgarnet)

71

29

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

Page l 12

eGovFrame Overview

Vendor

A

Vendor

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

A lot of challenges and issues (22)

Page l 13

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 14

Open Innovation eGovFrame Overview

Page l 15

Open

Source AOpen

Source B

Open

Source D

- remove duplication

- Adjustment of configurationOpen

Source C

Complicated

configuration

Co

mp

licated

con

figuratio

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 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 11: 01.egovFrame Training Book I

Page l 11

A lot of challenges and issues (12) 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 (LAFJ) SK (Jgarnet)

71

29

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

Page l 12

eGovFrame Overview

Vendor

A

Vendor

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

A lot of challenges and issues (22)

Page l 13

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 14

Open Innovation eGovFrame Overview

Page l 15

Open

Source AOpen

Source B

Open

Source D

- remove duplication

- Adjustment of configurationOpen

Source C

Complicated

configuration

Co

mp

licated

con

figuratio

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 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 12: 01.egovFrame Training Book I

Page l 12

eGovFrame Overview

Vendor

A

Vendor

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

A lot of challenges and issues (22)

Page l 13

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 14

Open Innovation eGovFrame Overview

Page l 15

Open

Source AOpen

Source B

Open

Source D

- remove duplication

- Adjustment of configurationOpen

Source C

Complicated

configuration

Co

mp

licated

con

figuratio

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 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 13: 01.egovFrame Training Book I

Page l 13

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 14

Open Innovation eGovFrame Overview

Page l 15

Open

Source AOpen

Source B

Open

Source D

- remove duplication

- Adjustment of configurationOpen

Source C

Complicated

configuration

Co

mp

licated

con

figuratio

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 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 14: 01.egovFrame Training Book I

Page l 14

Open Innovation eGovFrame Overview

Page l 15

Open

Source AOpen

Source B

Open

Source D

- remove duplication

- Adjustment of configurationOpen

Source C

Complicated

configuration

Co

mp

licated

con

figuratio

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 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 15: 01.egovFrame Training Book I

Page l 15

Open

Source AOpen

Source B

Open

Source D

- remove duplication

- Adjustment of configurationOpen

Source C

Complicated

configuration

Co

mp

licated

con

figuratio

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 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 16: 01.egovFrame Training Book I

Page l 16

[Major open sources]

bullBiz transaction

Spring amp 22

bullData

iBatis Hibernate amp1

bullDevelopment tool

Eclipse amp 3

bullTest tool

Junit amp 5

bullDistribution tool

Maven amp 1

bullConfiguration Management

tool Subversion amp 1

bullMobile UX

JQueryMobileamp4

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 S

election

Final Result

45 open sources selected

PolicySetting

Logical

Test

Physical

Test

Define basic functions and architecture

Analyze 3 big vendorrsquos frameworks and e-

Gov projects from 2004 to 2011

54 functions and 229 common components

FunctionDesign

Extracting OSS for eGovFrame eGovFrame Overview

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 17: 01.egovFrame Training Book I

Page l 17

Information System

HW

Based SW

OS

DB

Middleware

Application

eGovFrame

Biz1 Biz2 Biz3

Common

Biz 1

Common

Biz 2Biz 4

Design

(Architecture or PatternBased 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 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 18: 01.egovFrame Training Book I

Page l 18

Consists of 4 environments namely development runtime operation management

Composition of eGovFrameeGovFrame 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

EnvironmentProvides common runtime modules for running the SW applications

Operation

environment

Provides operational tools for monitoring and operating SW application based on

eGovFrame

Management

EnvironmentProvides 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 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 19: 01.egovFrame Training Book I

Page l 19

Composition of eGovFrameeGovFrame 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

Methodology amp 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

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration LayerPersistent LayerBusiness 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

Internationalization

Security

Management

Environment

Operation

Management Tool

Status Monitoring

Development

Management Tool

Version Management

Issue Tracking

File UploadDownload

UX Layer

UXUI Controller

Component

HTML5

JavaScript Module App

Framework

CSS

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 20: 01.egovFrame Training Book I

Page l 20

General programming process

Coding Build

bull Compile

bull Packaging

Build

DeployWAS restart

Succe

ss

Y

N

bull Compile

bull Packaging

Developer PC Development Server

Operation Server

Configuration

managementbull 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 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 21: 01.egovFrame Training Book I

Page l 21

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 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 22: 01.egovFrame Training Book I

Page l 22

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 Core Project

create eGovFrame Core Project

- New Web Project

create eGovFrame Web Project

- New Template Project create eGovFrame Template Project

Analysis

- New Usecase Diagram create Usecase Diagram

Design

- New ER Diagram create ER Diagram

- New Class Diagram create Class Diagram

Implementation

- 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

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

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 23: 01.egovFrame Training Book I

Page l 23

Composition of the runtime environment

6 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

Hot-Deploy

MarshallingUnmarshalling

CompressDecompress

ID Generation

Property

EncryptionDecryption

IoC Container

Resource

Excel

Logging

Scheduling

File Handling

Mail

String Util

Integration

LayerPersistent LayerBusiness Logic

Layer

TBD

TBD

DataSource

Transaction

Biz Process

Management

Exception

Handling

Message Service

Naming Service

Web Service

Data Access

ORM

Presentation Layer

Ajax Support

MVC

UI Adaptor

Internationalization

Security

File UploadDownload

UX Layer

UXUI Controller Component

HTML5

JavaScript Module App Framework

CSS3

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 24: 01.egovFrame Training Book I

Page l 24

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 40 open sources such as Spring etc

Open Source Policy

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 25: 01.egovFrame Training Book I

Page l 25

Criteria GPL LGPL MPLBSD

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 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 26: 01.egovFrame Training Book I

Page l 26

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

SecurityApache Commons

Validator 131Apache 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 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 27: 01.egovFrame Training Book I

Page l 27

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 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 28: 01.egovFrame Training Book I

Page l 28

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 ManipulationApache Xerces 229 radic

JDOM 11 radicSimilar to Apache License

Open Source Policy

radic Extend functions - Self-Development

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 29: 01.egovFrame Training Book I

Page l 29

Development environment OSS

Service group Service name OSS License

Implementation Tool

Code Generation - -

Code Inspection PMD 42 BSD-style

Debug Eclipse 34 EPL amp EDL

Editor Eclipse 34 EPL amp EDL

Methodology amp TemplateAmaterasUML 105 radic

AmaterasERD 105 radic

EPL 10

Test ToolTest Reporting

Ant

EMMA

Apache License 20

CPL

Unit Test JUnit EasyMock DbUnit CPL MIT LGPL 21

Deployment ToolBuild

Maven 21

Hudson

Apache License 20

MIT

Deployment - -

Conf amp Change Mgt ToolConfiguration Mgt SubVersion Apache License 20

Change Mgt jTrac radic Apache License 20

Open Source Policy

radic Extend functions - Self-Development

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 30: 01.egovFrame Training Book I

Page l 30

Common Components are a collection of reusable common modules in developing

application for e-Government projects

Current eGov ApplicationPast 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

BB

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

Frameworkbull 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

functionsCommon

functions

Common components Common Components

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 31: 01.egovFrame Training Book I

Page l 31

How to draw common components

Analyze detailed features of the actual SW development project

Evaluate 67 e-Gov projects from 2004 to 2011

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 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 32: 01.egovFrame Training Book I

Page l 32

Common Components of eGovFrame

229 Common Components of the reusable software modules

Common Components

Categories Components

Tech

nical C

om

mo

nC

om

po

nen

ts

(13

9 C

om

po

nen

ts)

Security8 Services including real name authentication and authority

management

User authenticationdirectory

service3 Services including general login and certificate login

User support51 Services including User Management Counsel Management

Survey Management FAQ and QampA

Collaboration33 Services including Board Club Management and Community

Management mobile real-time notice etc

System management25 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 management8 services including knowledge management mobile photo album

etc

Utility Common Components

(90 Components)90 Services including Calendar and Format Conversion

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 33: 01.egovFrame Training Book I

Page l 33

Procedure for applying common components

개발자

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 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 34: 01.egovFrame Training Book I

Page l 34

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

eGo

vF

ram

e

Co

mm

on

Co

mp

on

ent

Presentation Biz Logic

Persistence Integration

Foundation Dev

E

nv Implementation

Test

Deployment

Change Mgt

10 new mobile component

Convert 30 web common

components to mobile

Technical components

Utility components

Mobile

Web

Mobile Web

Runtime Environment

Mobile Web

Development Environment

Mobile Web

Common Component

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 35: 01.egovFrame Training Book I

Page l 35

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 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 36: 01.egovFrame Training Book I

Page l 36

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 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 37: 01.egovFrame Training Book I

Page l 37

Case Study Mobile eGovFrame

Gyeongsang Province Mobile Homepage

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 38: 01.egovFrame Training Book I

Page l 38

Case Study Mobile eGovFrame

National Tax Service - Electronic tax invoice

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 39: 01.egovFrame Training Book I

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 40: 01.egovFrame Training Book I

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 41: 01.egovFrame Training Book I

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 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 42: 01.egovFrame Training Book I

Page l 42

After opening the eGovFrame in June 2009 download 100000 in the

shortest period (May 2011)

Applied technical support to more than 293 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 Sep 2012 more than 3204 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 workAchievement

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 43: 01.egovFrame Training Book I

Page l 43

Carry out further development of a batch function for

processing large amounts of data (Expect in 2012)

Through the open community operation and

vitalization enhance the eGovFrame ecosystem for

Self-Motivated development Currently more than 2500 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 workFurther Work

Page l 44

Page 44: 01.egovFrame Training Book I

Page l 44