CN102597952A - 软件库重新构建装置和方法、以及利用该装置和方法的导航装置 - Google Patents
软件库重新构建装置和方法、以及利用该装置和方法的导航装置 Download PDFInfo
- Publication number
- CN102597952A CN102597952A CN2009801622998A CN200980162299A CN102597952A CN 102597952 A CN102597952 A CN 102597952A CN 2009801622998 A CN2009801622998 A CN 2009801622998A CN 200980162299 A CN200980162299 A CN 200980162299A CN 102597952 A CN102597952 A CN 102597952A
- Authority
- CN
- China
- Prior art keywords
- program
- function
- software library
- elements
- executing unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 42
- 230000006870 function Effects 0.000 claims description 279
- 238000012545 processing Methods 0.000 claims description 41
- 239000000284 extract Substances 0.000 claims description 40
- 230000015572 biosynthetic process Effects 0.000 claims description 2
- 230000008676 import Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 13
- 230000005055 memory storage Effects 0.000 description 12
- 238000012937 correction Methods 0.000 description 8
- 238000005457 optimization Methods 0.000 description 8
- 230000003750 conditioning effect Effects 0.000 description 7
- 238000000605 extraction Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 3
- 238000007619 statistical method Methods 0.000 description 3
- 238000000151 deposition Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000011002 quantification Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/366—Software debugging using diagnostics
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
Abstract
本发明的目的在于提供一种软件库重新构建装置和方法、以及利用该装置和方法的导航装置。从构成通用软件库(2a)的程序要素中,提取执行功能时使用的程序要素,对提取出的程序要素的错误进行验证,对验证为无错误的程序要素所构成的程序进行优化,利用进行了优化的程序的程序要素,重新构建定制有所执行的功能的软件库(2b)。
Description
技术领域
本发明涉及从已有的软件库中提取程序要素以重新构建定制有所希望的功能的软件库的软件库重新构建装置和方法、以及利用该装置和方法的导航装置。
背景技术
在专利文献1中,揭示了一种系统,该系统通过利用分层状封装化(hierarchical encapsulation)的概念,将开发者所制成的对象/容器(container)的分层结构中的外部依赖性自动分离,以使得对象/容器以及它们与其他容器环境所包含的对象间的关联变弱,可提高再利用性。
此外,在专利文献2所记载的系统中,从多个系统控制所利用的多个控制包(bundle)中,提取共同利用的功能部,并将多个控制包重新构成为一个新控制包,以使得该共同利用的功能部不重复。
若应用专利文献1的技术,则可使通用软件库的程序要素间的关联变弱,以将程序要素自由地进行组合。
然而,开发者需要提取出实现所希望的功能的程序要素,并将它们进行组合。
因而,重新构建软件库的操作繁杂,并且,还需要与各程序要素相关的知识,难以应用到利用软件库的各种设备,没有通用性。
此外,若利用专利文献2的技术,则虽然可从多个软件库中自动提取出共同的功能的程序要素,但无法提取出利用者所希望的功能的程序要素。
因此,无法例如一边考虑执行速度或存储器利用效率、一边重新构建定制有所希望的功能的软件库。
本发明是为了解决上述问题而完成的,其目的在于获得一种可从通用软件库中自动提取程序要素以重新构建定制有所希望的功能的软件库的软件库重新构建装置和方法、以及利用该装置和方法的导航装置。
现有技术文献
专利文献
专利文献1:日本专利特表2000-505919号公报
专利文献2:日本专利特开2004-227240号公报
发明内容
本发明所涉及的软件库重新构建装置包括:功能执行部,该功能执行部利用与多个功能对应的通用软件库,执行多个功能中所指示的功能;程序提取部,该程序提取部从构成通用软件库的程序要素中,提取由功能执行部执行功能时使用的程序要素;程序验证部,该程序验证部对由程序提取部提取出的程序要素的错误进行验证;程序优化部,该程序优化部对由程序验证部验证为无错误的程序要素所构成的程序进行优化;以及程序重新构建部,该程序重新构建部利用由程序优化部进行了优化的程序的程序要素,构建定制有由功能执行部执行的功能的软件库。
根据本发明,功能执行部利用与多个功能对应的通用软件库,执行多个功能中所指示的功能,程序提取部从构成通用软件库的程序要素中,提取执行上述功能时使用的程序要素,程序验证部对由程序提取部提取出的程序要素的错误进行验证,程序优化部对由程序验证部验证为无错误的程序要素所构成的程序进行优化,程序重新构建部利用由程序优化部进行了优化的程序的程序要素,构建定制有由功能执行部执行的功能的软件库。
通过采用这种结构,由于从通用软件库中自动提取程序要素,重新构建定制有所希望的功能的软件库,因此,可力图提高执行速度、存储器利用效率。
附图说明
图1是表示本发明的实施方式1所涉及的软件库重新构建装置的结构的框图。
图2是表示通用软件库的一个示例的图。
图3是表示应用了本发明所涉及的软件库重新构建装置的信息处理装置的硬件结构的框图。
图4是表示实施方式1的软件库重新构建装置的动作流程的流程图。
图5是表示图2的通用软件库中使用的程序要素的图。
图6是表示功能定制软件库的一个示例的图。
图7是表示软件开发环境下的软件库重新构建处理的流程的流程图。
图8是表示功能选择用的向导画面的一个示例的图。
图9是表示执行条件设定用的向导画面的一个示例的图。
图10是表示条件设定用的向导画面的一个示例的图。
图11是表示执行结果确认用的向导画面的一个示例的图。
图12是表示失败原因提示用的向导画面的一个示例的图。
图13是表示提取出的程序要素的显示画面(例1)的图。
图14是表示提取出的程序要素的显示画面(例2)的图。
图15是表示提取出的程序要素的显示画面(例3)的图。
图16是表示源代码错误确认用的向导画面(无错误的情况)的图。
图17是表示源代码错误确认用的向导画面(有错误的情况)的图。
图18是表示本发明的实施方式2所涉及的导航装置的结构的框图。
图19是表示本发明的实施方式3所涉及的导航装置的结构的框图。
具体实施方式
下面,为了更详细地说明本发明,根据附图对用于实施本发明的方式进行说明。
实施方式1
图1是表示本发明的实施方式1所涉及的软件库重新构建装置的结构的框图。图1中,实施方式1所涉及的软件库重新构建装置1是利用从通用软件库2a中提取出的程序要素来重新构建定制有所希望的功能的功能定制软件库2b的装置,包括功能执行部3及软件库重新构建功能部4。另外,所谓程序要素,是指在该程序中使用的函数及其属性、对它们进行分类的种类、程序包、方法等。
通用软件库2a中,与利用规定功能的各种应用软件相对应,登录有实现上述规定功能的各种程序要素。
例如,图2所示的通用软件库2a是实现导航处理中的路径搜索功能的通用软件库。像图2那样,与路径搜索用有关的对象具有由实现路径搜索中的各种功能的关联对象(程序要素)构成的分层结构。
此处,在某一种类的导航软件中,当执行路径搜索功能时,例如,执行关联对象1、4以及关联对象1-1、1-3、4-2,上述关联对象1-1、1-3、4-2实现与上述关联对象1、4相关联的功能。
另一方面,在其他种类的导航软件中,当执行路径搜索功能时,执行与上述关联对象不同的关联对象1、4以及关联对象1-2、4-1、4-3,上述关联对象1-2、4-1、4-3实现与上述关联对象1、4相关联的功能。
这样,为了使通用软件库2a对多种应用软件具有通用性,除了登录有由某一种类的应用软件执行的程序要素群之外,还登录有由其他种类的应用软件执行的程序要素。
此外,在通用软件库2a中,需要在各层选出实现规定功能的关联对象(程序要素)并加以执行。
例如,在为了实现图2所示的路径搜索功能而执行关联对象1、4以及实现与它们相关联的功能的关联对象1-1、1-3、4-2的情况下,进行如下处理:在通用软件库2a的第1层选出关联对象1、4,在第2层选出关联对象1-2、4-1、4-3。
因此,通用软件库2a中,因存放有实现规定功能的各种程序要素,从而存储器的利用效率相应变差,并且,由于需要在各层进行选出所希望的程序要素的处理,因此,相应执行速度的提高是有限的。
功能定制软件库2b是仅由定制有规定功能的程序要素重新构建的软件库。例如,在应用了软件库重新构建装置1的导航装置在路径搜索中执行图2所示的关联对象1、4以及实现与它们相关联的功能的关联对象1-1、1-3、4-2的情况下,功能定制软件库2b仅由关联对象1、4、1-1、1-3、4-2重新构建。
功能执行部3是如下结构部:若由应用了软件库重新构建装置1的信息处理装置来执行利用规定功能的应用软件,则执行通用软件库2a所存放的程序要素中的、实现上述规定功能的程序要素,或者,执行由软件库重新构建功能部4重新构建的功能定制软件库2b的程序要素。例如,通过上述信息处理装置执行导航软件中实现各功能的程序模块来实现。
软件库重新构建功能部4是利用从通用软件库2a获取的程序要素、来重新构建定制有所希望的功能的功能定制软件库2b的结构部,包括程序提取部5、程序验证部6、程序优化部7、及程序重新构建部8。
程序提取部5是在功能执行部3执行了规定功能时、从通用软件库2a所存放的程序要素中提取功能执行部3使用过的程序要素的结构部。例如,程序提取部5在功能执行部3执行了某一功能时,监视并预先存储由功能执行部3使用过的通用软件库2a的关联对象(程序要素)的层中的通路,从通用软件库2a中提取位于该通路上的关联对象。程序提取部5通过监视存放有执行了规定功能时使用过的处理数据的程序要素、或基于上述处理数据进行执行处理时使用过的程序要素,以从执行了规定功能时使用过的通用软件库2a中实施提取由功能执行部3使用过的关联对象。
程序验证部6是对由程序提取部5提取出的程序要素及程序要素彼此之间的关联性进行验证的结构部。例如,验证提取出的程序要素的源代码中有没有错误,或对程序要素彼此之间进行比较,以确定相同的程序逻辑。提取出的程序要素的验证是基于上述提取出的程序要素是否符合规定该程序要素的标准的程序语言标准来进行判断的。例如,在混入有不正确的代码的情况下,判断为错误代码。此外,关于由下述的程序优化部7执行的程序优化,将对推荐的程序记述方式规定的标准和上述程序要素进行对照,例如从程序要素的双重定义、提高可读性之类的程序管理方面来实施验证。
程序优化部7是如下结构部:基于程序验证部6的验证结果,从提高执行速度、处理的高效化等观点,对由程序提取部5提取出的程序要素的关联性、处理过程进行优化。从程序要素的双重定义和提高可读性之类的程序要素管理方面、以及执行速度和存储器使用量等性能方面,来实施该优化处理。从程序要素管理方面进行的优化,可以基于由上述程序验证部6实施的程序管理方面的验证结果,来半自动地执行程序要素的优化。另一方面,从性能方面进行的优化,由于是基于人的判断的,因此,经由人的要素来实施,例如,在不推荐程序的重复记述的程序开发中,当确定有在多个程序要素中重复存在的相同的程序逻辑时,优化处理部7自动变更为将该程序逻辑作为从这些程序要素引用的程序逻辑而进行了统一的程序。
程序重新构建部8是利用经由程序验证部6及程序优化部7的处理而得到的与上述规定功能相关的程序要素、来构建定制有该规定功能的功能定制软件库2b的结构部。若构建有功能定制软件库2b,则功能执行部3使用该功能定制软件库2b来执行上述规定功能。
图3是表示应用了本发明所涉及的软件库重新构建装置的信息处理装置的硬件结构的框图。作为该信息处理装置,例如,可举出有车载导航装置、移动电话、PDA(Personal Digital Assistant:个人数字助理)等移动信息终端。
图3中,在存储装置2中存放有符合本发明的要点的软件库重新构建用的处理程序、用于实现由该信息处理装置执行的车载导航等处理的应用软件、通用软件库2a、功能定制软件库2b、以及在上述应用软件所进行的处理中利用的数据(例如地图数据)。
另外,作为存储装置2,可举出有硬盘装置(HDD)、CD或DVD等存储介质及其驱动装置、USB(Universal Serial Bus:通用串行总线)存储器等。
上述软件库重新构建用的处理程序、上述应用软件的程序、软件库2a、2b从存储装置2向存储器10上展开,由CPU9加以执行。CPU9通过执行上述软件库重新构建用的处理程序,作为硬件和软件合作的具体单元来实现图1所示的功能执行部3、程序提取部5、程序验证部6、程序优化部7、及程序重新构建部8。
CPU9所产生的运算结果经由总线输出到显示装置11以进行画面显示。显示装置11例如执行车载导航中的地图显示等。作为该显示装置11,可举出有液晶显示器、等离子体显示器。
通信装置12是与装置外部进行通信的装置,对于通信装置为导航装置的情况,接收GPS电波、FM电波。
输入装置13是用于从装置外部进行操作输入的装置,由键盘、操作开关、与显示装置11组合的触摸屏等来实现。对于导航装置的情况,利用该输入装置13来输入路径搜索的条件。
另外,虽然在图3中示出了上述软件库重新构建用的处理程序、应用软件、软件库2a、2b、在上述应用软件所进行的处理中利用的数据全部被存放于存储装置2的情况,但这些软件各自或它们中的至少一项也可以存储于能由CPU9读取存储内容的另外的存储装置中。
接下来,对动作进行说明。
图4是表示实施方式1的软件库重新构建装置的动作流程的流程图,按照该图阐述重新构建软件库的细节。
首先,从已有的通用软件库2a中选择要执行的功能(步骤ST1)。例如,也可以在显示装置11上显示功能选择用画面,提供利用输入装置13来以对话方式选择功能的GUI(Graphical User Interface:图形用户界面)。
也可以同时进行多个功能的选择。此时,在上述功能选择画面上,选择构建按所选择的多个功能分别定制的多个功能定制软件库2b的情况、和构建定制有所有所选择的多个功能的一个功能定制软件库2b的情况。
此外,也可以不在功能选择用画面上选择功能,而使得在由功能执行部3启动某一功能的利用通用软件库2a的应用软件的时刻,选择了该功能。例如,若在执行导航软件的过程中指示进行路径搜索,则选择了路径搜索功能。
接下来,功能执行部3执行步骤ST1中选择的功能(步骤ST2)。另外,功能的执行条件预先登录于存储装置2中。功能执行部3基于从存储装置2向存储器10上展开的上述执行条件,执行该功能。例如,若是路径搜索功能,则将路径搜索中使用的数据库、路径搜索的算法设定作为执行条件。
在功能执行部3执行功能时,程序提取部5从通用数据库2a中依次提取出功能执行部3所使用的程序要素(步骤ST3)。例如,利用等级名等能识别程序要素的信息,来提取出程序要素。
图5是表示在图2的通用软件库2a的程序要素中确定功能执行部3所使用的程序要素的情况的图。图5中,像利用粗框、粗线所示的那样,程序提取部5提取出功能执行部3所使用的关联对象(程序要素),从而在通用软件库2a中,确定功能执行部3所依次使用的关联对象(程序要素)的通路。由程序提取部5按执行顺序提取出的程序要素输出到程序验证部6。
接下来,程序验证部6验证提取部位的程序要素中的程序源代码有没有错误,并且,对程序要素彼此之间进行比较,确定在程序要素间存在的相同的程序逻辑、未被使用的属性、函数(步骤ST4)。
之后,程序优化部7基于程序验证部6所产生的验证结果,对提取部位的程序要素的关联性、处理过程进行优化(步骤ST5)。例如,为了去除由提取部位的程序要素构成的程序的冗余性,删除由程序验证部6确定的不使用的属性、函数,变更为将重复的程序逻辑统一后的程序。
程序重新构建部8利用由程序优化部7优化后的程序要素,构建定制有由步骤ST1选择的功能的功能定制软件库2b(步骤ST6)。
图6是表示功能定制软件库的一个示例的图,示出利用了图5中确定作为路径搜索功能所使用的关联对象(程序要素)的功能定制软件库2b。如图6所示,通过重新构建为定制有路径搜索功能的软件库,从而数据量变小,能提高存储器效率。此外,由于限定了要使用的对象(程序要素),因此,还能提高处理速度。
在上述内容中,示出了软件库重新构建装置对从利用预先设定的执行条件来执行所选择的功能、到构建定制有该功能的软件库为止进行批处理的情况。以下,对软件库重新构建装置以向导形式来以对话方式执行处理的情况进行说明。
图7是表示软件开发环境下的软件库重新构建处理的流程的流程图,示出以向导形式执行处理的情况。软件开发环境具有添加任意功能作为插件的功能,该向导还可像这样用作为对已有软件开发环境的附加功能。
首先,功能执行部3例如在显示装置11上显示图8所示那样的功能选择用的向导画面,以询问开发者(利用者),使其利用输入装置13以对话方式选择功能。功能选择用的向导画面像图8那样显示成为选择候补的功能的一览图,从而能同时选择多个功能。
此外,在功能选择用的向导画面上,设置有选择如下两种情况的某一种情况的设定栏:一种情况是构建按所选择的多个功能分别定制的多个功能定制软件库2b(分别输出);另一种情况是构建定制有所有所选择的多个功能的一个功能定制软件库2b(统一输出)。
若基于功能选择用的向导画面选择功能(步骤ST1a),则程序提取部5例如在显示装置11上显示图9所示那样的、用于设定所选择的功能的执行条件的执行条件设定用的向导画面,以询问开发者。在执行条件设定用的向导画面上,像图9那样,设置有所选择的功能的一览图和各功能的条件的设定按钮,以确定所选择的功能,并分别设定执行条件。
若利用输入装置13按下执行条件设定用的向导画面上的设定按钮,则功能执行部3例如在显示装置11上显示图10所示那样的、用于设定执行条件的详细内容的条件设定用的向导画面,以询问开发者,使其利用输入装置13以对话方式设定执行条件内容。图10的示例表示按下图9所示的功能A的设定按钮的情况,作为执行条件,可设定数据库和算法。开发者基于该条件设定用的向导画面,利用输入装置13来设定执行条件。若对于所选择的功能来设定执行条件,则功能执行部3在该执行条件下执行该功能。至此的处理相当于步骤ST2a及步骤ST2a-1。
程序提取部5在功能执行部3执行功能的期间,从通用数据库2a中自动地依次提取出功能执行部3所使用的程序要素。
此外,功能执行部3例如在显示装置11上显示图11所示那样的、表示功能是否成功执行的执行结果确认用的向导画面(步骤ST3a)。在该执行结果确认用的向导画面上,像图11那样,设置有用于表示各功能的每一功能是否成功执行及其原因详情的详情按钮。
图11中,若按下执行失败的功能C的详情按钮,则功能执行部3例如在显示装置11上显示图12所示那样的、失败原因提示用的向导画面。若在该向导画面上按下日志显示按钮,则功能执行部3在显示装置11上显示该功能的执行日志。
此外,若按下设定按钮,则功能执行部3在显示装置11上显示图10所示那样的、用于设定执行条件的详细内容的条件设定用的向导画面,以使开发者重新设定执行条件(步骤ST3a-1)。
之后,若按下重新执行按钮,则功能执行部3在重新设定的执行条件下执行失败过的功能,返回步骤ST3a的处理。
若在图11中按下执行成功的功能A的详情按钮,则功能执行部3在显示装置11上显示由程序提取部5提取出的功能A的程序要素(步骤ST3a-2)。例如,程序要素也可以像图13所示的那样显示成可了解功能执行部3执行的顺序。
此外,如图14所示,也可以利用作为程序记述语言的UML(UnfiledModeling Language:统一建模语言)来呈现按执行顺序表示的程序要素(例如等级图)。
此外,如图15所示,也可以设置按执行顺序显示程序要素的执行顺序显示区域、和显示程序要素的源代码的源代码显示区域。若利用输入装置13在执行顺序显示区域选择程序要素,则功能执行部3在源代码显示区域显示与所选择的程序要素相对应的源代码。
功能执行部3在所选择的功能全部执行成功之前,像图11用斜线所示的那样,使执行结果确认用的向导画面的“继续”按钮处于无法选择的状态。若按下“继续”按钮,则程序验证部6启动,对由程序提取部5提取出的程序要素的源代码执行错误检验,通过对程序要素彼此之间进行比较,确定在程序要素间存在的相同的程序逻辑、未被使用的属性、函数(步骤ST3a-3)。
程序验证部6在验证程序要素的源代码而发现无错误的情况下,例如在显示装置11上显示图16所示那样的源代码错误确认用的向导画面。在无错误时的源代码错误确认用的向导画面上,像图16那样设置用于修正源代码的修正按钮。
若利用输入装置13按下修正按钮,则程序优化部7启动,在显示装置11上显示源代码的修正画面,以询问开发者,使其利用输入装置13以对话方式输入用于将功能的源代码进行修正的信息。
此时,程序优化部7在上述修正画面上显示由程序验证部6确定的重复的程序逻辑、未被使用的属性、函数,并根据开发者所输入的修正内容,对源代码进行修正(步骤ST4a-1)。若完成源代码的修正,则程序验证部6再次进行错误检验。
另一方面,在验证程序要素的源代码而发现有错误的情况下,程序验证部6例如在显示装置11上显示图17所示那样的源代码错误确认用的向导画面,以询问开发者,使其利用输入装置13以对话方式将功能的源代码的修正内容输入(步骤ST4a-2)。利用输入装置13来按下修正按钮时的处理与上述图16的处理相同。重复程序验证部6及程序优化部7所进行的上述处理,直到程序要素的源代码中不再有错误为止。
若程序要素的源代码中不再有错误,通过修正而将程序优化,则程序重新构建部8启动,在显示装置11上显示询问是否重新构建软件库的向导画面,以询问开发者,使其利用输入装置13以对话方式选择可否重新构建功能(步骤ST5a)。此处,若选择不重新构建,则结束处理。
若选择重新构建,则程序重新构建部8在显示装置11上显示用于识别重新构建后的软件库的库名设定用的向导画面(步骤ST6a)。图8中,在选择构建按所选择的多个功能分别定制的多个功能定制软件库2b(分别输出)的情况下,设定分别对应的库名。
若设定库名,则程序重新构建部8利用由程序优化部7优化后的程序要素,构建定制有所选择的功能的功能定制软件库2b。之后,程序重新构建部8在显示装置11上显示使开发者确认已重新构建的情况的确认用的向导画面(步骤ST7a),与库名相对应地将功能定制软件库2b存放于存储装置2,结束处理。
如上所述,根据该实施方式1,功能执行部3利用与多个功能对应的通用软件库2a,执行多个功能中所指示的功能,程序提取部5从构成通用软件库2a的程序要素中,提取执行上述功能时使用的程序要素,程序验证部6对由程序提取部5提取出的程序要素的错误进行验证,程序优化部7对由程序验证部6验证为无错误的程序要素所构成的程序进行优化,程序重新构建部8利用由程序优化部7进行了优化的程序的程序要素,构建定制有由功能执行部3执行的功能的软件库2b。通过采用这种结构,可从通用软件库2a自动提取出程序要素,重新构建定制有所希望的功能的软件库2b。由此,能提供可力图提高执行速度、存储器利用效率的软件库。
此外,根据该实施方式1,功能执行部3、程序验证部6、程序优化部7、及程序重新构建部8以向导形式向利用者(开发者)以对话方式询问自身的处理所需的信息,根据从利用者输入的自身的处理所需的信息,执行自身的处理。通过这样,特别是在软件的开发环境下,能根据来自装置侧的指引,进行软件库的重新构建处理,可提高处理的便利性。
此外,根据该实施方式1,功能执行部3、程序验证部6、程序优化部7、及程序重新构建部8根据预先设定的自身的处理所需的信息,自动执行自身的处理。通过这样,在对话方式的信息的交换有可能使处理变繁杂的实际的装载环境中,可提高软件库重新构建装置的便利性。
另外,在上述实施方式1中,虽然示出了利用从通用软件库2a提取出的程序要素、来重新构建功能定制软件库2b的示例,但也可以利用从功能定制软件库2b提取出的程序要素,在利用者所指示的执行条件下执行该功能,从而重新构建在利用者所指示的执行条件下对该功能进一步进行了限定的功能定制软件库2b。
通过这样,可力图进一步提高执行速度、存储器利用效率。
实施方式2
图18是表示本发明的实施方式2所涉及的导航装置的结构的框图,示出将本发明的软件库重新构建装置应用于车载导航装置的结构。图18所示的导航功能执行部3a是相当于图1的功能执行部3的结构部,执行车载导航功能。另外,图18中,作为车载导航功能,举出路径搜索的示例,对路径搜索执行部3b以外的结构部省略了记载。
地图数据库(地图DB)14是存放地图数据的存储部,例如构建于图2中的存储装置。位置检测部15是对装载有导航装置的车辆的位置进行检测的结构部,例如,利用GPS信号、车速传感器、陀螺传感器等传感器群的测定值和地图匹配等来求出本车的当前位置。图18中,对与图1及图2相同的结构部标注相同的标号,并省略其说明。
接下来,对动作进行说明。
此处,对执行车载导航功能中的路径搜索、重新构建定制有路径搜索功能的功能定制软件库2b的情况进行阐述。
首先,启动由导航功能执行部3a执行的车载导航软件,利用输入装置13输入目的地,指示进行路径搜索。
由此,路径搜索执行部3b利用从通用软件库2a获取的路径搜索功能所需的程序要素、从地图DB14获取的路径搜索所需的地图数据、以及从位置检测部15获取的本车辆的位置信息,执行到达目的地的路径搜索。
若路径搜索执行部3b执行路径搜索,程序提取部5从通用软件库2a依次提取出路径搜索执行部3b所使用的程序要素,作为路径搜索功能所选择的程序要素。将由程序提取部5按执行顺序提取出的程序要素输出到程序验证部6。
程序验证部6验证提取部位的程序要素中的程序源代码有没有错误,并且,对程序要素彼此之间进行比较,确定在程序要素间存在的相同的程序逻辑、未被使用的属性、函数。
之后,程序优化部7基于程序验证部6所产生的验证结果,对提取部位的程序要素的关联性、处理过程进行优化。
最后,程序重新构建部8利用由程序优化部7优化后的程序要素,构建定制有路径搜索功能的功能定制软件库2b。
若重新构建定制有路径搜索功能的库,则程序重新构建部8将功能定制软件库2b与库名相对应地存放在存储装置2中,并结束处理。由此,在从下次起的路径搜索中,可利用定制有路径搜索功能的功能定制软件库2b。
此外,通过利用从功能定制软件库2b提取出的程序要素,在新设定的执行条件下执行路径搜索功能,并利用在执行该路径搜索功能时使用的程序要素,重复构建在上述新设定的执行条件下进一步限定路径搜索功能的软件库2b,从而可力图提高路径搜索功能的执行速度、软件库2b的存储器利用效率。
如上所述,根据该实施方式2,在具有搜索从出发地点到目的地点的路径并进行指引引导的导航功能的导航装置中,包括:导航功能执行部3a,该导航功能执行部3a利用与涉及导航功能的多个功能对应的通用软件库2a,执行多个功能中所指示的功能;程序提取部5,该程序提取部5从构成通用软件库的程序要素中,提取由导航功能执行部3a执行功能时使用的程序要素;程序验证部6,该程序验证部6对由程序提取部5提取出的程序要素的错误进行验证;程序优化部7,该程序优化部7对由程序验证部6验证为无错误的程序要素所构成的程序进行优化;以及程序重新构建部8,该程序重新构建部8利用由程序优化部7进行了优化的上述程序的程序要素,构建定制有由导航功能执行部3a执行的功能的软件库2b。通过采用这种结构,可从通用软件库2a自动提取出程序要素,重新构建定制有利用者指示的所希望的车载导航功能的软件库2b。由此,可力图提高车载导航处理的执行速度、存储器利用效率。
另外,在上述实施方式2中,虽然举出了车载用的导航装置的示例,但即使将本发明的软件库重新构建装置应用到装载于移动信息终端的导航功能,也可获得同样的效果。在此情况下,在服务器装置执行导航处理并将处理结果下载到移动信息终端的结构中,对该服务器装置应用本发明,在移动信息终端本体执行导航处理的情况下,对该移动信息终端应用本发明。
实施方式3
图19是表示本发明的实施方式3所涉及的导航装置的结构的框图,示出将本发明的软件库重新构建装置应用于车载导航装置的结构。另外,图19中,对与图18相同的结构部标注相同标号,并省略其说明。
路径搜索特性判断部(利用特性判断部)16是对利用者所指定的路径搜索执行部3b的执行条件(搜索模式)进行统计处理、判断与利用者的路径搜索功能的利用特性相对应的执行条件的结构部。
作为路径搜索功能的执行条件,可举出搜索模式。该搜索模式中,例如有以到目的地的距离为优先而进行路径搜索的距离优先模式、以到目的地的预想经过时间为优先而进行路径搜索的时间优先模式等。若指定距离优先模式,则路径搜索执行部3b优先搜索到目的地的距离较短的路径,若指定时间优先模式,则路径搜索执行部3b优先搜索到目的地的预想经过时间较短的路径。
此外,路径搜索利用统计数据库(路径搜索利用统计DB)17是存放表示执行条件的信息的存储部,例如,构建于图2中的存储装置,其中,该执行条件与由路径搜索特性判断部16按每一利用者求出的路径搜索功能的利用特性相对应。
接下来,对动作进行说明。
此处,对执行车载导航功能中的路径搜索、重新构建定制有路径搜索功能的功能定制软件库2b的情况进行阐述。
首先,启动由导航功能执行部3a执行的车载导航软件,利用输入装置13输入目的地及搜索模式,指示进行路径搜索。
由此,路径搜索执行部3b利用从通用软件库2a获取的路径搜索功能所需的程序要素、从地图DB14获取的路径搜索所需的地图数据、以及从位置检测部15获取的本车辆的位置信息,按照搜索模式执行到目的地的路径搜索。
若路径搜索执行部3b执行路径搜索,则程序提取部5从通用软件库2a依次提取出路径搜索执行部3b所使用的程序要素,作为路径搜索功能所选择的程序要素。将由程序提取部5按执行顺序提取出的程序要素输出到程序验证部6。
程序验证部6验证提取部位的程序要素中的程序源代码有没有错误,并且,对程序要素彼此之间进行比较,确定在程序要素间存在的相同的程序逻辑、未被使用的属性、函数。
路径搜索特性判断部16从路径搜索执行部3b获取表示利用者所指定的搜索模式的信息,将其存放在路径搜索利用统计DB17中,并且,从路径搜索利用统计DB17读出由该利用者过去指定的搜索模式,对这些进行统计性的分析,基于分析结果,判断该利用者的路径搜索功能的利用特性。将表示该利用特性的信息从路径搜索特性判断部16输出到程序优化部7。例如,利用数量化理论分析等统计分析方法来进行,该数量化理论分析基于下述路径搜索条件,利用所收集、累积的路径搜索利用统计DB17,根据这些定性、定量数据对利用者的搜索模式进行统计性的评价。
对于路径搜索,可设定例如距离优先、收费道路通行优先、一般道路通行优先等搜索条件。在路径搜索特性判断部16中,将利用者从这样的路径搜索条件中选择了哪个搜索条件、以及作为进行该选择时的状况的时间段、根据VICS(注册商标)信息等获得的交通信息、当前位置的地区特性(城市、乡村、观光地等)的信息保管于上述路径搜索利用统计DB17中。
每次该利用者执行路径搜索时,该路径搜索利用统计DB17所存放的信息都增加,基于该信息,通过用于判断上述利用者特性的统计分析方法等进行分析处理,根据分析处理得到的路径搜索功能的利用特性,确定频繁利用的路径搜索功能,在程序优化部7中,提取出用于实现所确定的该功能的程序要素。
与上述程序提取部5同样,路径搜索特性判断部16从构成路径搜索功能的程序要素中,提取实现考虑了由上述统计方法导出的利用者特性的路径搜索条件的程序要素,利用上述程序验证部6的功能,对上述提取出的程序要素进行验证,并将其输出到程序优化部7。
程序优化部7基于程序验证部6所产生的验证结果、以及与由路径搜索特性判断部16判断出的路径搜索的利用特性相对应的搜索模式,对提取部位的程序要素的关联性、处理过程进行优化。
程序重新构建部8利用由程序优化部7优化后的程序要素,构建根据利用者的利用特性对路径搜索功能进行了限定的功能定制软件库2b。
若重新构建定制有路径搜索功能的库,则程序重新构建部8将功能定制软件库2b与库名相对应地存放在存储装置2中,并结束处理。由此,在从下次起的路径搜索中,可利用定制有路径搜索功能的功能定制软件库2b。
此外,利用从功能定制软件库2b提取出的程序要素,重复进行利用与路径搜索的利用特性相对应的搜索模式对功能进一步进行了限定的软件库2b的重新构建,从而可获得提供与利用者的利用特性相符的功能的软件库。
另外,也可以使得软件库重新构建功能部4的重新构建处理在导航功能执行部3a的导航处理的空闲时间执行。由此,可执行重新构建处理,而不会给导航处理带来处理负荷。
如上所述,根据该实施方式3,包括路径搜索特性判断部16,该路径搜索特性判断部16在每次导航功能执行部3a执行导航功能时,获取利用者所指示的执行条件(例如,路径搜索的搜索模式),对所获取的执行条件进行统计处理,求出与该利用者的利用特性相对应的该功能的执行条件,程序优化部7利用由路径搜索特性判断部16求出的执行条件,对由程序验证部6验证为无错误的程序要素所构成的程序进行优化,程序重新构建部8利用由程序优化部7进行了优化的程序的程序要素,构建在由路径搜索特性判断部16求出的执行条件下对功能进行了限定的软件库。通过采用这种结构,可获得与上述实施方式2相同的效果。此外,由于考虑到利用者的利用特性,来重新构建软件库,因此,可提高利用者的便利性。
另外,在上述实施方式3中,虽然示出了基于与路径搜索的利用特性相对应的搜索模式、重新构建软件库的情况,但本发明并不限于此,除搜索模式以外,也可以利用与利用者所设定的路径搜索相关的其他执行条件来作为路径搜索功能的执行条件。此外,也可以应用于作为路径搜索以外的导航功能的指引引导、各种信息显示等。
即,通过包括利用特性判断部,该利用特性判断部在每次功能执行部3执行功能时,获取利用者所指示的该功能的执行条件,对所获取的执行条件进行统计处理,求出与该利用者的利用特性相对应的该功能的执行条件,从而,即使对于导航装置以外的、应用了本发明的信息处理装置所执行的功能,也可重新构建在与利用者的利用特性相对应的执行条件下对该功能进行了限定的软件库。
此外,上述实施方式3中,在导航功能的软件库重新构建处理中,几乎不会出现利用者对源代码都进行优化的状况。
因而,也可以预先准备按与多种路径搜索条件相对应的功能分别定制的软件库,根据利用者的路径搜索利用特性,切换到相对应的软件库。
工业上的实用性
本发明所涉及的软件库重新构建装置由于自动提取出通用软件库的程序要素,重新构建定制有所希望的功能的软件库,因此,适用于通过由地图数据供应商提供的通用软件库、来利用该地图数据供应商所管理的地图数据的导航装置。
Claims (7)
1.一种软件库重新构建装置,其特征在于,包括:
功能执行部,该功能执行部利用与多个功能对应的通用软件库,执行所述多个功能中所指示的功能;
程序提取部,该程序提取部从构成所述通用软件库的程序要素中,提取由所述功能执行部执行所述功能时使用的程序要素;
程序验证部,该程序验证部对由所述程序提取部提取出的程序要素的错误进行验证;
程序优化部,该程序优化部对由所述程序验证部验证为无错误的程序要素所构成的程序进行优化;以及
程序重新构建部,该程序重新构建部利用由所述程序优化部进行了优化的所述程序的程序要素,构建定制有由所述功能执行部执行的所述功能的软件库。
2.如权利要求1所述的软件库重新构建装置,其特征在于,
所述功能执行部利用定制有所述功能的软件库,在所指示的执行条件下执行所述功能,
所述程序提取部从构成定制有所述功能的软件库的程序要素中,提取由所述功能执行部执行所述功能时使用的程序要素,
所述程序验证部对由所述程序提取部提取出的程序要素的错误进行验证,
所述程序优化部对由所述程序验证部验证为无错误的程序要素所构成的程序进行优化,
所述程序重新构建部利用由所述程序优化部进行了优化的所述程序的程序要素,构建在所述执行条件下对所述功能进行了限定的软件库。
3.如权利要求1所述的软件库重新构建装置,其特征在于,
包括利用特性判断部,该利用特性判断部在每次所述功能执行部执行所述功能时,获取利用者所指示的该功能的执行条件,对所获取的所述执行条件进行统计处理,求出与该利用者的利用特性相对应的该功能的执行条件,
所述程序优化部利用由所述利用特性判断部求出的所述执行条件,对由所述程序验证部验证为无错误的程序要素所构成的程序进行优化,
所述程序重新构建部利用由所述程序优化部进行了优化的所述程序的程序要素,构建在由所述利用特性判断部求出的所述执行条件下对所述功能进行了限定的软件库。
4.如权利要求1所述的软件库重新构建装置,其特征在于,
所述功能执行部、所述程序验证部、所述程序优化部、及所述程序重新构建部以向导形式向利用者以对话方式询问自身的处理所需的信息,利用由所述利用者输入的所述自身的处理所需的信息,执行所述自身的处理。
5.如权利要求1所述的软件库重新构建装置,其特征在于,
所述功能执行部、所述程序验证部、所述程序优化部、及所述程序重新构建部利用预先设定的、自身的处理所需的信息,自动执行所述自身的处理。
6.一种软件库重新构建方法,在包括功能执行部、程序提取部、程序验证部、程序优化部、及程序重新构建部的软件库重新构建装置的软件库重新构建方法中,其特征在于,包括:
所述功能执行部利用与多个功能对应的通用软件库、执行所述多个功能中所指示的功能的步骤;
所述程序提取部从构成所述通用软件库的程序要素中、提取由所述功能执行部执行所述功能时使用的程序要素的步骤;
所述程序验证部对由所述程序提取部提取出的程序要素的错误进行验证的步骤;
所述程序优化部对由所述程序验证部验证为无错误的程序要素所构成的程序进行优化的步骤;以及
所述程序重新构建部利用由所述程序优化部进行了优化的所述程序的程序要素、构建定制有由所述功能执行部执行的所述功能的软件库的步骤。
7.一种导航装置,该导航装置具有搜索从出发地点到目的地点的路径并进行指引引导的导航功能,其特征在于,包括:
功能执行部,该功能执行部利用与涉及所述导航功能的多个功能对应的通用软件库,执行所述多个功能中所指示的功能;
程序提取部,该程序提取部从构成所述通用软件库的程序要素中,提取由所述功能执行部执行所述功能时使用的程序要素;
程序验证部,该程序验证部对由所述程序提取部提取出的程序要素的错误进行验证;
程序优化部,该程序优化部对由所述程序验证部验证为无错误的程序要素所构成的程序进行优化;以及
程序重新构建部,该程序重新构建部利用由所述程序优化部进行了优化的所述程序的程序要素,构建定制有由所述功能执行部执行的所述功能的软件库。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2009/005950 WO2011055417A1 (ja) | 2009-11-09 | 2009-11-09 | ソフトウェアライブラリ再構築装置及び方法並びにこれを用いたナビゲーション装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102597952A true CN102597952A (zh) | 2012-07-18 |
CN102597952B CN102597952B (zh) | 2015-08-05 |
Family
ID=43969662
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200980162299.8A Expired - Fee Related CN102597952B (zh) | 2009-11-09 | 2009-11-09 | 软件库重新构建装置和方法、以及利用该装置和方法的导航装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20120151440A1 (zh) |
JP (1) | JP4964352B2 (zh) |
CN (1) | CN102597952B (zh) |
DE (1) | DE112009005351T8 (zh) |
WO (1) | WO2011055417A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011136128A1 (ja) * | 2010-04-28 | 2011-11-03 | 株式会社Jvcケンウッド | アイテム選択装置、アイテム選択方法、およびアイテム選択用プログラム |
US20130254121A1 (en) * | 2012-03-22 | 2013-09-26 | International Business Machines Corporation | Software Portfolio Management Based on Feature Usage |
US8990183B2 (en) * | 2012-06-06 | 2015-03-24 | Microsoft Technology Licensing, Llc | Deep application crawling |
MX2017013621A (es) * | 2016-02-09 | 2018-03-08 | Siemens Ag | Metodo y entorno de ejecucion para ejecutar instrucciones de programa de forma segura. |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6546551B1 (en) * | 1999-09-28 | 2003-04-08 | International Business Machines Corporation | Method for accurately extracting library-based object-oriented applications |
CN101008949A (zh) * | 2006-01-25 | 2007-08-01 | 英业达股份有限公司 | 信息提取方法及系统 |
US20090228862A1 (en) * | 2008-03-04 | 2009-09-10 | Anders Bertelrud | Modularized integrated software development environments |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5680619A (en) | 1995-04-03 | 1997-10-21 | Mfactory, Inc. | Hierarchical encapsulation of instantiated objects in a multimedia authoring system |
JPH0944358A (ja) * | 1995-08-02 | 1997-02-14 | Toshiba Corp | プログラム生成方法及びプログラム生成装置並びにオブジェクト生成方法及びオブジェクト生成装置 |
US6526565B1 (en) * | 1995-12-21 | 2003-02-25 | International Business Machines Corporation | Packaging algorithm for providing object oriented applications having reduced footprints |
US5995113A (en) * | 1996-08-02 | 1999-11-30 | Hewlett-Packard Company | Coloring events in event streams in order to provide information about operation of a software library |
JP2000276344A (ja) * | 1999-03-23 | 2000-10-06 | Nec Corp | オブジェクトを利用したプログラム作成システムおよびそのプログラム作成方法 |
JP4363044B2 (ja) | 2003-01-22 | 2009-11-11 | セイコーエプソン株式会社 | バンドル再構成システム及びバンドル再構成プログラム、並びにバンドル再構成方法 |
JP2004310279A (ja) * | 2003-04-03 | 2004-11-04 | Sumisho Computer Systems Corp | 業務処理システムおよびその構築支援装置、業務処理システム用プログラム、業務処理システムの構築支援用プログラム |
JP2006285584A (ja) * | 2005-03-31 | 2006-10-19 | Canon Inc | プログラムコード生成装置、プログラムコード生成方法、及びコンピュータプログラム |
JP2009093239A (ja) * | 2007-10-04 | 2009-04-30 | Hitachi Ltd | 不要プログラム部品検出システム |
-
2009
- 2009-11-09 DE DE112009005351T patent/DE112009005351T8/de not_active Ceased
- 2009-11-09 US US13/392,142 patent/US20120151440A1/en not_active Abandoned
- 2009-11-09 JP JP2011539188A patent/JP4964352B2/ja active Active
- 2009-11-09 WO PCT/JP2009/005950 patent/WO2011055417A1/ja active Application Filing
- 2009-11-09 CN CN200980162299.8A patent/CN102597952B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6546551B1 (en) * | 1999-09-28 | 2003-04-08 | International Business Machines Corporation | Method for accurately extracting library-based object-oriented applications |
CN101008949A (zh) * | 2006-01-25 | 2007-08-01 | 英业达股份有限公司 | 信息提取方法及系统 |
US20090228862A1 (en) * | 2008-03-04 | 2009-09-10 | Anders Bertelrud | Modularized integrated software development environments |
Non-Patent Citations (1)
Title |
---|
CHRISTIAN HAMMER等: "Dynamic path conditions in dependence graphs", 《PROCEEDINGS OF THE 2006 ACM SIGPLAN SYMPOSIUM ON PARTIAL EVALUATION AND SEMANTICS-BASED PROGRAM MANIPULATION》 * |
Also Published As
Publication number | Publication date |
---|---|
DE112009005351T8 (de) | 2013-03-28 |
US20120151440A1 (en) | 2012-06-14 |
WO2011055417A1 (ja) | 2011-05-12 |
JPWO2011055417A1 (ja) | 2013-03-21 |
DE112009005351T5 (de) | 2012-12-13 |
CN102597952B (zh) | 2015-08-05 |
JP4964352B2 (ja) | 2012-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI425191B (zh) | 產生用於導航裝置之改良地圖資料的方法 | |
US7542846B2 (en) | Navigation system utilizing XML/SVG map data converted from geographic map data and layered structure of XML/SVG map data based on administrative regions | |
CN111881019B (zh) | 一种用户界面测试方法及装置 | |
CN110249300B (zh) | 内置于数据集成工作流编辑器中的测试用例生成器 | |
US9454384B2 (en) | Custom operating system via a web-service | |
CN109445783B (zh) | 由服务驱动的动态配置应用的构建方法及装置 | |
CN104321745A (zh) | 用于软件应用程序的跨平台开发的环境及方法 | |
CN101165694A (zh) | 专用集成电路中i/o块的优化布置和验证的方法和装置 | |
US20160048383A1 (en) | Isv update delivery | |
US20140033123A1 (en) | User interface and method for comparing a local version of a profile to an online update | |
EP2909764B1 (en) | Portal for submitting business metadata for services | |
US11709693B1 (en) | Systems and methods for developing digital experience applications | |
CN102597952A (zh) | 软件库重新构建装置和方法、以及利用该装置和方法的导航装置 | |
CN113238795A (zh) | 组件发布方法、装置、电子设备、存储介质及程序产品 | |
CN103348343A (zh) | 为具有嵌入式处理器的产品生成网站的系统 | |
CN1670715B (zh) | 在公共语言运行时语言中的资源地址支持 | |
JP6590905B2 (ja) | コンテンツ開発装置 | |
US20120265516A1 (en) | Peripheral device simulation | |
JP6717140B2 (ja) | 解析プログラム、解析方法、及び解析装置 | |
CN115269285A (zh) | 测试方法及装置、设备、计算机可读存储介质 | |
CN108334313A (zh) | 用于大型soc研发的持续集成方法、装置及代码管理系统 | |
CN106663004A (zh) | 订阅者定义的动态事件 | |
Teslyuk et al. | The recommendation system for cyclists LvivBicycleMap | |
Nugroho et al. | Nearest Automatic Teller Machine (ATM), Minimarket, and Restaurants Finder Application based on GPS Technology (Global Positioning System) | |
CN110968334A (zh) | 应用资源更新方法、资源包制作方法、装置、介质及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150805 Termination date: 20201109 |
|
CF01 | Termination of patent right due to non-payment of annual fee |