Download - 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
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
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
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
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
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 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
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
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 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
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
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 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
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
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 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
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
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 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
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
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 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
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
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 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
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
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 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
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
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 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
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
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 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
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
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 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
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
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 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
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
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 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
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
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 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
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
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 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
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
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 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
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
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 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
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
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 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
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 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
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 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
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 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
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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 l 44