Professional Documents
Culture Documents
US 8,601,433 B2
Dec. 3, 2013
8,171,470 B2 *
8,176,472 B2 >I<
717/174
8,196,093 B2
PLATFORM
(75) Inventors: Kyoung-ho Son, Suwon-si (KR); Ja-gun KWon, Seoul (KR)
JP
(Continued)
FOREIGN PATENT DOCUMENTS
2005-530238 A 10/2005
JP
2008-003841 A
l/2008
Suwon-s1 (KR)
(*) Notice: Subject to any disclaimer, the term of this patent is extended or adjusted under 35 U_S_C_ 1540;) by 1273 days
(Continued)
OTHER PUBLICATIONS
(Continued)
Primary Examiner * Christopher Shin
US 2009/0210858 A1
(30)
(57)
Foreign Application Priority Data
ABSTRACT
_ _
(200601)
describing functions of one or more components of software according to design information of a software platform and a
(200601)
build script having con?guration variables according to a type of the software and building the generated template code;
Changing the Con?guration Values of the eeh?guratieh Van' ables provided in the virtual software platform for a combi
nation Ofhe Components; and Validating a Consistency Ofhe
software platform according to a result of executing the vir tual software platform based on the changed con?guration variables. According to the method and apparatus, by validat
ing in advance whether it is possible to construct a normal
6,609,158 B1
(10* COMPONENT MODEL MANAGER \ I11~I COMPONENT HANDLER I I INTERFACE HANDLER I-~I12 t13~<I cONNEcTION HANDLER I I VARIABILITY HANDLER I-t14
I15__I
120.,
1ao~I
140,
US 8,601,433 B2
Page 2
(56) References Cited W0 WO 2007/001108 A1 1/2007
OTHER PUBLICATIONS
Jernej Kovse et a1. VS-Gen: A Case Study of a Product Line for
Versioning Systems, Generative Programming and Component
10/2002 Lee et a1
3/ 2003 Barturen et al. ............ .. 717/177
588283312113 2}
2005/0005261 A1*
a .
2007/0150855 A1
2007/0157171 A1 *
2007/0266378 A1 *
6/2007 Jeong
7/2007 Eastham et al. ,,,,,,,,,,,, ,, 717/121
11/2007 Fukuda ........ .. . 717/139
~ 717/121
Park et al., Proceedings of the 11th International Software Product Line Conference, Sep. 10, 2007, pp. 181-192.
KR
KR
KR
W0
l0_2004_009794l
l0_2007_0000732
10-2008-0076059
WO 01/48625
11/2004
1/2007
8/2008
7/2001
W0
W0 02/073379
9/2002
* cited by examiner
US. Patent
Dec. 3, 2013
Sheet 1 0f 17
US 8,601,433 B2
FIG. 1
I00
(0%
\
w~I12
MARIARILITY HANDLER
v-II4
115__
120w
121~-
130-
140w
141w
DAL PROD
IDATION U '
_142
US. Patent
Dec. 3, 2013
Sheet 2 or 17
US 8,601,433 B2
FIG. 2
I START )
GENERATE TEMPLATE CODE DESCRIBING FUNCTION OF COMPONENT ACCORDING TO DESIGN INFORMATION OF SOFTWARE PLATFORM
I
GENERATE BUILD SCRIPT PERFORMING BUILDING OF GENERATED TEMPLATE CODE
END
- 220
FIG. 3
I START ,
GENERATE VIRTUAL SOFTWARE PLATFORM HAVING TEMPLATE CODE DESCRIBING FUNCTIONS OF COMPONENTS AND BUILD SCRIPT
I
CHANGE CONFIGURATION VALUES OF CONFIGURATION VARIABLES DISPOSED IN VIRTUAL SOFTWARE PLATFORM
320
I
VALIDATE CONSISTENCY OF SOFTWARE PLATFORM
ACCORDING EXECUTION RESULT OF VIRTUAL SOFTWARE PLATFORM
w 330
END
US. Patent
Dec. 3, 2013
Sheet 9 0f 17
US 8,601,433 B2
FIG. 10
Makefile.
COnfig_decision
include
$1010
config_option
include
Makefile.
Makefile.
(1020
config_rnapping
include
@1030
con?g_path
include
Makefile
Makefile.
""1040
r1050
US. Patent
Dec. 3, 2013
Sheet 10 0f 17
US 8,601,433 B2
om:
c(omEu52|:=139.w8xK
.0; H
FEo .50 i r -ME
\ (
m5aQKH9:DQE
\ J
\ J
w35 miiHogaml
US. Patent
Dec. 3, 2013
Sheet 14 0f 17
US 8,601,433 B2
FIG. 15
1510
[include Makefileconfigpam
Kalli Come_Leve11_O1 \ @eehe "Buld Comp_Leve|1_O1 Completed!"
15'
1
)
N
fComp_Level1_O1 I
@echo "### Build Com D_Leve|1_01 ##1##" make f Makefi1e.Com|o_Leve|2_01
151 (A)
clean-
@echo "### Clean Com|e_Level1_O1 ###" make 1Makefile.Comp_Level2_O1 clean make 1 Make1i|e.Comp_Level2_O2 clean
make 1 Make1i|e.Comp_Level2_O3 clean make 1 11ake1i|e.Comp_Level2_O4 clean
US. Patent
Dec. 3, 2013
Sheet 15 0f 17
US 8,601,433 B2
FIG. 16
1520
roncluoleMake?laconfigjath
1521 D
rcleani
1524
US 8,601,433 B2
1
METHOD AND APPARATUS FOR GENERATING VIRTUAL SOFTWARE PLATFORM BASED ON COMPONENT MODEL AND VALIDATING SOFTWARE PLATFORM ARCHITECTURE USING THE PLATFORM CROSS-REFERENCE TO RELATED PATENT APPLICATION
2
softWare code are performed along With the correction of
errors, and the code is revised to re?ect the corrections. In this Way, the code is gradually developed into a stabiliZed soft Ware product. As the siZe of softWare code has recently become huge, the operational limitations of the test method according to the
conventional development process have been recogniZed and technologies and methods for more effective testing have
1. Field of the Invention Aspects of the present invention relate to a method of generating a virtual softWare platform based on a component model, and a method of validating a softWare platform archi tecture using the platform, and more particularly, to a method
stability of the platform itself. HoWever, the limitation of the conventional technology in the development of CE softWare
is that it is dif?cult to precisely validate the design of a
and apparatus by Which in order to validate the platform architecture of a softWare product being developed based on a component model, a virtual platform is generated before
grated.
A platform in softWare development should not only indi vidually describe the structure of each softWare product itself,
but also be able to express a structure integrating a base
direct internal implementation of a code, and by using the virtual platform, integrity and reliability of component model
design information can be validated. 2. Description of the Related Art In softWare development, a design stage is a process in
30
platform and all variable elements. For this, there is a need for a component model in Which such concepts as variability,
component, dependency, and con?guration can be effectively combined. Accordingly, based on this component model,
validation of a design structure of a platform together With
plexity, the desire for securing better speed and accuracy through an automated system in this design stage increases.
In the ?eld of embedded softWare (such as consumer elec
Aspects of the present invention provide a method and apparatus to implement automation With a softWare platform architecture through a systematic component model and to
implementation is completed, testing costs rapidly increase. Accordingly, the present concept of testing is evolving to
include validating softWare in advance in a requirement
are achieved by providing a method of generating a virtual softWare platform based on a component model, the method
A softWare product line (SPL) system to effectively sup port development of multiple products based on reusability
and variability in CE softWare development uses a method
capable of performing automation of validation of a platform itself and implementation based on design information. In general, softWare is developed as a completed product
script having con?guration variables according to a type of the softWare and building the generated template code. According to another aspect of the present invention, the generating of the template code may include: generating a directory structure indicating an inclusion relationship
betWeen an upper-level component and a loWer-level compo
nent from among the one or more components; applying a
55
65
According to another aspect of the present invention, the generating of the build script may include: de?ning a type variable to select the type of the softWare; describing a loWer level con?guration variable linked to the type variable; speci fying a con?guration value according to a mapping relation